diff options
Diffstat (limited to 'net/9p/trans_virtio.c')
-rw-r--r-- | net/9p/trans_virtio.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/9p/trans_virtio.c b/net/9p/trans_virtio.c index 330421e54713..3d432068f627 100644 --- a/net/9p/trans_virtio.c +++ b/net/9p/trans_virtio.c | |||
@@ -272,7 +272,8 @@ req_retry: | |||
272 | in = pack_sg_list(chan->sg, out, | 272 | in = pack_sg_list(chan->sg, out, |
273 | VIRTQUEUE_NUM, req->rc->sdata, req->rc->capacity); | 273 | VIRTQUEUE_NUM, req->rc->sdata, req->rc->capacity); |
274 | 274 | ||
275 | err = virtqueue_add_buf(chan->vq, chan->sg, out, in, req->tc); | 275 | err = virtqueue_add_buf(chan->vq, chan->sg, out, in, req->tc, |
276 | GFP_ATOMIC); | ||
276 | if (err < 0) { | 277 | if (err < 0) { |
277 | if (err == -ENOSPC) { | 278 | if (err == -ENOSPC) { |
278 | chan->ring_bufs_avail = 0; | 279 | chan->ring_bufs_avail = 0; |
@@ -414,7 +415,8 @@ req_retry_pinned: | |||
414 | in += pack_sg_list_p(chan->sg, out + in, VIRTQUEUE_NUM, | 415 | in += pack_sg_list_p(chan->sg, out + in, VIRTQUEUE_NUM, |
415 | in_pages, in_nr_pages, uidata, inlen); | 416 | in_pages, in_nr_pages, uidata, inlen); |
416 | 417 | ||
417 | err = virtqueue_add_buf(chan->vq, chan->sg, out, in, req->tc); | 418 | err = virtqueue_add_buf(chan->vq, chan->sg, out, in, req->tc, |
419 | GFP_ATOMIC); | ||
418 | if (err < 0) { | 420 | if (err < 0) { |
419 | if (err == -ENOSPC) { | 421 | if (err == -ENOSPC) { |
420 | chan->ring_bufs_avail = 0; | 422 | chan->ring_bufs_avail = 0; |