Fix for incorrect multicast address

Signed-off-by: Tatyana Nikolova <[email protected]>
---
 .../0026-RDMA-nes-Fix-for-multicast-addr.patch     |   34 ++++++++++++++++++++
 1 files changed, 34 insertions(+), 0 deletions(-)
 create mode 100644 
linux-next-pending/0026-RDMA-nes-Fix-for-multicast-addr.patch

diff --git a/linux-next-pending/0026-RDMA-nes-Fix-for-multicast-addr.patch 
b/linux-next-pending/0026-RDMA-nes-Fix-for-multicast-addr.patch
new file mode 100644
index 0000000..defa75d
--- /dev/null
+++ b/linux-next-pending/0026-RDMA-nes-Fix-for-multicast-addr.patch
@@ -0,0 +1,34 @@
+RDMA/nes: Fix for incorrect multicast address in the perfect filter table
+
+Signed-off-by: Tatyana Nikolova <[email protected]>
+---
+ drivers/infiniband/hw/nes/nes_nic.c |   13 +++++++------
+ 1 files changed, 7 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/infiniband/hw/nes/nes_nic.c 
b/drivers/infiniband/hw/nes/nes_nic.c
+index 0564be7..9542e16 100644
+--- a/drivers/infiniband/hw/nes/nes_nic.c
++++ b/drivers/infiniband/hw/nes/nes_nic.c
+@@ -944,12 +944,13 @@ static void nes_netdev_set_multicast_list(struct 
net_device *netdev)
+                                         addr,
+                                         
perfect_filter_register_address+(mc_index * 8),
+                                         mc_nic_index);
+-                              macaddr_high  = ((u16) addr[0]) << 8;
+-                              macaddr_high += (u16) addr[1];
+-                              macaddr_low   = ((u32) addr[2]) << 24;
+-                              macaddr_low  += ((u32) addr[3]) << 16;
+-                              macaddr_low  += ((u32) addr[4]) << 8;
+-                              macaddr_low  += (u32) addr[5];
++                              macaddr_high  = ((u8) addr[0]) << 8;
++                              macaddr_high += (u8) addr[1];
++                              macaddr_low   = ((u8) addr[2]) << 24;
++                              macaddr_low  += ((u8) addr[3]) << 16;
++                              macaddr_low  += ((u8) addr[4]) << 8;
++                              macaddr_low  += (u8) addr[5];
++
+                               nes_write_indexed(nesdev,
+                                               
perfect_filter_register_address+(mc_index * 8),
+                                               macaddr_low);
+-- 
+1.7.4.2
+
-- 
1.7.1

_______________________________________________
ewg mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg

Reply via email to