Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Feb 2007 14:29:10 +0000 (GMT)
From:      Robert Watson <rwatson@FreeBSD.org>
To:        Josef Karthauser <joe@FreeBSD.org>
Cc:        hackers@freebsd.org, Jeremie Le Hen <jeremie@le-hen.org>, fs@freebsd.org
Subject:   Re: nullfs and named pipes.
Message-ID:  <20070219142816.N80197@fledge.watson.org>
In-Reply-To: <20070219140721.S80197@fledge.watson.org>
References:  <20070204023711.GA3393@genius.tao.org.uk> <20070215135750.GR64768@obiwan.tataz.chchile.org> <20070215152259.GA2950@genius.tao.org.uk> <20070215153135.GI39168@deviant.kiev.zoral.com.ua> <20070216125007.D38234@fledge.watson.org> <20070216143656.GM39168@deviant.kiev.zoral.com.ua> <20070218224158.GA1297@genius.tao.org.uk> <20070219135921.E80197@fledge.watson.org> <20070219140721.S80197@fledge.watson.org>

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

On Mon, 19 Feb 2007, Robert Watson wrote:

> On Mon, 19 Feb 2007, Robert Watson wrote:
>
>> On Sun, 18 Feb 2007, Josef Karthauser wrote:
>> 
>> Well, the worry would be that you would be replacing a clean error on 
>> failure with an occasional panic, the normal symptom of a race condition.
>> 
>> I think I'm alright with the VFIFO case above, but I'm quite uncomfortable 
>> with the VSOCK case.  In particular, I suspect that if the socket is 
>> closed, v_un will be reset in the lower layer, but continue to be a stale 
>> pointer in the upper layer, leading to accessing free'd or re-allocated 
>> kernel memory resulting in much badness.  I've noticed tested this, but you 
>> might give it a try and see what happens.
>
> Bad typing day.  Should read "not tested this".  In any case, you get the 
> idea: the problem here is a potential coherency issue on contents of v_un 
> between the two file system layers.

For some reason I was thinking of v_fifoinfo as being stable after it is 
initialized, but in fact, it is not, as it can be free'd later.  Also, the 
layers could become out of sync following a reboot.  So in conclusion, I think 
the fifo part of the patch also suffers from the same problem.

Robert N M Watson
Computer Laboratory
University of Cambridge



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