Messages in this thread | | | Date | Thu, 27 Nov 2014 01:50:54 -0800 | From | Andrew Morton <> | Subject | Re: [rfc patch] mm: protect set_page_dirty() from ongoing truncation |
| |
On Thu, 27 Nov 2014 10:40:06 +0100 Jan Kara <jack@suse.cz> wrote:
> > so we no longer require that the address_space be stabilized after > > lock_page(). Of course something needs to protect the bdi and I'm not > > sure what that is, but we're talking about umount and that quiesces and > > evicts lots of things before proceeding, so surely there's something in > > there which will save us ;) > In do_wp_page() the process doing the fault and ending in > balance_dirty_pages() has to have the page mapped, thus it has to have the > file open => no umount.
Actually, umount isn't enough to kill the backing_dev_info. It's an attribute of the device itself (for blockdevs it's a field in request_queue) so I assume it will be stable until device hot-unplug, losetup -d, rmmod, etc. If the backing_dev can go away in the middle of a pagefault against that device then we have bigger problems ;)
| |