diff options
Diffstat (limited to 'fs/umsdos')
-rw-r--r-- | fs/umsdos/dir.c | 5 | ||||
-rw-r--r-- | fs/umsdos/file.c | 16 | ||||
-rw-r--r-- | fs/umsdos/rdir.c | 2 | ||||
-rw-r--r-- | fs/umsdos/symlink.c | 5 |
4 files changed, 18 insertions, 10 deletions
diff --git a/fs/umsdos/dir.c b/fs/umsdos/dir.c index 0f26103c4..34fe302d7 100644 --- a/fs/umsdos/dir.c +++ b/fs/umsdos/dir.c @@ -832,9 +832,10 @@ struct inode_operations umsdos_dir_inode_operations = UMSDOS_rename, /* rename */ NULL, /* readlink */ NULL, /* followlink */ - generic_readpage, /* readpage */ + fat_bmap, /* get_block */ + block_read_full_page, /* readpage */ NULL, /* writepage */ - fat_bmap, /* bmap */ + NULL, /* flushpage */ NULL, /* truncate */ NULL, /* permission */ NULL, /* smap */ diff --git a/fs/umsdos/file.c b/fs/umsdos/file.c index 339d82801..d3d8a74e6 100644 --- a/fs/umsdos/file.c +++ b/fs/umsdos/file.c @@ -99,12 +99,14 @@ struct inode_operations umsdos_file_inode_operations = NULL, /* rename */ NULL, /* readlink */ NULL, /* follow_link */ - generic_readpage, /* readpage */ + fat_bmap, /* get_block */ + block_read_full_page, /* readpage */ NULL, /* writepage */ - fat_bmap, /* bmap */ + NULL, /* flushpage */ UMSDOS_truncate, /* truncate */ NULL, /* permission */ - fat_smap /* smap */ + fat_smap, /* smap */ + NULL /* revalidate */ }; /* For other with larger and unaligned file system */ @@ -137,12 +139,14 @@ struct inode_operations umsdos_file_inode_operations_no_bmap = NULL, /* rename */ NULL, /* readlink */ NULL, /* follow link */ + NULL, /* get_block */ NULL, /* readpage */ NULL, /* writepage */ - NULL, /* bmap */ + NULL, /* flushpage */ UMSDOS_truncate, /* truncate */ NULL, /* permission */ NULL, /* smap */ + NULL /* revalidate */ }; /* For other with larger and unaligned file system with readpage */ @@ -175,10 +179,12 @@ struct inode_operations umsdos_file_inode_operations_readpage = NULL, /* rename */ NULL, /* readlink */ NULL, /* follow link */ + NULL, /* get_block */ fat_readpage, /* readpage */ NULL, /* writepage */ - NULL, /* bmap */ + NULL, /* flushpage */ UMSDOS_truncate, /* truncate */ NULL, /* permission */ NULL, /* smap */ + NULL /* revalidate */ }; diff --git a/fs/umsdos/rdir.c b/fs/umsdos/rdir.c index 7951bb8f8..c7bb8fb1b 100644 --- a/fs/umsdos/rdir.c +++ b/fs/umsdos/rdir.c @@ -249,7 +249,7 @@ struct inode_operations umsdos_rdir_inode_operations = NULL, /* followlink */ NULL, /* readpage */ NULL, /* writepage */ - NULL, /* bmap */ + NULL, /* get_block */ NULL, /* truncate */ NULL, /* permission */ NULL, /* smap */ diff --git a/fs/umsdos/symlink.c b/fs/umsdos/symlink.c index 97ea2da41..2d08a35d8 100644 --- a/fs/umsdos/symlink.c +++ b/fs/umsdos/symlink.c @@ -135,9 +135,10 @@ struct inode_operations umsdos_symlink_inode_operations = NULL, /* rename */ UMSDOS_readlink, /* readlink */ UMSDOS_followlink, /* followlink */ - generic_readpage, /* readpage */ + fat_bmap, /* get_block */ + block_read_full_page, /* readpage */ NULL, /* writepage */ - fat_bmap, /* bmap */ + NULL, /* flushpage */ NULL, /* truncate */ NULL, /* permission */ NULL, /* smap */ |