Patch for nvidia-driver on current (panic: spin locks can only use msleep_spin)

Ben Kaduk minimarmot at gmail.com
Tue Oct 2 14:34:10 PDT 2007


Hi Craig,

Thanks for tracking this down.
However, mailman likes to eat non-MIME-text attachments.

Thanks,

Ben Kaduk

On 10/2/07, Craig Boston <cb at severious.net> wrote:
> Hi all, I did some more investigating and found what was causing the
> nvidia driver to occasionally panic on my machine.  It calls cv_wait(9)
> using a spin mutex, which according to the man page is a no-no.
>
> I simply changed the os_*_sema interfaces to use a standard mutex
> instead.  Tried running a bunch of glxgears and xscreensaver GL demos in
> parallel and haven't been able to reproduce a panic since.  As a bonus,
> the 5 second pause I would sometimes get when a GL-based xscreensaver
> process terminates seems to be gone as well.
>
> There doesn't appear to be any documentation that I could find as to
> what contexts those functions may be called from.  I'm not a locking
> guru, so I can't say for certain why a spin mutex was being used.  Wild
> guess: an artifact from the 4.x or 5.x code that may be obsoleted by
> adaptive mutexes.
>
> Patch is attached; cc danfe@ in case others report this problem to him.
>
> Craig
>
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>


More information about the freebsd-current mailing list