dm cache metadata: fix cmd_read_lock() acquiring write lock
Commit9567366fef
("dm cache metadata: fix READ_LOCK macros and cleanup WRITE_LOCK macros") uses down_write() instead of down_read() in cmd_read_lock(), yet up_read() is used to release the lock in READ_UNLOCK(). Fix it. Fixes:9567366fef
("dm cache metadata: fix READ_LOCK macros and cleanup WRITE_LOCK macros") Cc: stable@vger.kernel.org Signed-off-by: Ahmed Samy <f.fallen45@gmail.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com>
This commit is contained in:
Родитель
9567366fef
Коммит
6545b60baa
|
@ -894,9 +894,9 @@ static bool cmd_write_lock(struct dm_cache_metadata *cmd)
|
|||
|
||||
static bool cmd_read_lock(struct dm_cache_metadata *cmd)
|
||||
{
|
||||
down_write(&cmd->root_lock);
|
||||
down_read(&cmd->root_lock);
|
||||
if (cmd->fail_io) {
|
||||
up_write(&cmd->root_lock);
|
||||
up_read(&cmd->root_lock);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
|
|
Загрузка…
Ссылка в новой задаче