Hi new version of the patch for xen-netfront.c , and it's for 3.16.7.



--- a/drivers/net/xen-netfront.c
+++ b/drivers/net/xen-netfront.c
@@ -1827,8 +1827,9 @@ static int xennet_create_queues(struct netfront_info *info,
 
 		ret = xennet_init_queue(queue);
 		if (ret < 0) {
-			dev_warn(&info->netdev->dev, "only created %d queues\n",
-				 num_queues);
+			dev_warn(&info->netdev->dev,
+				 "only created %d of %d queues\n",
+				 i, num_queues);
 			num_queues = i;
 			break;
 		}
@@ -1893,6 +1894,9 @@ static int talk_to_netback(struct xenbus_device *dev,
 	if (err < 0)
 		goto destroy_ring;
 
+	/* xennet_create_queues might create fewer queues than requested */
+	num_queues = info->netdev->real_num_tx_queues;
+
 	/* Create shared ring, alloc event channel -- for each queue */
 	for (i = 0; i < num_queues; ++i) {
 		queue = &info->queues[i];

Reply via email to