Messages in this thread |  | | Date | Thu, 20 Sep 2001 10:38:05 -0400 | From | Chris Mason <> | Subject | Re: Linux 2.4.10-pre11 |
| |
On Thursday, September 20, 2001 09:56:22 AM -0400 Alexander Viro <viro@math.psu.edu> wrote:
> Had you actually read the fsync_dev()? Let me make it clear: you are > flushing _buffer_ cache upon blkdev_put(bdev, BDEV_FILE). It was > the right thing when file access went through buffer cache. It's > blatantly wrong with page cache.
Well, fsync_dev will flush anything on the dirty list. Since blkdev_commit_write puts things on the dirty list, andrea's current code will flush changes through the page cache.
The biggest exception is blkdev_writepage directly submits the io instead of marking the buffers dirty. This means the buffers won't be on the locked/dirty list, and they won't get waited on. Similar problem for direct io.
The fix shouldn't be too bad, I'll code it up...
-chris
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |