Since vzalloc can be failed in memory pressure,
return value should be checked and return ENOMEM.

Signed-off-by: Insu Yun <wuni...@gmail.com>
---
 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;
+  }
+
        be->vif->num_queues = requested_num_queues;
        be->vif->stalled_queues = requested_num_queues;
 
-- 
1.9.1


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to