netprio_cgroup: reimplement priomap expansion
authorTejun Heo <tj@kernel.org>
Thu, 22 Nov 2012 15:32:46 +0000 (07:32 -0800)
committerTejun Heo <tj@kernel.org>
Thu, 22 Nov 2012 15:32:46 +0000 (07:32 -0800)
commit4a6ee25c7ea24decdf17af6fa2f2ab00acc7e4bf
treecbb106de43c38c9a44c17d1d9f48671dd334bbbc
parent52bca930c913c85ed1157ebc8f9dd9bc38a8c2c3
netprio_cgroup: reimplement priomap expansion

netprio kept track of the highest prioidx allocated and resized
priomaps accordingly when necessary.  This makes it necessary to keep
track of prioidx allocation and may end up resizing on every new
prioidx.

Update extend_netdev_table() such that it takes @target_idx which the
priomap should be able to accomodate.  If the priomap is large enough,
nothing happens; otherwise, the size is doubled until @target_idx can
be accomodated.

This makes max_prioidx and write_update_netdev_table() unnecessary.
write_priomap() now calls extend_netdev_table() directly.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Tested-and-Acked-by: Daniel Wagner <daniel.wagner@bmw-carit.de>
Acked-by: David S. Miller <davem@davemloft.net>
net/core/netprio_cgroup.c