[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <E807E903FE6CBE4D95E420FBFCC273B827526E@nasanexd01h.na.qualcomm.com>
Date: Wed, 20 Feb 2013 11:24:36 +0000
From: "Bu, Yitian" <ybu@....qualcomm.com>
To: Peter Zijlstra <a.p.zijlstra@...llo.nl>
CC: "tglx@...utronix.de" <tglx@...utronix.de>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"mingo@...nel.org" <mingo@...nel.org>
Subject: RE: [PATCH] Fix rq->lock vs logbuf_lock unlock race
> Unfortunately that's not quite possible, rq->lock is really out of bounds. At
> one point I tried 'fixing' this but there's a whole bunch of nasty that's not
> going to go away.
>
> I've since forgotten most of the details, but aside from logbuf problems
> there's a whole host of issues with the console drivers themselves as well.
>
> If you really want to do this, use early_printk.
Hi Peter:
The patch 0b5e1c5255e("printk: Release console_sem after logbuf_lock" )
is as below:
console_locked = 0;
- up(&console_sem);
+ wake = 1;
retval = 0;
}
}
printk_cpu = UINT_MAX;
spin_unlock(&logbuf_lock);
+ if (wake)
+ up(&console_sem);
return retval;
the patch 07354eb1a74d1("locking, printk: Annotate logbuf_lock as raw ")
is as below:
printk_cpu = UINT_MAX;
- spin_unlock(&logbuf_lock);
if (wake)
up(&console_sem);
+ raw_spin_unlock(&logbuf_lock);
return retval;
}
Note that the purpose of patch 07354eb1a74d1 is to use raw_spin_unlock
instead of spin_unlock, it is not supposed to change any lock sequences.
What I do is to revert this change to 0b5e1c5255e, and it is nothing to do with
how people use printk. It is just to recover a merge mistake.
Powered by blists - more mailing lists