Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[patch 0/5] seqlock: cleanup, raw_seqlock implementation, xtime_lock conversion

2 views
Skip to first unread message

Thomas Gleixner

unread,
Feb 17, 2010, 1:50:02 PM2/17/10
to
The following series contains the following changes:

- fix the last users of the oldstyle seqlock initializer

- implement raw_seqlock (for seqlocks which need a raw_spinlock in
preempt-rt

- convert xtime_lock to raw_seqlock and fix up all users

- convert x86 vsyscall gtod seqlock to raw_seqlock

The patches have been used in the preempt-rt tree for quite a while
and are a defacto NOP change for mainline, but merging them takes off
the burden from preempt-rt.

Please review and comment.

Thanks,

tglx

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Thomas Gleixner

unread,
Feb 17, 2010, 1:50:03 PM2/17/10
to
x86-convert-xsyscall-gtod-lock-to-raw-seqlock.patch

Thomas Gleixner

unread,
Feb 17, 2010, 1:50:03 PM2/17/10
to
seqlock-remove-oldstyle-init.patch

Thomas Gleixner

unread,
Feb 17, 2010, 1:50:02 PM2/17/10
to
seqlock-convert-xtime-lock-to-raw-seqlock.patch

Thomas Gleixner

unread,
Feb 17, 2010, 1:50:02 PM2/17/10
to
seqlock-create-raw-seqlock.patch

Thomas Gleixner

unread,
Feb 17, 2010, 1:50:01 PM2/17/10
to
seqlock-fixup-last-oldstyle-init-users.patch

Peter Zijlstra

unread,
Feb 18, 2010, 5:50:01 AM2/18/10
to
On Wed, 2010-02-17 at 18:47 +0000, Thomas Gleixner wrote:
>
> xtime_lock needs a raw_spinlock in preempt-rt. Convert it to
> raw_seqlock and fix up all users.
>
s/raw_spinlock/raw_seqlock/ ?

Maybe add an explanation on _why_ -rt needs this for the uninformed
amongst us.

-rt switches to sleeping spinlocks, but since the vdso is basically
userspace it cannot schedule, hence we need to keep using actual
spinlocks (this is also the reason the vdso things must not call into
lockdep)

Thomas Gleixner

unread,
Feb 18, 2010, 6:10:02 AM2/18/10
to
On Thu, 18 Feb 2010, Peter Zijlstra wrote:

> On Wed, 2010-02-17 at 18:47 +0000, Thomas Gleixner wrote:
> >
> > xtime_lock needs a raw_spinlock in preempt-rt. Convert it to
> > raw_seqlock and fix up all users.
> >
> s/raw_spinlock/raw_seqlock/ ?
>
> Maybe add an explanation on _why_ -rt needs this for the uninformed
> amongst us.
>
> -rt switches to sleeping spinlocks, but since the vdso is basically
> userspace it cannot schedule, hence we need to keep using actual
> spinlocks (this is also the reason the vdso things must not call into
> lockdep)

No, the read_seq side is not taking the lock. It's just the write side
which is taking the spinlock to serialize against other writers.

xtime_lock is write locked in the timer interrupt context and therefor
cannot take a sleeping spinlock.

Thanks,

tglx

0 new messages