diff options
Diffstat (limited to 'Documentation/filesystems/porting')
-rw-r--r-- | Documentation/filesystems/porting | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Documentation/filesystems/porting b/Documentation/filesystems/porting index 6b96773e27cb..7f8861d341ea 100644 --- a/Documentation/filesystems/porting +++ b/Documentation/filesystems/porting | |||
@@ -421,3 +421,10 @@ data and there is a virtual hole at the end of the file. So if the provided | |||
421 | offset is less than i_size and SEEK_DATA is specified, return the same offset. | 421 | offset is less than i_size and SEEK_DATA is specified, return the same offset. |
422 | If the above is true for the offset and you are given SEEK_HOLE, return the end | 422 | If the above is true for the offset and you are given SEEK_HOLE, return the end |
423 | of the file. If the offset is i_size or greater return -ENXIO in either case. | 423 | of the file. If the offset is i_size or greater return -ENXIO in either case. |
424 | |||
425 | [mandatory] | ||
426 | If you have your own ->fsync() you must make sure to call | ||
427 | filemap_write_and_wait_range() so that all dirty pages are synced out properly. | ||
428 | You must also keep in mind that ->fsync() is not called with i_mutex held | ||
429 | anymore, so if you require i_mutex locking you must make sure to take it and | ||
430 | release it yourself. | ||