From: Matthew Wilcox <matthew@wil.cx>
To: David Miller <davem@davemloft.net>
Cc: linux-arch@vger.kernel.org, rmk@arm.linux.org.uk,
takata@linux-m32r.org, lethal@linux-sh.org,
kkojima@rr.iij4u.or.jp, linuxsh-dev@lists.sourceforge.net,
wli@holomorphy.com, sparclinux@vger.kernel.org
Subject: Re: generic__raw_read_trylock Considered Harmful
Date: Wed, 20 Sep 2006 09:33:44 -0600 [thread overview]
Message-ID: <20060920153344.GI2585@parisc-linux.org> (raw)
In-Reply-To: <20060919.155317.22126004.davem@davemloft.net>
On Tue, Sep 19, 2006 at 03:53:17PM -0700, David Miller wrote:
> From: Matthew Wilcox <matthew@wil.cx>
> > NOTE to architecture maintainers: generic_raw_read_trylock() is
> > completely unfit for use and will cause lockups if used in interrupt
> > context.
>
> I was about to go an fix SPARC but then looked in the tree
> for actual users, and I see one, and only one, in the lockdep
> code which tries to grab the tasklist_lock.
>
> That's it (well.. there's one strange IA64 specific case in the MCA
> code too).
>
> You say you were fixing up PARISC and actually hit this problem, was
> it exactly this lockdep case? I really doubt it...
That's not quite what I said; I was chasing some problems on parisc
where we were getting read_lock deadlocks, and spotted this problem.
It's not beyond the bounds of possibility that we'll have a real user
for this function in the future.
The real bug was almost certainly elsewhere:
http://git.parisc-linux.org/?p=linux-2.6.git;a=commit;h=513b38677e9bb51d32f4cb401105bf828dfcd685
http://git.parisc-linux.org/?p=linux-2.6.git;a=commit;h=93d8d8dff74923dc9eb511c96ee3ccb918666049
Essentially, a fix for one rather subtle bug introduced a somewhat less
subtle one (which nevertheless went unfound for, er, 11 months ;-)
WARNING: multiple messages have this Message-ID (diff)
From: Matthew Wilcox <matthew@wil.cx>
To: David Miller <davem@davemloft.net>
Cc: linux-arch@vger.kernel.org, rmk@arm.linux.org.uk,
takata@linux-m32r.org, lethal@linux-sh.org,
kkojima@rr.iij4u.or.jp, linuxsh-dev@lists.sourceforge.net,
wli@holomorphy.com, sparclinux@vger.kernel.org
Subject: Re: generic__raw_read_trylock Considered Harmful
Date: Wed, 20 Sep 2006 15:33:44 +0000 [thread overview]
Message-ID: <20060920153344.GI2585@parisc-linux.org> (raw)
In-Reply-To: <20060919.155317.22126004.davem@davemloft.net>
On Tue, Sep 19, 2006 at 03:53:17PM -0700, David Miller wrote:
> From: Matthew Wilcox <matthew@wil.cx>
> > NOTE to architecture maintainers: generic_raw_read_trylock() is
> > completely unfit for use and will cause lockups if used in interrupt
> > context.
>
> I was about to go an fix SPARC but then looked in the tree
> for actual users, and I see one, and only one, in the lockdep
> code which tries to grab the tasklist_lock.
>
> That's it (well.. there's one strange IA64 specific case in the MCA
> code too).
>
> You say you were fixing up PARISC and actually hit this problem, was
> it exactly this lockdep case? I really doubt it...
That's not quite what I said; I was chasing some problems on parisc
where we were getting read_lock deadlocks, and spotted this problem.
It's not beyond the bounds of possibility that we'll have a real user
for this function in the future.
The real bug was almost certainly elsewhere:
http://git.parisc-linux.org/?p=linux-2.6.git;a=commit;hQ3b38677e9bb51d32f4cb401105bf828dfcd685
http://git.parisc-linux.org/?p=linux-2.6.git;a=commit;h“d8d8dff74923dc9eb511c96ee3ccb918666049
Essentially, a fix for one rather subtle bug introduced a somewhat less
subtle one (which nevertheless went unfound for, er, 11 months ;-)
next prev parent reply other threads:[~2006-09-20 15:33 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-08-31 13:42 generic__raw_read_trylock Considered Harmful Matthew Wilcox
2006-08-31 13:42 ` Matthew Wilcox
2006-08-31 14:10 ` Russell King
2006-08-31 14:10 ` Russell King
2006-09-19 22:53 ` David Miller
2006-09-19 22:53 ` David Miller
2006-09-20 15:33 ` Matthew Wilcox [this message]
2006-09-20 15:33 ` Matthew Wilcox
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060920153344.GI2585@parisc-linux.org \
--to=matthew@wil.cx \
--cc=davem@davemloft.net \
--cc=kkojima@rr.iij4u.or.jp \
--cc=lethal@linux-sh.org \
--cc=linux-arch@vger.kernel.org \
--cc=linuxsh-dev@lists.sourceforge.net \
--cc=rmk@arm.linux.org.uk \
--cc=sparclinux@vger.kernel.org \
--cc=takata@linux-m32r.org \
--cc=wli@holomorphy.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.