Re: 2.6.18-git7 freezes solid on boot

From: Alessandro Suardi
Date: Thu Sep 28 2006 - 05:40:44 EST

On 9/27/06, Andrew Morton <akpm@xxxxxxxx> wrote:
On Wed, 27 Sep 2006 12:31:52 +0000
"Alessandro Suardi" <alessandro.suardi@xxxxxxxxx> wrote:

> Dell D610 running FC5, works fine with -git5, locks up
> in less than a second after selecting the GRUB entry
> for -git7, with NumLock on and nothing else working,
> SysRq included, except for the power switch (no need
> to keep it down for 10 secs though - it powers off
> right away).
> Since bzdiffing patch-2.6.18-git5 and -git7 shows there
> are framebuffer changes, I'm wondering whether anyone
> had already stumbled into similar issues.
> Video card is an Intel i915GM.

You probably want this..

From: Andi Kleen <ak@xxxxxxx>

i386: Use early clobbers for semaphores now

The new code does clobber the result early, so make sure to tell
gcc to not put it into the same register as a input argument

Signed-off-by: Andi Kleen <ak@xxxxxxx>

Index: linux/include/asm-i386/semaphore.h
--- linux.orig/include/asm-i386/semaphore.h
+++ linux/include/asm-i386/semaphore.h
@@ -126,7 +126,7 @@ static inline int down_interruptible(str
"lea %1,%%eax\n\t"
"call __down_failed_interruptible\n"
- :"=a" (result), "+m" (sem->count)
+ :"=&a" (result), "+m" (sem->count)
return result;
@@ -148,7 +148,7 @@ static inline int down_trylock(struct se
"lea %1,%%eax\n\t"
"call __down_failed_trylock\n\t"
- :"=a" (result), "+m" (sem->count)
+ :"=&a" (result), "+m" (sem->count)
return result;

Indeed, this brought -git7 back to life for my laptop.

Thanks Andrew ! (now going to build -git9...)


"Well a man has two reasons for things that he does
the first one is pride and the second one is love
all understandings must come by this way"

(Husker Du, 'She Floated Away')
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at