linux/drivers/net/ethernet
Alexander Duyck de88eeeb16 ixgbe: Allocate rings as part of the q_vector
This patch makes the rings a part of the q_vector directly instead of
indirectly.  Specifically on x86 systems this helps to avoid any cache
set conflicts between the q_vector, the tx_rings, and the rx_rings as the
critical stride is 4K and in order to cross that boundary you would need to
have over 15 rings on a single q_vector.

In addition this allows for smarter allocations when Flow Director is
enabled.  Previously Flow Director would set the irq_affinity hints based
on the CPU and was still using a node interleaving approach which on some
systems would end up with the two values mismatched.  With the new approach
we can set the affinity for the irq_vector and use the CPU for that
affinity to determine the node value for the node and the rings.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2012-03-12 20:52:48 -07:00
..
3com 3com/typhoon: reuse eth_mac_addr() 2012-02-22 14:46:37 -05:00
8390 netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-06 11:41:20 -05:00
adaptec netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-06 11:41:20 -05:00
adi adi: adapt to eth_hw_addr_random() and changes in arch/blackfin 2012-02-19 19:03:04 -05:00
aeroflex ethernet: unify return value of .ndo_set_mac_address if address is invalid 2012-02-23 17:03:20 -05:00
alteon drivers/net: Remove alloc_etherdev error messages 2012-01-31 16:20:48 -05:00
amd amd/hplance.c: print MAC via printk format specifier 2012-02-24 15:40:59 -05:00
apple netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
atheros Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-03-09 14:34:20 -08:00
broadcom bnx2x: code doesn't use stats for allocating Rx BDs 2012-03-12 17:10:50 -07:00
brocade drivers/net: Remove boolean comparisons to true/false 2012-02-13 00:47:40 -05:00
cadence net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
calxeda net: use eth_hw_addr_random() and reset addr_assign_type 2012-02-15 15:34:17 -05:00
chelsio Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-03-09 14:34:20 -08:00
cirrus mac89x0: Fix build error. 2012-02-28 15:48:42 -05:00
cisco enic: Fix addr valid check in enic_set_vf_mac 2012-03-08 00:28:19 -08:00
davicom net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
dec dec/tulip/de4x5: print MAC via printk format specifier 2012-02-24 15:40:59 -05:00
dlink ethernet: unify return value of .ndo_set_mac_address if address is invalid 2012-02-23 17:03:20 -05:00
emulex be2net: Remove unused OFFSET_IN_PAGE() macro 2012-03-01 17:21:49 -05:00
faraday net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
freescale ucc_geth: separate out rx/tx ring alloc and free operations 2012-03-04 20:54:01 -05:00
fujitsu netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-06 11:52:27 -05:00
hp netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-06 11:52:27 -05:00
i825xx netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-06 11:52:27 -05:00
ibm net: powerpc: remove the legacy iSeries ethernet driver 2012-03-09 23:41:26 -05:00
icplus netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-06 11:52:27 -05:00
intel ixgbe: Allocate rings as part of the q_vector 2012-03-12 20:52:48 -07:00
marvell ethernet: unify return value of .ndo_set_mac_address if address is invalid 2012-02-23 17:03:20 -05:00
mellanox Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-03-09 14:34:20 -08:00
micrel Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-02-26 21:55:51 -05:00
microchip net: use eth_hw_addr_random() and reset addr_assign_type 2012-02-15 15:34:17 -05:00
myricom drivers/net: Remove alloc_etherdev error messages 2012-01-31 16:20:48 -05:00
natsemi net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
neterion ethernet: unify return value of .ndo_set_mac_address if address is invalid 2012-02-23 17:03:20 -05:00
nuvoton netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
nvidia net: use eth_hw_addr_random() and reset addr_assign_type 2012-02-15 15:34:17 -05:00
nxp lpc32xx: Added ethernet driver 2012-03-12 17:08:34 -07:00
octeon octeon: fix PHY name to match MDIO bus name 2012-02-13 16:04:09 -05:00
oki-semi net/pch_gbe: supports eg20t ptp clock 2012-03-09 13:55:38 -08:00
packetengines Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-03-05 21:16:26 -05:00
pasemi ethernet: unify return value of .ndo_set_mac_address if address is invalid 2012-02-23 17:03:20 -05:00
qlogic qla3xxx: ethernet: Silence static checker warning. 2012-03-06 15:19:14 -05:00
racal netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
rdc net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
realtek r8169: enable transmit time stamping. 2012-03-11 15:43:40 -07:00
renesas net: sh_eth: add support for VLAN tag filtering 2012-02-16 17:08:09 -05:00
seeq netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
sfc sfc: Log the part number on probe 2012-03-06 18:14:16 +00:00
sgi net: meth: Add set_rx_mode hook to fix ICMPv6 neighbor discovery 2011-12-27 13:17:34 -05:00
silan
sis net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
smsc net: use eth_hw_addr_random() and reset addr_assign_type 2012-02-15 15:34:17 -05:00
stmicro Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-02-19 16:03:15 -05:00
sun sun/sunqe: print MAC via printk format specifier 2012-02-24 15:40:59 -05:00
tehuti netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
ti Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-02-26 21:55:51 -05:00
tile ethernet: unify return value of .ndo_set_mac_address if address is invalid 2012-02-23 17:03:20 -05:00
toshiba net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
tundra ethernet: unify return value of .ndo_set_mac_address if address is invalid 2012-02-23 17:03:20 -05:00
via net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
xilinx ll_temac: Fix build. 2012-02-20 00:46:06 -05:00
xircom netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
xscale xscale/ixp2000/ixpdev: print MAC via printk format specifier 2012-02-24 15:41:00 -05:00
dnet.c net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
dnet.h
ethoc.c ethoc: set addr_assign_type if random_ether_addr() used 2012-02-17 15:58:06 -05:00
fealnx.c netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-06 11:48:09 -05:00
jme.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-02-26 21:55:51 -05:00
jme.h jme: Fix FIFO flush issue 2012-02-22 14:44:41 -05:00
Kconfig lpc32xx: Added ethernet driver 2012-03-12 17:08:34 -07:00
korina.c drivers/net: Remove alloc_etherdev error messages 2012-01-31 16:20:48 -05:00
lantiq_etop.c ethernet: Fix typo in lantiq_etop.c 2012-02-19 19:02:42 -05:00
Makefile lpc32xx: Added ethernet driver 2012-03-12 17:08:34 -07:00
mipsnet.c net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
netx-eth.c netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00
s6gmac.c netdev: ethernet dev_alloc_skb to netdev_alloc_skb 2012-02-08 18:46:38 -05:00