From 96f5cfb7b3c317d0f3bc3b68ab78c723d022aa45 Mon Sep 17 00:00:00 2001 From: Gleb Chesnokov Date: Fri, 2 Sep 2022 12:38:39 +0300 Subject: [PATCH] scst/include/backport.h: Fix the register_shrinker() backport The register_shrinker() function has begun to return non void value since v3.12 version. So fix the backport of this function for kernel versions before v3.12. Fixes: 84bd33f9a18c ("scst_mem: Port to Linux kernel v6.0") --- scst/include/backport.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/scst/include/backport.h b/scst/include/backport.h index 04c847014..e892014eb 100644 --- a/scst/include/backport.h +++ b/scst/include/backport.h @@ -783,7 +783,15 @@ static inline void kvfree(void *addr) static inline int register_shrinker_backport(struct shrinker *shrinker, const char *fmt, ...) { +/* + * See also commit 1d3d4437eae1 ("vmscan: per-node deferred work") # v3.12 + */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 12, 0) return register_shrinker(shrinker); +#else + register_shrinker(shrinker); + return 0; +#endif } #define register_shrinker register_shrinker_backport