Add ocf_cache_has_pending_requests() function

Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
This commit is contained in:
Robert Baldyga 2019-02-25 17:47:27 +01:00
parent bdcdd57cf5
commit 03bd6d6c49
2 changed files with 15 additions and 0 deletions

View File

@ -179,6 +179,13 @@ bool ocf_cache_is_running(ocf_cache_t cache);
*/ */
void ocf_cache_wait_for_io_finish(ocf_cache_t cache); void ocf_cache_wait_for_io_finish(ocf_cache_t cache);
/**
* @brief Check if cache has any unfunished requests
*
* @param[in] cache Cache object
*/
bool ocf_cache_has_pending_requests(ocf_cache_t cache);
/** /**
* @brief Get cache mode of given cache object * @brief Get cache mode of given cache object
* *

View File

@ -56,6 +56,8 @@ void ocf_cache_wait_for_io_finish(ocf_cache_t cache)
{ {
uint32_t req_active = 0; uint32_t req_active = 0;
OCF_CHECK_NULL(cache);
do { do {
req_active = ocf_req_get_allocated(cache); req_active = ocf_req_get_allocated(cache);
if (req_active) if (req_active)
@ -63,6 +65,12 @@ void ocf_cache_wait_for_io_finish(ocf_cache_t cache)
} while (req_active); } while (req_active);
} }
bool ocf_cache_has_pending_requests(ocf_cache_t cache)
{
OCF_CHECK_NULL(cache);
return ocf_req_get_allocated(cache) > 0;
}
ocf_cache_mode_t ocf_cache_get_mode(ocf_cache_t cache) ocf_cache_mode_t ocf_cache_get_mode(ocf_cache_t cache)
{ {
OCF_CHECK_NULL(cache); OCF_CHECK_NULL(cache);