<div>Really appreciate your help.</div><div><br></div><div>Thanks</div><div>Larry</div><div><div><br></div><div><br></div><div style="font-size: 12px;font-family: Arial Narrow;padding:2px 0 2px 0;">------------------ Original ------------------</div><div style="font-size: 12px;background:#efefef;padding:8px;"><div><b>From: </b> "valdis.kletnieks"<valdis.kletnieks@vt.edu>;</div><div><b>Date: </b> Sat, Aug 11, 2018 00:00 AM</div><div><b>To: </b> "Larry"<losemyheaven@foxmail.com>;<wbr></div><div><b>Cc: </b> "kernelnewbies"<kernelnewbies@kernelnewbies.org>; <wbr></div><div><b>Subject: </b> Re: A question on the function clean_bdev_bh_alias</div></div><div><br></div>On Fri, 10 Aug 2018 22:48:43 +0800, "Larry" said:<br><br>> Does it intend to remove existent pages in block device's page cache<br>> if some new page cache of a vfs file was created whose block number<br>> range has overlaps with its block device page cache?<br><br>That's a situation you *really* hope doesn't arise.<br><br>Consider if you have (for example) an ext4 filesystem on /dev/sda4 mounted on<br>/foobar.<br><br>For there to be page cache for the ext4 filesystem and also page cache for<br>the block device, that means that something is writing to a file on /foobar<br>while something else is writing directly to /dev/sda4.<br><br>That's a really good way to corrupt the filesystem (and is why it's a Really<br>Bad Idea to fsck a mounted filesystem).  And no, merely trimming cache<br>pages that overlap doesn't even come *close* to fixing the problem...<br><br><br></div>