[ofa-general] [PATCH] [WORKAROUND] CONFIG_PREEMPT_RT and ib_umad_close() issue

Daniel Walker dwalker at mvista.com
Mon Sep 17 10:07:56 PDT 2007


On Mon, 2007-09-17 at 08:56 -0700, Roland Dreier wrote:
> > When using OFED-1.2.5 based infiniband kernel modules on 2.6.22 based
>  > kernels with the Ingo Molnar CONFIG_PREEMPT_RT applied, then commands
>  > such as ibnetdiscvoer, smpquery, sminfo, etc. will hang.  The problem
>  > is with the downgrade_write() rw semaphore usage in the
>  > ib_umad_close() routine.
> 
> Can you give a few more details on how PREEMPT_RT changes locking
> rules (or just exposes existing bugs maybe?) so that the
> downgrade_write() causes the issue?  I would like to fix this cleanly
> but I don't really understand what the problem is.

the read/write semaphore functionality is basically reduced to just a
binary semaphore , i.e. one reader, or one writer . I think the BUG();
in downgrade_write() is likely part of a removal plan for
downgrade_write() (that's just a guess tho)

Daniel




More information about the general mailing list