Open Source Automation Development Lab
You are here: Home / OSADL / News / 
2010-03-19 - 21:25

Next OSADL Events:

Hannover Fair 2010
19.04 - 23.04

Breaking News:

2010-03-10 12:00

Parallel real-time on multi-core systems with mainline Linux

Several tasks simultaneously running at real-time priority no longer interfere to each other!


2010-02-22 12:00

"Latest Stable" Linux mainline real-time 2.6.31 is out!

Kernel 2.6.31.12-rt21 is our latest and greatest


2010-02-21 12:00

OSADL at the Embedded World 2010

Industry needs Open Source - Open Source meets Industry


2010-02-08 12:00

Prof Eben Moglen on "GNU GPL Version 3: The Law Making Process"

International Conference on Commons, Users, Service Providers Internet (Self-)Regulation and Copyright


2009-11-23 12:00

Added a new HOWTO to the OSADL Website: Use BuildRoot to create a Linux image for QEMU

Guest Editor Bogdan Cristea tells us about rapid prototyping of an embedded system using virtualization



2010-02-09 12:00 Age: 38 Days

Spinlock annotations merged from the realtime tree to Linux mainline in 2.6.33

By: Carsten Emde

Raw spinlocks are the "real" spinlocks now

Up to now, mainline Linux only knew of one type of spinlocks - spinning spinlocks. In the PREEMPT_RT tree, however, it must be differentiated between spinlocks that might sleep in the realtime kernel and those that always spin - even in the realtime kernel. This required a new name space and a decision which type of spinlocks to rename. At the 2009 Kernel Summit, it was decided not to rename the locks that need to be converted to sleeping spinlocks in preempt-rt, since this would result in an enormous patch orgy and certainly create a lot of confusion.

Later on, in the final stage of the merge window of Linux 2.6.33, Linus came up with the proposal to

  • rename the architecture implementations of spinlocks from raw_spinlock to arch_spinlock,
  • to use raw_spinlock for spinlocks that always spin even on RT and
  • to keep spinlock for spinlocks that might sleep in RT.

Thomas created this (still large) patch series which Linus merged into 2.6.33 on December 15, 2009. This reduced the size of the uncompressed preempt-rt patch by more than 600 kByte - another important milestone on our road towards complete integration of the RT tree into the mainline kernel!