[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20110107020325.GA18808@void.printf.net>
Date: Fri, 7 Jan 2011 02:03:26 +0000
From: Chris Ball <cjb@...top.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Nick Piggin <npiggin@...il.com>,
Jongman Heo <jongman.heo@...il.com>,
linux-kernel@...r.kernel.org,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [announce] vfs-scale git tree update
On Thu, Jan 06, 2011 at 05:41:39PM -0800, Linus Torvalds wrote:
> I'm wondering if this is a previously existing race condition leading
> to a deadlock. One that previously would have been serialized enough
> by the dcache lock that you'd never have that happen.
>
> It might be interesting to re-run it with mutex debugging and lockdep
> enabled, to see if that reports anything. Although it probably won't,
> because it's not about a plain lock dependency, but ends up being
> deadlocked on the uevent being finished (but you have the modprobe and
> the request_firmware ones waiting on each other).
>
> I dunno. I haven't really though that fully through. But we've had
> cases roughly like that before, and yes, they can be exposed by some
> independent serialization going away - long-standing potential bugs,
> that simply never happened in practice before.
Yeah, that sounds right:
arch/x86/kernel/microcode_core.c:
mutex_lock(µcode_mutex);
...
error = sysdev_driver_register(&cpu_sysdev_class, &mc_sysdev_driver);
(which calls request_microcode_fw() indirectly, and goes out to userspace.)
I'm willing to have a try at making this lockless if no-one beats me to it,
although it would need to wait until I've got the MMC merge out of the way.
--
Chris Ball <cjb@...top.org> <http://printf.net/>
One Laptop Per Child
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists