Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 2 Oct 2007 17:09:15 -0400
From:      "Ben Kaduk" <minimarmot@gmail.com>
To:        "Craig Boston" <cb@severious.net>, current@freebsd.org, danfe@freebsd.org
Subject:   Re: Patch for nvidia-driver on current (panic: spin locks can only use msleep_spin)
Message-ID:  <47d0403c0710021409na4e8ba2p2005a11957bf4d28@mail.gmail.com>
In-Reply-To: <20071002204850.GA33227@nowhere>
References:  <20070921202523.GB4044@nowhere> <20071002204850.GA33227@nowhere>

next in thread | previous in thread | raw e-mail | index | archive | help
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@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@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47d0403c0710021409na4e8ba2p2005a11957bf4d28>