]> git.karo-electronics.de Git - karo-tx-linux.git/commit
net: QDISC_STATE_RUNNING dont need atomic bit ops
authorEric Dumazet <eric.dumazet@gmail.com>
Wed, 2 Jun 2010 10:24:13 +0000 (03:24 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 2 Jun 2010 10:24:13 +0000 (03:24 -0700)
commit371121057607e3127e19b3fa094330181b5b031e
treed0803bdf06a50fdad88435588f66b2f0f4c95008
parentbc135b23d01acf7ee926aaf75b0020c86d3869f9
net: QDISC_STATE_RUNNING dont need atomic bit ops

__QDISC_STATE_RUNNING is always changed while qdisc lock is held.

We can avoid two atomic operations in xmit path, if we move this bit in
a new __state container.

Location of this __state container is carefully chosen so that fast path
only dirties one qdisc cache line.

THROTTLED bit could later be moved into this __state location too, to
avoid dirtying first qdisc cache line.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/sch_generic.h