Subject: Re: CVS commit: src/sys/fs/puffs
To: None <source-changes@NetBSD.org>
From: David Young <dyoung@pobox.com>
List: source-changes
Date: 05/01/2007 13:46:45
On Tue, May 01, 2007 at 12:18:40PM +0000, Antti Kantee wrote:
>
> Module Name: src
> Committed By: pooka
> Date: Tue May 1 12:18:40 UTC 2007
>
> Modified Files:
> src/sys/fs/puffs: puffs_msgif.c puffs_subr.c puffs_sys.h
> puffs_transport.c puffs_vfsops.c
>
> Log Message:
> Fix a problem introduced when I converted puffs to use newlock2:
> when unmounting the file system in case of a certain timing (and
> possibly some other conditions), a thread would wait on a condition
> variable, while another thread broadcast the cv and immediately
> proceeded to destroy it. The result was a system frozen completely
> solid shorly after the process waiting for the cv woke up. So
> introduce reference counting to synchronize destruction of the
> resources in unmount.
>
> I was able to repeat the problem only on my laptop in some special
> cases, so I do not know how common it was. Ironically, killing
This bug may have affected me on NetBSD/evbmips the other day.
Dave
--
David Young OJC Technologies
dyoung@ojctech.com Urbana, IL * (217) 278-3933