aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ibmveth.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ibmveth.c')
-rw-r--r--drivers/net/ibmveth.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/net/ibmveth.c b/drivers/net/ibmveth.c
index f2b937966950..092fb9d76693 100644
--- a/drivers/net/ibmveth.c
+++ b/drivers/net/ibmveth.c
@@ -49,6 +49,7 @@
49#include <linux/proc_fs.h> 49#include <linux/proc_fs.h>
50#include <linux/in.h> 50#include <linux/in.h>
51#include <linux/ip.h> 51#include <linux/ip.h>
52#include <linux/slab.h>
52#include <net/net_namespace.h> 53#include <net/net_namespace.h>
53#include <asm/hvcall.h> 54#include <asm/hvcall.h>
54#include <asm/atomic.h> 55#include <asm/atomic.h>
@@ -956,7 +957,7 @@ static netdev_tx_t ibmveth_start_xmit(struct sk_buff *skb,
956 } else { 957 } else {
957 tx_packets++; 958 tx_packets++;
958 tx_bytes += skb->len; 959 tx_bytes += skb->len;
959 netdev->trans_start = jiffies; 960 netdev->trans_start = jiffies; /* NETIF_F_LLTX driver :( */
960 } 961 }
961 962
962 if (!used_bounce) 963 if (!used_bounce)
@@ -1072,7 +1073,7 @@ static void ibmveth_set_multicast_list(struct net_device *netdev)
1072 ibmveth_error_printk("h_multicast_ctrl rc=%ld when entering promisc mode\n", lpar_rc); 1073 ibmveth_error_printk("h_multicast_ctrl rc=%ld when entering promisc mode\n", lpar_rc);
1073 } 1074 }
1074 } else { 1075 } else {
1075 struct dev_mc_list *mclist; 1076 struct netdev_hw_addr *ha;
1076 /* clear the filter table & disable filtering */ 1077 /* clear the filter table & disable filtering */
1077 lpar_rc = h_multicast_ctrl(adapter->vdev->unit_address, 1078 lpar_rc = h_multicast_ctrl(adapter->vdev->unit_address,
1078 IbmVethMcastEnableRecv | 1079 IbmVethMcastEnableRecv |
@@ -1083,10 +1084,10 @@ static void ibmveth_set_multicast_list(struct net_device *netdev)
1083 ibmveth_error_printk("h_multicast_ctrl rc=%ld when attempting to clear filter table\n", lpar_rc); 1084 ibmveth_error_printk("h_multicast_ctrl rc=%ld when attempting to clear filter table\n", lpar_rc);
1084 } 1085 }
1085 /* add the addresses to the filter table */ 1086 /* add the addresses to the filter table */
1086 netdev_for_each_mc_addr(mclist, netdev) { 1087 netdev_for_each_mc_addr(ha, netdev) {
1087 // add the multicast address to the filter table 1088 // add the multicast address to the filter table
1088 unsigned long mcast_addr = 0; 1089 unsigned long mcast_addr = 0;
1089 memcpy(((char *)&mcast_addr)+2, mclist->dmi_addr, 6); 1090 memcpy(((char *)&mcast_addr)+2, ha->addr, 6);
1090 lpar_rc = h_multicast_ctrl(adapter->vdev->unit_address, 1091 lpar_rc = h_multicast_ctrl(adapter->vdev->unit_address,
1091 IbmVethMcastAddFilter, 1092 IbmVethMcastAddFilter,
1092 mcast_addr); 1093 mcast_addr);
@@ -1577,7 +1578,7 @@ static struct attribute * veth_pool_attrs[] = {
1577 NULL, 1578 NULL,
1578}; 1579};
1579 1580
1580static struct sysfs_ops veth_pool_ops = { 1581static const struct sysfs_ops veth_pool_ops = {
1581 .show = veth_pool_show, 1582 .show = veth_pool_show,
1582 .store = veth_pool_store, 1583 .store = veth_pool_store,
1583}; 1584};