Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Apr 2004 22:13:17 -0400 (EDT)
From:      Robert Watson <rwatson@FreeBSD.org>
To:        Brian Fundakowski Feldman <green@FreeBSD.org>
Cc:        Pawel Jakub Dawidek <pjd@FreeBSD.org>
Subject:   Re: LOR: /sys/ufs/ffs/ffs_snapshot.c:1893 /sys/vm/vm_map.c:2206 
Message-ID:  <Pine.NEB.3.96L.1040430221157.63854C-100000@fledge.watson.org>
In-Reply-To: <200404301437.i3UEbnvM076898@green.homeunix.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On Fri, 30 Apr 2004, Brian Fundakowski Feldman wrote:

> I haven't seen it myself, but it seems like it's only going to happen
> sometimes (when a full page is freed).  There's really no technical
> reason you'd ever want to do a free(9) with locks held, so I suggest
> fixing it in the straightforward way. 

While I sympathize with this point, I don't think it's realistic to assert
that free() will never be called while helding a lock.  Once the mbuf
allocator backs into regular malloc() and free(); the network stack relies
on being able to perform wait-free allocation and free while locks are
held, since it uses locks as a light-weight form of reference-counting.

Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
robert@fledge.watson.org      Senior Research Scientist, McAfee Research




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.NEB.3.96L.1040430221157.63854C-100000>