Phillip Susi <phill@xxxxxxxxxxxx> writes: > The block layer also would need patched to avoid turning a barrier into > a FLUSH CACHE if the disk is runtime suspended, and also the sync() > path. Is that even sensible to do? It is true that for all block > devices, their caches do not need flushed while they are runtime > suspended? It seems like it may be, but I'm not certain. I was trying to do this. I think the right place is in blkdev_issue_flush(), but apparently bdev->bd_device is not the same struct device that gets suspended. I can't seem to work out where the right struct device is to pass to pm_runtime_suspended() and skip the flush operation.