diff options
author | Balbir Singh <[email protected]> | 2010-04-22 12:22:34 +0930 |
---|---|---|
committer | Linus Torvalds <[email protected]> | 2010-04-22 07:34:05 -0700 |
commit | 61fb06cc8e68906fb29d67bd5b6c2d50a95fc9e5 (patch) | |
tree | 0019a4794e8060f9c71a4cf6d6a712e204f3e5a7 | |
parent | b7b6cf005b59ff5a4dba10338954c3dcfc75ef7b (diff) |
virtio: Fix GFP flags passed from the virtio balloon driver
The virtio balloon driver can dig into the reservation pools of the OS
to satisfy a balloon request. This is not advisable and other balloon
drivers (drivers/xen/balloon.c) avoid this as well.
The patch also adds changes to avoid printing a warning if allocation
fails, since we retry after sometime anyway.
Signed-off-by: Balbir Singh <[email protected]>
Signed-off-by: Rusty Russell <[email protected]>
Cc: kvm <[email protected]>
Cc: [email protected]
Signed-off-by: Linus Torvalds <[email protected]>
-rw-r--r-- | drivers/virtio/virtio_balloon.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/virtio/virtio_balloon.c b/drivers/virtio/virtio_balloon.c index 3aed38886f94..bfec7c29486d 100644 --- a/drivers/virtio/virtio_balloon.c +++ b/drivers/virtio/virtio_balloon.c @@ -103,7 +103,8 @@ static void fill_balloon(struct virtio_balloon *vb, size_t num) num = min(num, ARRAY_SIZE(vb->pfns)); for (vb->num_pfns = 0; vb->num_pfns < num; vb->num_pfns++) { - struct page *page = alloc_page(GFP_HIGHUSER | __GFP_NORETRY); + struct page *page = alloc_page(GFP_HIGHUSER | __GFP_NORETRY | + __GFP_NOMEMALLOC | __GFP_NOWARN); if (!page) { if (printk_ratelimit()) dev_printk(KERN_INFO, &vb->vdev->dev, |