Re: spinlocks() are severely broken in 2.2.X and 2.4.X for modules

From: Zdenek Kabelac (kabi@fi.muni.cz)
Date: Mon Jul 03 2000 - 09:09:38 EST


"Jeff V. Merkey" wrote:
>
> > and I have discovered something rather shocking, which is that the
> spinlock code in Linux is severely broken, and this is not due to a
> coding error, but a problem with the GCC compiler apparently generating
> garbage. There's also several issues with using "lock bts" instead of
> "xchg eax, 1", which is the recommended method for implementing
> spinlocks() on IA32 intel systems.
>
> What's really scary here is that a great deal of new code has been
> written that depends on this spinlock code, and once the spinlock code
> gets fixed properly, we may see tons of deadlocks and lockups all over
> the place since this code has been there for a very long time.
 

If you are correct here, it might explain why I'm getting rentering
error
into irq_inter routine with my SMP box and NFS.
(I've placed there a small trap which catch this problem)

-- 
             There are three types of people in the world:
               those who can count, and those who can't.
  Zdenek Kabelac  http://i.am/kabi/ kabi@i.am {debian.org; fi.muni.cz}

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Jul 07 2000 - 21:00:12 EST