Messages in this thread | | | Subject | Re: Question regarding concurrent accesses through block device and fs | From | Francis Moreau <> | Date | Sun, 01 Mar 2009 15:42:55 +0100 |
| |
[ Sorry for being long to answer but I was off, I'm slow and there are a lot of complex code to dig out ! ]
Nick Piggin <nickpiggin@yahoo.com.au> writes:
> On Saturday 21 February 2009 01:10:24 Francis Moreau wrote:
[...]
>> - looking at unmap_underlying_metadata(), there's no code to deal with >> meta data buffers. It gets the buffer and unmap it whatever the type of >> data it contains. > > That's why I say it only really works for buffer cache used by the same > filesystem that is now known to be unused. >
hum, I still don't know what you mean by this, sorry to be slow.
[...]
>> What am I missing ? > > That we might complete the write of the new buffer before the > old buffer is finished writing out?
Ah yes actually I realize that I don't know where and when the inode blocks are effectively written to the disk !
It seems that write_inode(), called after data are commited to the disk, only marks the inode buffers as dirty but it performs no IO (at least it looks so for ext2 when its 'do_sync' parameter is 0 which is the case when this method is called by write_inode()).
Could you enlight me one more time ?
Thanks -- Francis
| |