tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: ffs fsync patch - block devices and wapbl
hi,
> On Tue, Apr 19, 2011 at 11:44:16PM +0000, YAMAMOTO Takashi wrote:
>> hi,
>>
>> > Block devices have two different properties. First they are device nodes
>> > having access times etc. and reside on a file system. Second they may have
>> > a file system mounted on them. With WAPBL it is important to handle these
>> > properties separately.
>> >
>> > Relevant PRs are 41189, 41192, 41977, 42149, 42551, 44377 and 44746 at
>> > least.
>> >
>> > The attached diff should solve these problems by:
>> >
>> > - Replace the ugly sync loop in ffs_full_fsync() with vflushbuf(). This
>> > loop is a left-over of softdeps and not needed anymore.
>> >
>> > - Merge ffs_vfs_fsync() with ffs_full_fsync() so we have only on operation
>> > whether the request comes from ffs or from other file system via
>> > VFS_FSYNC().
>> >
>> > - Take care which mount to test for WAPBL -- v_mount to update the times
>> > and
>> > wapbl_vptomp() to update the dirty blocks. Never update times when
>> > called
>> > by VFS_FSYNC().
>> >
>> >
>> > Comments or objections?
>>
>> thanks for taking a look on this.
>>
>> ffs_fsync should not need to know if the filesystem used on its VBLK node is
>> ffs or not. it should just call VFS_FSYNC as the other filesystems
>> (ie. spec_fsync) do. the FSYNC_VFS flag should go away.
>
> You mean like the attached diff? All we loose is the ctime update.
sure.
i think you can keep the timestamp update by having ffs_spec_fsync which
calls (or does the equivalent of) spec_fsync and update the timestamp.
YAMAMOTO Takashi
>
> --
> Juergen Hannken-Illjes - hannken%eis.cs.tu-bs.de@localhost - TU Braunschweig
> (Germany)
Home |
Main Index |
Thread Index |
Old Index