linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* (no subject)
@ 2014-09-02 20:13 Andy King
  2014-09-02 20:13 ` [PATCH] VMXNET3: Check for map error in vmxnet3_set_mc Andy King
  0 siblings, 1 reply; 3+ messages in thread
From: Andy King @ 2014-09-02 20:13 UTC (permalink / raw)
  To: netdev, linux-kernel, virtualization
  Cc: davem, pv-drivers, penguin-kernel, sergei.shtylyov

This version addresses Sergei's comments.

o Fixed description and added Reported-by
o Removed NULL check for kfree()


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH] VMXNET3: Check for map error in vmxnet3_set_mc
  2014-09-02 20:13 Andy King
@ 2014-09-02 20:13 ` Andy King
  2014-09-05 18:50   ` David Miller
  0 siblings, 1 reply; 3+ messages in thread
From: Andy King @ 2014-09-02 20:13 UTC (permalink / raw)
  To: netdev, linux-kernel, virtualization
  Cc: davem, pv-drivers, penguin-kernel, sergei.shtylyov, Andy King

We should check if the map of the table actually succeeds, and also free
resources accordingly.

Version bumped to 1.2.1.0

Acked-by: Shelley Gong <shelleygong@vmware.com>
Acked-by: Bhavesh Davda <bhavesh@vmware.com>
Signed-off-by: Andy King <acking@vmware.com>
Reported-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
---
 drivers/net/vmxnet3/vmxnet3_drv.c |   15 ++++++++-------
 drivers/net/vmxnet3/vmxnet3_int.h |    4 ++--
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/drivers/net/vmxnet3/vmxnet3_drv.c b/drivers/net/vmxnet3/vmxnet3_drv.c
index d6e90c7..6dfcbf5 100644
--- a/drivers/net/vmxnet3/vmxnet3_drv.c
+++ b/drivers/net/vmxnet3/vmxnet3_drv.c
@@ -2056,7 +2056,6 @@ vmxnet3_set_mc(struct net_device *netdev)
 		if (!netdev_mc_empty(netdev)) {
 			new_table = vmxnet3_copy_mc(netdev);
 			if (new_table) {
-				new_mode |= VMXNET3_RXM_MCAST;
 				rxConf->mfTableLen = cpu_to_le16(
 					netdev_mc_count(netdev) * ETH_ALEN);
 				new_table_pa = dma_map_single(
@@ -2064,15 +2063,18 @@ vmxnet3_set_mc(struct net_device *netdev)
 							new_table,
 							rxConf->mfTableLen,
 							PCI_DMA_TODEVICE);
+			}
+
+			if (new_table_pa) {
+				new_mode |= VMXNET3_RXM_MCAST;
 				rxConf->mfTablePA = cpu_to_le64(new_table_pa);
 			} else {
-				netdev_info(netdev, "failed to copy mcast list"
-					    ", setting ALL_MULTI\n");
+				netdev_info(netdev,
+					    "failed to copy mcast list, setting ALL_MULTI\n");
 				new_mode |= VMXNET3_RXM_ALL_MULTI;
 			}
 		}
 
-
 	if (!(new_mode & VMXNET3_RXM_MCAST)) {
 		rxConf->mfTableLen = 0;
 		rxConf->mfTablePA = 0;
@@ -2091,11 +2093,10 @@ vmxnet3_set_mc(struct net_device *netdev)
 			       VMXNET3_CMD_UPDATE_MAC_FILTERS);
 	spin_unlock_irqrestore(&adapter->cmd_lock, flags);
 
-	if (new_table) {
+	if (new_table_pa)
 		dma_unmap_single(&adapter->pdev->dev, new_table_pa,
 				 rxConf->mfTableLen, PCI_DMA_TODEVICE);
-		kfree(new_table);
-	}
+	kfree(new_table);
 }
 
 void
diff --git a/drivers/net/vmxnet3/vmxnet3_int.h b/drivers/net/vmxnet3/vmxnet3_int.h
index 29ee77f2..3759479 100644
--- a/drivers/net/vmxnet3/vmxnet3_int.h
+++ b/drivers/net/vmxnet3/vmxnet3_int.h
@@ -69,10 +69,10 @@
 /*
  * Version numbers
  */
-#define VMXNET3_DRIVER_VERSION_STRING   "1.2.0.0-k"
+#define VMXNET3_DRIVER_VERSION_STRING   "1.2.1.0-k"
 
 /* a 32-bit int, each byte encode a verion number in VMXNET3_DRIVER_VERSION */
-#define VMXNET3_DRIVER_VERSION_NUM      0x01020000
+#define VMXNET3_DRIVER_VERSION_NUM      0x01020100
 
 #if defined(CONFIG_PCI_MSI)
 	/* RSS only makes sense if MSI-X is supported. */
-- 
1.7.4.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] VMXNET3: Check for map error in vmxnet3_set_mc
  2014-09-02 20:13 ` [PATCH] VMXNET3: Check for map error in vmxnet3_set_mc Andy King
@ 2014-09-05 18:50   ` David Miller
  0 siblings, 0 replies; 3+ messages in thread
From: David Miller @ 2014-09-05 18:50 UTC (permalink / raw)
  To: acking
  Cc: netdev, linux-kernel, virtualization, pv-drivers, penguin-kernel,
	sergei.shtylyov

From: Andy King <acking@vmware.com>
Date: Tue,  2 Sep 2014 13:13:44 -0700

> We should check if the map of the table actually succeeds, and also free
> resources accordingly.
> 
> Version bumped to 1.2.1.0
> 
> Acked-by: Shelley Gong <shelleygong@vmware.com>
> Acked-by: Bhavesh Davda <bhavesh@vmware.com>
> Signed-off-by: Andy King <acking@vmware.com>
> Reported-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>

Applied, thanks.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-09-05 18:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-02 20:13 Andy King
2014-09-02 20:13 ` [PATCH] VMXNET3: Check for map error in vmxnet3_set_mc Andy King
2014-09-05 18:50   ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).