cvs commit: src/sys/kern vfs_bio.c
Sam Leffler
sam at errno.com
Thu Sep 29 08:38:06 PDT 2005
Peter Edwards wrote:
> On 9/29/05, Pawel Jakub Dawidek <pjd at freebsd.org> wrote:
>
>>On Thu, Sep 29, 2005 at 10:37:20AM +0000, Peter Edwards wrote:
>>+> peadar 2005-09-29 10:37:20 UTC
>>+>
>>+> FreeBSD src repository
>>+>
>>+> Modified files:
>>+> sys/kern vfs_bio.c
>>+> Log:
>>+> Close a race in biodone(), whereby the bio_done field of the passed
>>+> bio may have been freed and reassigned by the wakeup before being
>>+> tested after releasing the bdonelock.
>>+>
>>+> There's a non-zero chance this is the cause of a few of the crashes
>>+> knocking around with biodone() sitting in the stack backtrace.
>>
>>Should this fix the panic on boot in vmware?
>>
>
>
> That one falls under the "non-zero chance" mentioned above :-) The
> problem was very intermittent for me, and wanting the laptop not to
> fall over seemed to be a prerequisite to reproducing the panic, so I
> can't positively say it's fixed the problem yet.
>
> If you have a reliable way of reproducing the panic, can you try out
> the patch and let me know?
vmware is great for finding races like these because of the way it
handles concurrency. I can remember finding many problems like this in
"client operating systems" when I worked on it.
Sam
More information about the cvs-src
mailing list