Thread (31 messages) 31 messages, 10 authors, 2009-03-20

Re: High contention on the sk_buff_head.lock

From: Sven-Thorsten Dietrich <hidden>
Date: 2009-03-19 01:20:33
Also in: lkml, netdev

Possibly related (same subject, not in this thread)

On Wed, 2009-03-18 at 18:03 -0700, David Miller wrote:
From: Gregory Haskins <redacted>
Date: Wed, 18 Mar 2009 17:54:04 -0400
quoted
Note that -rt doesnt typically context-switch under contention anymore
since we introduced adaptive-locks.  Also note that the contention
against the lock is still contention, regardless of whether you have -rt
or not.  Its just that the slow-path to handle the contended case for
-rt is more expensive than mainline.  However, once you have the
contention as stated, you have already lost.
First, contention is not implicitly a bad thing.
Its a bad thing when it does not scale.
Second, if the -rt kernel is doing adaptive spinning I see no
reason why that adaptive spinning is not kicking in here to
make this problem just go away.
If only the first of N contending threads gets to spin, 2..N would
context-switch.

This lock is held for mere cycles, just to unlink an SKB from
the networking qdisc, and then it is immediately released.
For very short hold times, and heavy contention, as well as for
scalability, the solution may lie in tunable spinner-count and adaptive
spinner time-out.

Sven
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help