aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulian Wiedmann <jwi@linux.ibm.com>2020-02-05 09:41:42 +0100
committerVasily Gorbik <gor@linux.ibm.com>2020-02-11 20:14:12 +0100
commit11f0446534679e0a77441a19a65ed8b4a3d475f0 (patch)
tree4db3219db6cc5fdfd44bdcd1bcb0d0279dc0876a
parents390/qdio: simplify ACK tracking (diff)
downloadlinux-dev-11f0446534679e0a77441a19a65ed8b4a3d475f0.tar.xz
linux-dev-11f0446534679e0a77441a19a65ed8b4a3d475f0.zip
s390/qdio: don't allocate *aob array with GFP_ATOMIC
The only way to reach this allocation is via qdio_establish() qdio_detect_hsicq() qdio_enable_async_operation() and since qdio_establish() uses wait_event_*() just a few lines ealier, we can trust that it certainly is never called from atomic context. Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com> Reviewed-by: Steffen Maier <maier@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
-rw-r--r--drivers/s390/cio/qdio_setup.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/s390/cio/qdio_setup.c b/drivers/s390/cio/qdio_setup.c
index dc430bd86ade..3ab8e80d7bbc 100644
--- a/drivers/s390/cio/qdio_setup.c
+++ b/drivers/s390/cio/qdio_setup.c
@@ -536,7 +536,7 @@ void qdio_print_subchannel_info(struct qdio_irq *irq_ptr,
int qdio_enable_async_operation(struct qdio_output_q *outq)
{
outq->aobs = kcalloc(QDIO_MAX_BUFFERS_PER_Q, sizeof(struct qaob *),
- GFP_ATOMIC);
+ GFP_KERNEL);
if (!outq->aobs) {
outq->use_cq = 0;
return -ENOMEM;