On Wed, Feb 24 2010, Alan Stern wrote: > On Tue, 23 Feb 2010, Jens Axboe wrote: > > > > That's not what I meant. Dirty buffers on a filesystem make no > > > difference because they always get written out when the filesystem is > > > unmounted. The device file remains open as long as the filesystem > > > is mounted, which would prevent the device from being powered down. > > > > > > I was asking about dirty buffers on a block device that isn't holding a > > > filesystem -- where the raw device is being used directly for I/O. > > > > OK, so just specifically the page cache of the device. Is that really > > enough of an issue to warrant special checking? I mean, what normal > > setup would even use buffer raw device access? > > Doesn't fdisk use it? There might be other applications too. It does, but that sound be a very short lived issue (since the dirty buffers will get flushed). > > But if you wanted, I guess the only way would be to lookup > > dirty/writeback pages on the bdev inode mapping. For that you'd need the > > bdev, not the gendisk or the queue though. > > I can get the bdev from the gendisk by calling bdget_disk() with a > partition number of 0, right? What would the next step be? Would this > check for dirty pages associated with any of the partitions or would it > only look at pages associated with the inode for the entire disk? It would cover the entire bdev. -- Jens Axboe _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm