diff options
| author | Chao Yu <[email protected]> | 2015-02-11 10:20:38 +0000 |
|---|---|---|
| committer | Jaegeuk Kim <[email protected]> | 2015-02-12 01:04:51 +0000 |
| commit | 1a118ccfd60fc78e64c0a3ab9e85075545839d6e (patch) | |
| tree | e0cbaa9c068a063c71923a9b3a2c5d6168c70a6d /lib/string.c | |
| parent | f2fs: fix accessing wrong indexed data blocks (diff) | |
| download | kernel-1a118ccfd60fc78e64c0a3ab9e85075545839d6e.tar.gz kernel-1a118ccfd60fc78e64c0a3ab9e85075545839d6e.zip | |
f2fs: use spinlock for segmap_lock instead of rwlock
rwlock can provide better concurrency when there are much more readers than
writers because readers can hold the rwlock simultaneously.
But now, for segmap_lock rwlock in struct free_segmap_info, there is only one
reader 'mount' from below call path:
->f2fs_fill_super
->build_segment_manager
->build_dirty_segmap
->init_dirty_segmap
->find_next_inuse
read_lock
...
read_unlock
Now that our concurrency can not be improved since there is no other reader for
this lock, we do not need to use rwlock_t type for segmap_lock, let's replace it
with spinlock_t type.
Signed-off-by: Chao Yu <[email protected]>
Signed-off-by: Jaegeuk Kim <[email protected]>
Diffstat (limited to 'lib/string.c')
0 files changed, 0 insertions, 0 deletions
