summaryrefslogtreecommitdiffstats
path: root/drivers/vhost
diff options
context:
space:
mode:
authorIgor Mammedov <imammedo@redhat.com>2015-07-15 16:48:50 +0200
committerMichael S. Tsirkin <mst@redhat.com>2015-07-27 18:05:05 +0300
commit1e0994730f772580ff98754eb5595190cdf371ef (patch)
tree1db1d0a687ebb0f980d9083ba65d9e447faafab0 /drivers/vhost
parent7932c0bd7740f4cd2aa168d3ce0199e7af7d72d5 (diff)
downloadlinux-stable-1e0994730f772580ff98754eb5595190cdf371ef.tar.gz
linux-stable-1e0994730f772580ff98754eb5595190cdf371ef.tar.bz2
linux-stable-1e0994730f772580ff98754eb5595190cdf371ef.zip
vhost: fix error handling for memory region alloc
callers of vhost_kvzalloc() expect the same behaviour on allocation error as from kmalloc/vmalloc i.e. NULL return value. So just return vzmalloc() returned value instead of returning ERR_PTR(-ENOMEM) Fixes: 4de7255f7d2be5 ("vhost: extend memory regions allocation to vmalloc") Spotted-by: Dan Carpenter <dan.carpenter@oracle.com> Suggested-by: Julia Lawall <julia.lawall@lip6.fr> Signed-off-by: Igor Mammedov <imammedo@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'drivers/vhost')
-rw-r--r--drivers/vhost/vhost.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c
index 95bdb90fd7f0..eec2f11809ff 100644
--- a/drivers/vhost/vhost.c
+++ b/drivers/vhost/vhost.c
@@ -683,11 +683,8 @@ static void *vhost_kvzalloc(unsigned long size)
{
void *n = kzalloc(size, GFP_KERNEL | __GFP_NOWARN | __GFP_REPEAT);
- if (!n) {
+ if (!n)
n = vzalloc(size);
- if (!n)
- return ERR_PTR(-ENOMEM);
- }
return n;
}