Skip to contentSkip to conversation

8-CPU (SMP) #s for lockfree rtcache

DISCUSSION Dipankar Sarma 1 participant 1 message May 28, 2002

lore
Share & tools
lore
#0 lore raw

Hi Alan,

Quoted 11 lines · In article <[email protected]> Alan Cox…
Quoted 2 lines · Andi Kleen

And gain tons of new atomic_incs and decs everywhere in the process? I would prefer RCU.

Lots of people write drivers, many of them not SMP kernel locking gurus who have time to understand RCU and when they can or cannot sleep, and what happens if their unload is pre-empted and RCU is in use. The kernel core has to provide a clean easy interface. The network code is a superb example of this. All the hard thinking is done outside of the driver, at least unless you choose to join in that thinking to get the last scraps of performance.

FWIW, recent RCU implementations support preemption. synchronize_kernel() in rcu_poll_preempt patches use call_rcu_preempt() where callbacks wait until all CPUs have done a voluntary context switch.
See http://prdownloads.sourceforge.net/lse/rcu_poll_preempt-2.5.14-2.patch

Thanks

Signature · 2 lines
Dipankar Sarma  <[email protected]> http://lse.sourceforge.net
Linux Technology Center, IBM Software Lab, Bangalore, India.