Re: Block device files and the page cache

From: Alan Stern
Date: Wed Mar 17 2010 - 11:30:24 EST


On Wed, 17 Mar 2010, Jens Axboe wrote:

> On Tue, Mar 16 2010, Alan Stern wrote:
> > Jens and Al:
> >
> > Simple testing seems to show that when a program closes a file
> > descriptor for a block device file, the release method in the device
> > driver's block_device_operations structure doesn't get called (and the
> > close(2) system call doesn't return) until all the dirty pages for that
> > device have been written out.
> >
> > Can anyone confirm that this always happens? Where in the kernel
> > source is this handled?
>
> Alan, see fs/block_dev.c:__blkdev_put(). The last put of the device will
> sync the device before calling fops->release().

Ah, that's where it is! Thanks very much.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/