From 7a0f8187cd4b9fea06a2c735e9306bea9ce9e3f7 Mon Sep 17 00:00:00 2001 From: Adam Rutkowski Date: Mon, 26 Aug 2019 15:55:55 -0400 Subject: [PATCH 1/3] Add get/put execution context to environment Signed-off-by: Adam Rutkowski --- modules/cas_cache/ocf_env.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/modules/cas_cache/ocf_env.h b/modules/cas_cache/ocf_env.h index 21a6b81..46239f7 100644 --- a/modules/cas_cache/ocf_env.h +++ b/modules/cas_cache/ocf_env.h @@ -616,4 +616,21 @@ static inline uint32_t env_crc32(uint32_t crc, uint8_t const *data, size_t len) #define ENV_BUG() BUG() #define ENV_BUG_ON(cond) BUG_ON(cond) + +/* *** EXECUTION COTNEXT *** */ +static inline unsigned env_get_execution_context(void) +{ + return get_cpu(); +} + +static inline void env_put_execution_context(unsigned ctx) +{ + put_cpu(); +} + +static inline unsigned env_get_execution_context_count(void) +{ + return num_online_cpus(); +} + #endif /* __OCF_ENV_H__ */ From c9339d1b2f9b87c4e72277e27effecbbc13e28b6 Mon Sep 17 00:00:00 2001 From: Adam Rutkowski Date: Mon, 2 Sep 2019 15:53:44 -0400 Subject: [PATCH 2/3] Add spin_trylock to environment Signed-off-by: Adam Rutkowski --- modules/cas_cache/ocf_env.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/cas_cache/ocf_env.h b/modules/cas_cache/ocf_env.h index 46239f7..f14a474 100644 --- a/modules/cas_cache/ocf_env.h +++ b/modules/cas_cache/ocf_env.h @@ -431,6 +431,11 @@ static inline void env_spinlock_lock(env_spinlock *l) spin_lock(l); } +static inline int env_spinlock_trylock(env_spinlock *l) +{ + return spin_trylock(l) ? 0 : -OCF_ERR_NO_LOCK; +} + static inline void env_spinlock_unlock(env_spinlock *l) { spin_unlock(l); From 521a8174588c95d0ab67e22a0e7e654606270a40 Mon Sep 17 00:00:00 2001 From: Adam Rutkowski Date: Tue, 10 Sep 2019 19:26:21 -0400 Subject: [PATCH 3/3] Update OCF (per-cpu freelists) Signed-off-by: Adam Rutkowski --- ocf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ocf b/ocf index 43e8905..9a46c40 160000 --- a/ocf +++ b/ocf @@ -1 +1 @@ -Subproject commit 43e8905456aa0bd4fdf12c3e8aa374c641684471 +Subproject commit 9a46c402b2e8398da7a3ee212faf041b3f01f958