mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-04 04:02:26 +00:00
Fix _fat_bmap() locking
On swapon() path, it has already i_mutex. So, this uses i_alloc_sem instead of it. Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Reported-by: Laurent GUERBY <laurent@guerby.net> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
ad3bdefe87
commit
3a95ea1155
@ -202,9 +202,9 @@ static sector_t _fat_bmap(struct address_space *mapping, sector_t block)
|
||||
sector_t blocknr;
|
||||
|
||||
/* fat_get_cluster() assumes the requested blocknr isn't truncated. */
|
||||
mutex_lock(&mapping->host->i_mutex);
|
||||
down_read(&mapping->host->i_alloc_sem);
|
||||
blocknr = generic_block_bmap(mapping, block, fat_get_block);
|
||||
mutex_unlock(&mapping->host->i_mutex);
|
||||
up_read(&mapping->host->i_alloc_sem);
|
||||
|
||||
return blocknr;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user