From mboxrd@z Thu Jan 1 00:00:00 1970 From: Fabio Erculiani Date: Wed, 25 May 2011 18:52:18 +0000 Subject: Re: [PATCH] fbmem: fix race condition between register_framebuffer() Message-Id: List-Id: References: <1306266871-12464-1-git-send-email-lxnay@sabayon.org> <20110524224545.08c53b1d@neptune.home> <20110525181917.12cf97b8@neptune.home> <20110525204648.58983270@neptune.home> In-Reply-To: <20110525204648.58983270@neptune.home> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable To: =?UTF-8?Q?Bruno_Pr=C3=A9mont?= Cc: linux-fbdev@vger.kernel.org, lethal@linux-sh.org, linux-kernel@vger.kernel.org On Wed, May 25, 2011 at 8:46 PM, Bruno Pr=C3=A9mont wrote: > On Wed, 25 May 2011 Fabio Erculiani wrote: >> I'm not a fbdev expert. So I leave the real fix to real men ( ;-) ). >> It is causing deadlock during boot, so I would consider it quite critica= l. >> Users using any fb driver will get into troubles. >> The workaround is to boot with vga=3Dnormal. > > What is your system doing during boot? I've never seen it here but maybe > my boot sequence is too simple. I'm using vesafb and vgay1. It is quite simple to reproduce. Also see: http://bugs.gentoo.org/show_bug.cgi?id68109 > > Could you tell if it deadlocks before init gets started or afterwards, > which fb drivers (and extra kernel patches if any) are in use. Exactly when register_framebuffer() is called, in my case, early in the boot phase, before init. > > If you have the complete backtrace of the deadlocked processes it would > help getting a better idea of what is affected and how (and why just the > framebuffer's lock is not causing trouble with earlier kernel versions). Because that code got a HUGE rewrite in the latest cycle, where registration_lock has been introduce. Just make a diff between 2.6.38 and 2.6.39. It will be easy to see that SO MANY lines have changed ;-) Anyway, since I'm out of office these days, I won't be able to send you the traceback this week, but since so many people have run into it, I guess it's fairly simple to reproduce. > > Bruno > > >> Cheers, > --=20 Fabio Erculiani