linux/fs/f2fs
Jaegeuk Kim 393ff91f57 f2fs: reduce unncessary locking pages during read
This patch reduces redundant locking and unlocking pages during read operations.
In f2fs_readpage, let's use wait_on_page_locked() instead of lock_page.
And then, when we need to modify any data finally, let's lock the page so that
we can avoid lock contention.

[readpage rule]
- The f2fs_readpage returns unlocked page, or released page too in error cases.
- Its caller should handle read error, -EIO, after locking the page, which
  indicates read completion.
- Its caller should check PageUptodate after grab_cache_page.

Signed-off-by: Changman Lee <cm224.lee@samsung.com>
Reviewed-by: Namjae Jeon <namjae.jeon@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
2013-03-20 18:30:06 +09:00
..
Kconfig f2fs: resolve build failures 2012-12-11 13:43:43 +09:00
Makefile f2fs: update Kconfig and Makefile 2012-12-11 13:43:42 +09:00
acl.c f2fs: avoid null dereference in f2fs_acl_from_disk 2013-01-04 09:46:27 +09:00
acl.h f2fs: adjust kernel coding style 2012-12-11 13:43:42 +09:00
checkpoint.c f2fs: reduce unncessary locking pages during read 2013-03-20 18:30:06 +09:00
data.c f2fs: reduce unncessary locking pages during read 2013-03-20 18:30:06 +09:00
debug.c f2fs: add device name in debugfs 2013-02-12 07:15:01 +09:00
dir.c f2fs: align f2fs maximum name length to linux based filesystem 2013-03-18 21:00:35 +09:00
f2fs.h f2fs: introduce readahead mode of node pages 2013-03-18 21:00:33 +09:00
file.c f2fs: introduce readahead mode of node pages 2013-03-18 21:00:33 +09:00
gc.c f2fs: fix calculation of max. gc cost in the SSR case 2013-02-12 07:15:02 +09:00
gc.h f2fs: clarify and enhance the f2fs_gc flow 2013-02-12 07:15:02 +09:00
hash.c f2fs: unify string length declarations and usage 2012-12-28 11:27:53 +09:00
inode.c f2fs: avoid balanc_fs during evict_inode 2013-02-12 07:15:01 +09:00
namei.c f2fs: align f2fs maximum name length to linux based filesystem 2013-03-18 21:00:35 +09:00
node.c f2fs: reduce unncessary locking pages during read 2013-03-20 18:30:06 +09:00
node.h f2fs: adjust kernel coding style 2012-12-11 13:43:42 +09:00
recovery.c f2fs: reduce unncessary locking pages during read 2013-03-20 18:30:06 +09:00
segment.c f2fs: clarify and enhance the f2fs_gc flow 2013-02-12 07:15:02 +09:00
segment.h f2fs: fix overflow when calculating utilization on 32-bit 2013-03-08 10:02:56 +09:00
super.c f2fs: align f2fs maximum name length to linux based filesystem 2013-03-18 21:00:35 +09:00
xattr.c f2fs: add f2fs_balance_fs in several interfaces 2013-01-11 15:09:17 +09:00
xattr.h f2fs: adjust kernel coding style 2012-12-11 13:43:42 +09:00