Clean dirty requests in WI

Signed-off-by: Jan Musial <jan.musial@huawei.com>
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@huawei.com>
This commit is contained in:
Jan Musial 2024-09-19 14:50:06 +02:00 committed by Michal Mielewczyk
parent ba92aade52
commit 5fadec7e32

View File

@ -133,6 +133,19 @@ static int _ocf_write_wi_core_write(struct ocf_request *req)
/* Get OCF request - increase reference counter */ /* Get OCF request - increase reference counter */
ocf_req_get(req); ocf_req_get(req);
if (req->info.dirty_any) {
ocf_hb_req_prot_lock_rd(req);
/* Need to clean, start it */
ocf_engine_clean(req);
ocf_hb_req_prot_unlock_rd(req);
/* The processing shall be resumed once the async cleaning
ends */
ocf_req_put(req);
return 0;
}
env_atomic_set(&req->req_remaining, 1); /* One core IO */ env_atomic_set(&req->req_remaining, 1); /* One core IO */
OCF_DEBUG_RQ(req, "Submit"); OCF_DEBUG_RQ(req, "Submit");