Messages in this thread | | | Subject | Re: [PATCH RT] seqlock/rt: Prevent livelocks with seqlocks in RT | From | Steven Rostedt <> | Date | Tue, 06 Mar 2012 07:47:28 -0500 |
| |
On Tue, 2012-03-06 at 09:18 +0100, Thomas Gleixner wrote:
> > Because read_seqlocks are used in the VDSO area, a raw_read_seqcount_begin() > > was created to allow userspace tasks to access read_seqcount(). > > As the grabbing of the write_lock() is not allowed in VDSO, nor > > is even referencing it. > > This is completely bogus. The VDSO update write side runs with > interrupts disabled, so it cannot be preempted at all. > > > Note, a live lock can still happen if the userspace task that > > does the read_seqlock is of higher priority than a user doing > > the write_lock, so userspace needs to be careful. > > What the hell are you smoking?
Cherries.
I forgot I still had that in my changelog. I wrote this code before I had your changes. I noticed later that the vdso seqlocks were raw spinlocks and shouldn't be an issue. As you told me that you had this fixed, I never bothered to change the log.
Then last night when I hit this bug, I simply cherry picked this fixed and posted it.
-- Steve
| |