A question on the function clean_bdev_bh_alias

Larry losemyheaven at foxmail.com
Sat Aug 11 10:19:37 EDT 2018


Really appreciate your help.


Thanks
Larry




------------------ Original ------------------
From:  "valdis.kletnieks"<valdis.kletnieks at vt.edu>;
Date:  Sat, Aug 11, 2018 00:00 AM
To:  "Larry"<losemyheaven at foxmail.com>;
Cc:  "kernelnewbies"<kernelnewbies at kernelnewbies.org>; 
Subject:  Re: A question on the function clean_bdev_bh_alias



On Fri, 10 Aug 2018 22:48:43 +0800, "Larry" said:

> Does it intend to remove existent pages in block device's page cache
> if some new page cache of a vfs file was created whose block number
> range has overlaps with its block device page cache?

That's a situation you *really* hope doesn't arise.

Consider if you have (for example) an ext4 filesystem on /dev/sda4 mounted on
/foobar.

For there to be page cache for the ext4 filesystem and also page cache for
the block device, that means that something is writing to a file on /foobar
while something else is writing directly to /dev/sda4.

That's a really good way to corrupt the filesystem (and is why it's a Really
Bad Idea to fsck a mounted filesystem).  And no, merely trimming cache
pages that overlap doesn't even come *close* to fixing the problem...
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20180811/58ad212b/attachment.html>


More information about the Kernelnewbies mailing list