From 9d80882b009fca1cbc34c5d1385ab474080fff45 Mon Sep 17 00:00:00 2001 From: Michal Mielewczyk Date: Thu, 12 Nov 2020 03:08:09 -0500 Subject: [PATCH] Remove `re_part` field from `struct ocf_req_info` Since the request carries an explicit information about number of the cacheliens to be reparted, no need of keeping the boolean information if some of the request's cachelines are assigned to a wrong partition Signed-off-by: Michal Mielewczyk --- src/engine/engine_common.c | 2 +- src/engine/engine_fast.c | 2 +- src/engine/engine_pt.c | 2 +- src/engine/engine_rd.c | 2 +- src/engine/engine_wb.c | 2 +- src/engine/engine_wt.c | 2 +- src/ocf_request.h | 5 ----- 7 files changed, 6 insertions(+), 11 deletions(-) diff --git a/src/engine/engine_common.c b/src/engine/engine_common.c index 492ee28..ba20e66 100644 --- a/src/engine/engine_common.c +++ b/src/engine/engine_common.c @@ -127,7 +127,7 @@ void ocf_engine_update_req_info(struct ocf_cache *cache, /* * Need to move this cache line into other partition */ - _entry->re_part = req->info.re_part = true; + _entry->re_part = true; req->info.re_part_no++; } diff --git a/src/engine/engine_fast.c b/src/engine/engine_fast.c index b8b867f..8beb599 100644 --- a/src/engine/engine_fast.c +++ b/src/engine/engine_fast.c @@ -69,7 +69,7 @@ static int _ocf_read_fast_do(struct ocf_request *req) /* Get OCF request - increase reference counter */ ocf_req_get(req); - if (req->info.re_part) { + if (ocf_engine_needs_repart(req)) { OCF_DEBUG_RQ(req, "Re-Part"); ocf_req_hash_lock_wr(req); diff --git a/src/engine/engine_pt.c b/src/engine/engine_pt.c index 5485fcf..9144d84 100644 --- a/src/engine/engine_pt.c +++ b/src/engine/engine_pt.c @@ -67,7 +67,7 @@ int ocf_read_pt_do(struct ocf_request *req) return 0; } - if (req->info.re_part) { + if (ocf_engine_needs_repart(req)) { OCF_DEBUG_RQ(req, "Re-Part"); ocf_req_hash_lock_wr(req); diff --git a/src/engine/engine_rd.c b/src/engine/engine_rd.c index 566f83e..0d999eb 100644 --- a/src/engine/engine_rd.c +++ b/src/engine/engine_rd.c @@ -172,7 +172,7 @@ static int _ocf_read_generic_do(struct ocf_request *req) ocf_req_hash_unlock_rd(req); } - if (req->info.re_part) { + if (ocf_engine_needs_repart(req)) { OCF_DEBUG_RQ(req, "Re-Part"); ocf_req_hash_lock_wr(req); diff --git a/src/engine/engine_wb.c b/src/engine/engine_wb.c index 305125e..d4c7041 100644 --- a/src/engine/engine_wb.c +++ b/src/engine/engine_wb.c @@ -121,7 +121,7 @@ static inline void _ocf_write_wb_submit(struct ocf_request *req) * 3. Then continue processing request (flush metadata) */ - if (req->info.re_part) { + if (ocf_engine_needs_repart(req)) { OCF_DEBUG_RQ(req, "Re-Part"); ocf_req_hash_lock_wr(req); diff --git a/src/engine/engine_wt.c b/src/engine/engine_wt.c index 00bd303..040c25c 100644 --- a/src/engine/engine_wt.c +++ b/src/engine/engine_wt.c @@ -118,7 +118,7 @@ static void _ocf_write_wt_update_bits(struct ocf_request *req) ocf_req_hash_unlock_wr(req); } - if (req->info.re_part) { + if (ocf_engine_needs_repart(req)) { OCF_DEBUG_RQ(req, "Re-Part"); ocf_req_hash_lock_wr(req); diff --git a/src/ocf_request.h b/src/ocf_request.h index 4527901..1603d38 100644 --- a/src/ocf_request.h +++ b/src/ocf_request.h @@ -33,11 +33,6 @@ struct ocf_req_info { uint32_t mapping_error : 1; /*!< Core lines in this request were not mapped into cache */ - uint32_t re_part : 1; - /*!< This bit indicate that in the request some cache lines - * has to be moved to another partition - */ - uint32_t core_error : 1; /*!< Error occured during I/O on core device */