Merge branch 'upstream-greg' of gregkh@master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6

This commit is contained in:
Greg Kroah-Hartman 2006-08-09 11:46:30 -07:00
commit 54f58d6c4f
2 changed files with 24 additions and 2 deletions

View File

@ -2425,7 +2425,7 @@ static int myri10ge_resume(struct pci_dev *pdev)
} }
myri10ge_reset(mgp); myri10ge_reset(mgp);
myri10ge_dummy_rdma(mgp, mgp->tx.boundary != 4096); myri10ge_dummy_rdma(mgp, 1);
/* Save configuration space to be restored if the /* Save configuration space to be restored if the
* nic resets due to a parity error */ * nic resets due to a parity error */

View File

@ -82,6 +82,7 @@
#include <linux/init.h> /* for __init */ #include <linux/init.h> /* for __init */
#include <linux/if_arp.h> /* ARPHRD_ETHER */ #include <linux/if_arp.h> /* ARPHRD_ETHER */
#include <linux/etherdevice.h> /* compare_ether_addr */ #include <linux/etherdevice.h> /* compare_ether_addr */
#include <linux/interrupt.h>
#include <linux/wireless.h> /* Pretty obvious */ #include <linux/wireless.h> /* Pretty obvious */
#include <net/iw_handler.h> /* New driver API */ #include <net/iw_handler.h> /* New driver API */
@ -1842,6 +1843,18 @@ int wireless_rtnetlink_set(struct net_device * dev,
*/ */
#ifdef WE_EVENT_RTNETLINK #ifdef WE_EVENT_RTNETLINK
static struct sk_buff_head wireless_nlevent_queue;
static void wireless_nlevent_process(unsigned long data)
{
struct sk_buff *skb;
while ((skb = skb_dequeue(&wireless_nlevent_queue)))
netlink_broadcast(rtnl, skb, 0, RTNLGRP_LINK, GFP_ATOMIC);
}
static DECLARE_TASKLET(wireless_nlevent_tasklet, wireless_nlevent_process, 0);
/* ---------------------------------------------------------------- */ /* ---------------------------------------------------------------- */
/* /*
* Fill a rtnetlink message with our event data. * Fill a rtnetlink message with our event data.
@ -1904,8 +1917,17 @@ static inline void rtmsg_iwinfo(struct net_device * dev,
return; return;
} }
NETLINK_CB(skb).dst_group = RTNLGRP_LINK; NETLINK_CB(skb).dst_group = RTNLGRP_LINK;
netlink_broadcast(rtnl, skb, 0, RTNLGRP_LINK, GFP_ATOMIC); skb_queue_tail(&wireless_nlevent_queue, skb);
tasklet_schedule(&wireless_nlevent_tasklet);
} }
static int __init wireless_nlevent_init(void)
{
skb_queue_head_init(&wireless_nlevent_queue);
return 0;
}
subsys_initcall(wireless_nlevent_init);
#endif /* WE_EVENT_RTNETLINK */ #endif /* WE_EVENT_RTNETLINK */
/* ---------------------------------------------------------------- */ /* ---------------------------------------------------------------- */