diff options
author | Tom Herbert <therbert@google.com> | 2010-11-09 10:47:38 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-11-15 10:57:28 -0800 |
commit | fe8222406c8277a21172479d3a8283d31c209028 (patch) | |
tree | 89876457391fba73e3c2c9fdbf9c28a980ad4ffc /include | |
parent | ed9af2e839c06c18f721da2c768fbb444c4a10e5 (diff) | |
download | linux-stable-fe8222406c8277a21172479d3a8283d31c209028.tar.gz linux-stable-fe8222406c8277a21172479d3a8283d31c209028.tar.bz2 linux-stable-fe8222406c8277a21172479d3a8283d31c209028.zip |
net: Simplify RX queue allocation
This patch move RX queue allocation to alloc_netdev_mq and freeing of
the queues to free_netdev (symmetric to TX queue allocation). Each
kobject RX queue takes a reference to the queue's device so that the
device can't be freed before all the kobjects have been released-- this
obviates the need for reference counts specific to RX queues.
Signed-off-by: Tom Herbert <therbert@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/netdevice.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 6e4cfbc53d4c..fccb11f879e5 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -592,8 +592,7 @@ struct netdev_rx_queue { struct rps_map __rcu *rps_map; struct rps_dev_flow_table __rcu *rps_flow_table; struct kobject kobj; - struct netdev_rx_queue *first; - atomic_t count; + struct net_device *dev; } ____cacheline_aligned_in_smp; #endif /* CONFIG_RPS */ |