bdev/ocf: Update OCF to 21.6.3.1
This OCF update is mainly focused on: - Fix OCF crash when handling flush I/O with large size Previous implementation attempts to use cache data I/O interface (ocf_submit_cache_reqs function) instead of submitting empty flush to the underlying cache device. This function is designed to read/write from mapped cachelines while there is no traversation/mapping performed on flush I/O. If request map allocation succeeds, this results in sending I/O to addres 0 with size and flags inherited from the top adapter I/O. This doesn't make any sense, and can even result in invalid I/O if the size is greater than cache device size. Even worse, if flush request map allocation fails (which happens always in case of large flush requests) then the erroneous call to ocf_submit_cache_reqs results in NULL pointer dereference. Other fixes included in this OCF update: - Fix race condition in fast path - Fix use after free during metadata load - Fix cleaner hung after cleaning policy switch - Fix use after free during volume close - Fix stack overflow when trying to insert to disabled io class and the sequential cutoff is on Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com> Change-Id: Id38f54df7b6c58c84f7f15f4354530755eb9171f Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12744 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com>
This commit is contained in:
parent
c77f17a53e
commit
9900e48d01
2
ocf
2
ocf
@ -1 +1 @@
|
||||
Subproject commit 865d29d0cb93a71ce37a8410914c35005aa6ed54
|
||||
Subproject commit 4477cb55a0bcd313a5ebcfdf877ca76a31695df7
|
Loading…
Reference in New Issue
Block a user