Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 Oct 2004 10:38:07 +0200
From:      "Poul-Henning Kamp" <phk@phk.freebsd.dk>
To:        Don Lewis <truckman@FreeBSD.org>
Cc:        cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/kern vfs_subr.c src/sys/sys buf.h bufobj.h vnode.h 
Message-ID:  <61934.1098866287@critter.freebsd.dk>
In-Reply-To: Your message of "Wed, 27 Oct 2004 01:24:52 PDT." <200410270824.i9R8OqGc019841@gw.catspoiler.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
In message <200410270824.i9R8OqGc019841@gw.catspoiler.org>, Don Lewis writes:
>On 27 Oct, Poul-Henning Kamp wrote:
>> phk         2004-10-27 08:05:03 UTC
>> 
>>   FreeBSD src repository
>> 
>>   Modified files:
>>     sys/kern             vfs_subr.c 
>>     sys/sys              buf.h bufobj.h vnode.h 
>>   Log:
>>   Move the syncer linkage from vnode to bufobj.
>>   
>>   This is not quite a perfect separation: the syncer still think it knows
>>   that everything is a vnode.
>
>This change strikes me as wrong.  The syncer has to handle things like
>inode timestamps (utimes(2)) and fifos, which I wouldn't expect to have
>bufobjs.

The syncers job is to push dirty buffers onto disk.  In the process it
will need to call back into whoever owns the buffer so they can do their
private housekeeping as necessary.

So the syncer doesn't deal with timestamps, the filesystems do.

The current code does not quite reflect that, I need to add a specific
method to the bufobj method vector for this purpose.

I guess the easiest way to spot where these kinds of things happen
is where you still see b_vp appear.

-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk@FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.



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