netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] dm9601: Fix multicast hash table handling
@ 2008-03-18 22:16 Peter Korsgaard
  2008-03-18 22:16 ` [PATCH] dm9601: add Hirose USB-100 device ID Peter Korsgaard
  2008-03-26  3:20 ` [PATCH] dm9601: Fix multicast hash table handling Jeff Garzik
  0 siblings, 2 replies; 10+ messages in thread
From: Peter Korsgaard @ 2008-03-18 22:16 UTC (permalink / raw)
  To: jeff, netdev; +Cc: Peter Korsgaard

The loop forgot to walk the net->mc_list list, so only the first
multicast address was programmed into the hash table.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
 drivers/net/usb/dm9601.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/usb/dm9601.c b/drivers/net/usb/dm9601.c
index 4b131a6..96082fd 100644
--- a/drivers/net/usb/dm9601.c
+++ b/drivers/net/usb/dm9601.c
@@ -354,7 +354,7 @@ static void dm9601_set_multicast(struct net_device *net)
 		struct dev_mc_list *mc_list = net->mc_list;
 		int i;
 
-		for (i = 0; i < net->mc_count; i++) {
+		for (i = 0; i < net->mc_count; i++, mlist = mlist->next) {
 			u32 crc = ether_crc(ETH_ALEN, mc_list->dmi_addr) >> 26;
 			hashes[crc >> 3] |= 1 << (crc & 0x7);
 		}
-- 
1.5.4.1


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

* [PATCH] dm9601: add Hirose USB-100 device ID
  2008-03-18 22:16 [PATCH] dm9601: Fix multicast hash table handling Peter Korsgaard
@ 2008-03-18 22:16 ` Peter Korsgaard
  2008-03-18 22:16   ` [PATCH] dm9601: configure MAC to drop invalid (crc/length) packets Peter Korsgaard
  2008-03-26  3:20 ` [PATCH] dm9601: Fix multicast hash table handling Jeff Garzik
  1 sibling, 1 reply; 10+ messages in thread
From: Peter Korsgaard @ 2008-03-18 22:16 UTC (permalink / raw)
  To: jeff, netdev; +Cc: Peter Korsgaard

The Hirose USB-100 adapter uses a dm9601 chip.
Reported by Robert Brockway.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
 drivers/net/usb/dm9601.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/net/usb/dm9601.c b/drivers/net/usb/dm9601.c
index 96082fd..1821778 100644
--- a/drivers/net/usb/dm9601.c
+++ b/drivers/net/usb/dm9601.c
@@ -562,6 +562,10 @@ static const struct usb_device_id products[] = {
 	 USB_DEVICE(0x0a46, 0x8515),	/* ADMtek ADM8515 USB NIC */
 	 .driver_info = (unsigned long)&dm9601_info,
 	 },
+	{
+	USB_DEVICE(0x0a47, 0x9601),	/* Hirose USB-100 */
+	.driver_info = (unsigned long)&dm9601_info,
+	 },
 	{},			// END
 };
 
-- 
1.5.4.1


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

* [PATCH] dm9601: configure MAC to drop invalid (crc/length) packets
  2008-03-18 22:16 ` [PATCH] dm9601: add Hirose USB-100 device ID Peter Korsgaard
@ 2008-03-18 22:16   ` Peter Korsgaard
  0 siblings, 0 replies; 10+ messages in thread
From: Peter Korsgaard @ 2008-03-18 22:16 UTC (permalink / raw)
  To: jeff, netdev; +Cc: Peter Korsgaard


Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
 drivers/net/usb/dm9601.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/usb/dm9601.c b/drivers/net/usb/dm9601.c
index 1821778..824dbc6 100644
--- a/drivers/net/usb/dm9601.c
+++ b/drivers/net/usb/dm9601.c
@@ -341,7 +341,7 @@ static void dm9601_set_multicast(struct net_device *net)
 	/* We use the 20 byte dev->data for our 8 byte filter buffer
 	 * to avoid allocating memory that is tricky to free later */
 	u8 *hashes = (u8 *) & dev->data;
-	u8 rx_ctl = 0x01;
+	u8 rx_ctl = 0x31;
 
 	memset(hashes, 0x00, DM_MCAST_SIZE);
 	hashes[DM_MCAST_SIZE - 1] |= 0x80;	/* broadcast address */
-- 
1.5.4.1


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

* Re: [PATCH] dm9601: Fix multicast hash table handling
  2008-03-18 22:16 [PATCH] dm9601: Fix multicast hash table handling Peter Korsgaard
  2008-03-18 22:16 ` [PATCH] dm9601: add Hirose USB-100 device ID Peter Korsgaard
@ 2008-03-26  3:20 ` Jeff Garzik
  2008-03-26  3:33   ` Jeff Garzik
  2008-03-26  7:34   ` Peter Korsgaard
  1 sibling, 2 replies; 10+ messages in thread
From: Jeff Garzik @ 2008-03-26  3:20 UTC (permalink / raw)
  To: Peter Korsgaard; +Cc: netdev

Peter Korsgaard wrote:
> The loop forgot to walk the net->mc_list list, so only the first
> multicast address was programmed into the hash table.
> 
> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
> ---
>  drivers/net/usb/dm9601.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)

applied three patches.

Please number your patches in the future, to indicate the order of 
application -- even if they are roughly independent, it helps to know 
they are in the same patch series by some method other than just the 
References RFC-822 header

	Jeff




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

* Re: [PATCH] dm9601: Fix multicast hash table handling
  2008-03-26  3:20 ` [PATCH] dm9601: Fix multicast hash table handling Jeff Garzik
@ 2008-03-26  3:33   ` Jeff Garzik
  2008-03-26  7:51     ` Peter Korsgaard
  2008-03-26  7:34   ` Peter Korsgaard
  1 sibling, 1 reply; 10+ messages in thread
From: Jeff Garzik @ 2008-03-26  3:33 UTC (permalink / raw)
  To: Peter Korsgaard; +Cc: netdev

Jeff Garzik wrote:
> Peter Korsgaard wrote:
>> The loop forgot to walk the net->mc_list list, so only the first
>> multicast address was programmed into the hash table.
>>
>> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
>> ---
>>  drivers/net/usb/dm9601.c |    2 +-
>>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> applied three patches.
> 
> Please number your patches in the future, to indicate the order of 
> application -- even if they are roughly independent, it helps to know 
> they are in the same patch series by some method other than just the 
> References RFC-822 header


I take that back... this breaks the build:  'mlist' not defined


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

* Re: [PATCH] dm9601: Fix multicast hash table handling
  2008-03-26  3:20 ` [PATCH] dm9601: Fix multicast hash table handling Jeff Garzik
  2008-03-26  3:33   ` Jeff Garzik
@ 2008-03-26  7:34   ` Peter Korsgaard
  1 sibling, 0 replies; 10+ messages in thread
From: Peter Korsgaard @ 2008-03-26  7:34 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: netdev

>>>>> "Jeff" == Jeff Garzik <jeff@garzik.org> writes:

 Jeff> Peter Korsgaard wrote:
 >> The loop forgot to walk the net->mc_list list, so only the first
 >> multicast address was programmed into the hash table.
 >> 
 >> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
 >> ---
 >> drivers/net/usb/dm9601.c |    2 +-
 >> 1 files changed, 1 insertions(+), 1 deletions(-)

 Jeff> applied three patches.

Thanks!

 Jeff> Please number your patches in the future, to indicate the order of
 Jeff> application -- even if they are roughly independent, it helps to know
 Jeff> they are in the same patch series by some method other than just the
 Jeff> References RFC-822 header

Ok - Will do.

-- 
Bye, Peter Korsgaard

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

* Re: [PATCH] dm9601: Fix multicast hash table handling
  2008-03-26  3:33   ` Jeff Garzik
@ 2008-03-26  7:51     ` Peter Korsgaard
  0 siblings, 0 replies; 10+ messages in thread
From: Peter Korsgaard @ 2008-03-26  7:51 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: netdev

>>>>> "Jeff" == Jeff Garzik <jeff@garzik.org> writes:

 Jeff> I take that back... this breaks the build:  'mlist' not defined

Argh, it seems like I sent the wrong patch - Sorry about that :/

It was ofcause meant to be mc_list instead. I would like to get this
patch in 2.6.25 if possible.


>From 7ac36d3b2f78a31c6dc224968f9b19a0d6c71688 Mon Sep 17 00:00:00 2001
From: Peter Korsgaard <jacmet@sunsite.dk>
Date: Wed, 26 Mar 2008 08:48:52 +0100
Subject: [PATCH] dm9601: Fix multicast hash table handling

The loop forgot to walk the net->mc_list list, so only the first
multicast address was programmed into the hash table.
---
 drivers/net/usb/dm9601.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/usb/dm9601.c b/drivers/net/usb/dm9601.c
index 0343b00..01660f6 100644
--- a/drivers/net/usb/dm9601.c
+++ b/drivers/net/usb/dm9601.c
@@ -354,7 +354,7 @@ static void dm9601_set_multicast(struct net_device *net)
 		struct dev_mc_list *mc_list = net->mc_list;
 		int i;
 
-		for (i = 0; i < net->mc_count; i++) {
+		for (i = 0; i < net->mc_count; i++, mc_list = mc_list->next) {
 			u32 crc = ether_crc(ETH_ALEN, mc_list->dmi_addr) >> 26;
 			hashes[crc >> 3] |= 1 << (crc & 0x7);
 		}
-- 
1.5.4.4


-- 
Bye, Peter Korsgaard

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

* [PATCH] dm9601: Fix multicast hash table handling
@ 2008-03-28 21:25 Peter Korsgaard
  2008-03-29  1:53 ` Jeff Garzik
  0 siblings, 1 reply; 10+ messages in thread
From: Peter Korsgaard @ 2008-03-28 21:25 UTC (permalink / raw)
  To: jeff, netdev

The loop forgot to walk the net->mc_list list, so only the first
multicast address was programmed into the hash table.
---
Jeff, I would like to get this patch in 2.6.25 if possible.

 drivers/net/usb/dm9601.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/usb/dm9601.c b/drivers/net/usb/dm9601.c
index 0343b00..01660f6 100644
--- a/drivers/net/usb/dm9601.c
+++ b/drivers/net/usb/dm9601.c
@@ -354,7 +354,7 @@ static void dm9601_set_multicast(struct net_device *net)
 		struct dev_mc_list *mc_list = net->mc_list;
 		int i;
 
-		for (i = 0; i < net->mc_count; i++) {
+		for (i = 0; i < net->mc_count; i++, mc_list = mc_list->next) {
 			u32 crc = ether_crc(ETH_ALEN, mc_list->dmi_addr) >> 26;
 			hashes[crc >> 3] |= 1 << (crc & 0x7);
 		}
-- 
1.5.4.4


-- 
Bye, Peter Korsgaard

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

* Re: [PATCH] dm9601: Fix multicast hash table handling
  2008-03-28 21:25 Peter Korsgaard
@ 2008-03-29  1:53 ` Jeff Garzik
  2008-03-29  9:23   ` Peter Korsgaard
  0 siblings, 1 reply; 10+ messages in thread
From: Jeff Garzik @ 2008-03-29  1:53 UTC (permalink / raw)
  To: Peter Korsgaard; +Cc: netdev

Peter Korsgaard wrote:
> The loop forgot to walk the net->mc_list list, so only the first
> multicast address was programmed into the hash table.
> ---
> Jeff, I would like to get this patch in 2.6.25 if possible.

applied, signed-off-by lines would help...



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

* Re: [PATCH] dm9601: Fix multicast hash table handling
  2008-03-29  1:53 ` Jeff Garzik
@ 2008-03-29  9:23   ` Peter Korsgaard
  0 siblings, 0 replies; 10+ messages in thread
From: Peter Korsgaard @ 2008-03-29  9:23 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: netdev

>>>>> "Jeff" == Jeff Garzik <jeff@garzik.org> writes:

 Jeff> Peter Korsgaard wrote:
 >> The loop forgot to walk the net->mc_list list, so only the first
 >> multicast address was programmed into the hash table.
 >> ---
 >> Jeff, I would like to get this patch in 2.6.25 if possible.

 Jeff> applied, signed-off-by lines would help...

Thanks, and sorry about that, it seems that I forgot to add the -s
option, that should teach me to not do any work before the morning
coffee ..

-- 
Bye, Peter Korsgaard

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

end of thread, other threads:[~2008-03-29 11:35 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-18 22:16 [PATCH] dm9601: Fix multicast hash table handling Peter Korsgaard
2008-03-18 22:16 ` [PATCH] dm9601: add Hirose USB-100 device ID Peter Korsgaard
2008-03-18 22:16   ` [PATCH] dm9601: configure MAC to drop invalid (crc/length) packets Peter Korsgaard
2008-03-26  3:20 ` [PATCH] dm9601: Fix multicast hash table handling Jeff Garzik
2008-03-26  3:33   ` Jeff Garzik
2008-03-26  7:51     ` Peter Korsgaard
2008-03-26  7:34   ` Peter Korsgaard
  -- strict thread matches above, loose matches on Subject: below --
2008-03-28 21:25 Peter Korsgaard
2008-03-29  1:53 ` Jeff Garzik
2008-03-29  9:23   ` Peter Korsgaard

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).