From 10311394469c53098f8c2d7bf478371a78d363c0 Mon Sep 17 00:00:00 2001 From: Kozlowski Mateusz Date: Mon, 21 Jun 2021 19:38:27 +0200 Subject: [PATCH] OCF: Fix error path for metadata updater Signed-off-by: Kozlowski Mateusz --- src/metadata/metadata_io.c | 2 +- src/utils/utils_alock.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/metadata/metadata_io.c b/src/metadata/metadata_io.c index 8cc7206..9820969 100644 --- a/src/metadata/metadata_io.c +++ b/src/metadata/metadata_io.c @@ -321,7 +321,7 @@ static void metadata_io_req_submit(struct metadata_io_request *m_req) lock = ocf_mio_async_lock(a_req->mio_conc, m_req, matadata_io_page_lock_acquired); - if (lock != OCF_LOCK_ACQUIRED) { + if (lock < 0) { a_req->error = lock; metadata_io_req_finalize(m_req); return; diff --git a/src/utils/utils_alock.c b/src/utils/utils_alock.c index 9d43beb..217ee85 100644 --- a/src/utils/utils_alock.c +++ b/src/utils/utils_alock.c @@ -719,6 +719,7 @@ int ocf_alock_lock_rd(struct ocf_alock *alock, } else { env_atomic_set(&req->lock_remaining, 0); env_atomic_dec(&alock->waiting); + lock = status; } env_mutex_unlock(&alock->lock); } @@ -754,6 +755,7 @@ int ocf_alock_lock_wr(struct ocf_alock *alock, } else { env_atomic_set(&req->lock_remaining, 0); env_atomic_dec(&alock->waiting); + lock = status; } env_mutex_unlock(&alock->lock); }