Thread (5 messages) flat view 5 messages, 4 authors, 2015-10-16

Re: [PATCH] xen-netback: corretly check failed allocation

From: Wei Liu <hidden>
Date: 2015-10-15 17:13:06
Also in: lkml

On Thu, Oct 15, 2015 at 12:26:16PM -0400, Insu Yun wrote:
Since vzalloc can be failed in memory pressure,
return value should be checked and return ENOMEM.
This function doesn't return ENOMEM, instead it writes to xenstore to
indicate error. The commit log needs to be updated.
quoted hunk ↗ jump to hunk
Signed-off-by: Insu Yun <redacted>
---
 drivers/net/xen-netback/xenbus.c | 5 +++++
 1 file changed, 5 insertions(+)
diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
index 929a6e7..e288246 100644
--- a/drivers/net/xen-netback/xenbus.c
+++ b/drivers/net/xen-netback/xenbus.c
@@ -788,6 +788,11 @@ static void connect(struct backend_info *be)
 	/* Use the number of queues requested by the frontend */
 	be->vif->queues = vzalloc(requested_num_queues *
 				  sizeof(struct xenvif_queue));
+  if (!be->vif->queues)  {
+    xenbus_dev_fatal(dev, -ENOMEM, "allocating queues");
+    return;
+  }
+
The indentation is wrong. Please configure your email client properly.

And please use "goto err" for error handling -- yes, I understand there
is existing code that returns directly but IMHO that should be fixed
too.

We.
 	be->vif->num_queues = requested_num_queues;
 	be->vif->stalled_queues = requested_num_queues;
 
-- 
1.9.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help