Message ID | 20081111100816.58a7cf09@osprey.hogchain.net |
---|---|
State | Superseded, archived |
Delegated to: | Jeff Garzik |
Headers | show |
On Tue, Nov 11, 2008 at 10:08:16AM -0600, J. K. Cliburn wrote: > Can you please try this patch? > > diff --git a/drivers/net/atl1e/atl1e_hw.c b/drivers/net/atl1e/atl1e_hw.c > index 949e753..c0d5f7c 100644 > --- a/drivers/net/atl1e/atl1e_hw.c > +++ b/drivers/net/atl1e/atl1e_hw.c > @@ -163,9 +163,6 @@ int atl1e_read_mac_addr(struct atl1e_hw *hw) > * atl1e_hash_mc_addr > * purpose > * set hash value for a multicast address > - * hash calcu processing : > - * 1. calcu 32bit CRC for multicast address > - * 2. reverse crc with MSB to LSB > */ > u32 atl1e_hash_mc_addr(struct atl1e_hw *hw, u8 *mc_addr) > { > @@ -174,7 +171,6 @@ u32 atl1e_hash_mc_addr(struct atl1e_hw *hw, u8 *mc_addr) > int i; > > crc32 = ether_crc_le(6, mc_addr); > - crc32 = ~crc32; > for (i = 0; i < 32; i++) > value |= (((crc32 >> i) & 1) << (31 - i)); > Now it works. Many thanks! Happy hacking,
On Tue, 11 Nov 2008 23:00:15 +0100 David Madore <david.madore@ens.fr> wrote: > On Tue, Nov 11, 2008 at 10:08:16AM -0600, J. K. Cliburn wrote: > > Can you please try this patch? [...] > Now it works. Many thanks! Thank you very much for reporting the bug and testing the fix. Jay -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/atl1e/atl1e_hw.c b/drivers/net/atl1e/atl1e_hw.c index 949e753..c0d5f7c 100644 --- a/drivers/net/atl1e/atl1e_hw.c +++ b/drivers/net/atl1e/atl1e_hw.c @@ -163,9 +163,6 @@ int atl1e_read_mac_addr(struct atl1e_hw *hw) * atl1e_hash_mc_addr * purpose * set hash value for a multicast address - * hash calcu processing : - * 1. calcu 32bit CRC for multicast address - * 2. reverse crc with MSB to LSB */ u32 atl1e_hash_mc_addr(struct atl1e_hw *hw, u8 *mc_addr) { @@ -174,7 +171,6 @@ u32 atl1e_hash_mc_addr(struct atl1e_hw *hw, u8 *mc_addr) int i; crc32 = ether_crc_le(6, mc_addr); - crc32 = ~crc32; for (i = 0; i < 32; i++) value |= (((crc32 >> i) & 1) << (31 - i));