diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/net/virtio_net.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index 1edb7a61983c..ee7571195b10 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c | |||
| @@ -415,7 +415,7 @@ static int add_recvbuf_mergeable(struct virtnet_info *vi, gfp_t gfp) | |||
| 415 | static bool try_fill_recv(struct virtnet_info *vi, gfp_t gfp) | 415 | static bool try_fill_recv(struct virtnet_info *vi, gfp_t gfp) |
| 416 | { | 416 | { |
| 417 | int err; | 417 | int err; |
| 418 | bool oom = false; | 418 | bool oom; |
| 419 | 419 | ||
| 420 | do { | 420 | do { |
| 421 | if (vi->mergeable_rx_bufs) | 421 | if (vi->mergeable_rx_bufs) |
| @@ -425,10 +425,9 @@ static bool try_fill_recv(struct virtnet_info *vi, gfp_t gfp) | |||
| 425 | else | 425 | else |
| 426 | err = add_recvbuf_small(vi, gfp); | 426 | err = add_recvbuf_small(vi, gfp); |
| 427 | 427 | ||
| 428 | if (err < 0) { | 428 | oom = err == -ENOMEM; |
| 429 | oom = true; | 429 | if (err < 0) |
| 430 | break; | 430 | break; |
| 431 | } | ||
| 432 | ++vi->num; | 431 | ++vi->num; |
| 433 | } while (err > 0); | 432 | } while (err > 0); |
| 434 | if (unlikely(vi->num > vi->max)) | 433 | if (unlikely(vi->num > vi->max)) |
