A few functions defined but not used. This, in particular, prevents kernel builds with clang, `make W=1` and CONFIG_WERROR=y: lib/maple_tree.c:351:21: error: unused function 'mte_set_full' [-Werror,-Wunused-function] 351 | static inline void *mte_set_full(const struct maple_enode *node) | ^~~~~~~~~~~~ lib/maple_tree.c:356:21: error: unused function 'mte_clear_full' [-Werror,-Wunused-function] 356 | static inline void *mte_clear_full(const struct maple_enode *node) | ^~~~~~~~~~~~~~ lib/maple_tree.c:361:20: error: unused function 'mte_has_null' [-Werror,-Wunused-function] 361 | static inline bool mte_has_null(const struct maple_enode *node) | ^~~~~~~~~~~~ Fix this by dropping unused functions. See also commit 6863f5643dd7 ("kbuild: allow Clang to find unused static inline functions for W=1 build"). Fixes: 6e7ba8b5e238 ("maple_tree: mte_set_full() and mte_clear_full() clang-analyzer clean up") Fixes: 54a611b60590 ("Maple Tree: add new data structure") Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> --- lib/maple_tree.c | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/lib/maple_tree.c b/lib/maple_tree.c index aa3a5df15b8e..f7601aa470e0 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -348,21 +348,6 @@ static inline void *mte_safe_root(const struct maple_enode *node) return (void *)((unsigned long)node & ~MAPLE_ROOT_NODE); } -static inline void *mte_set_full(const struct maple_enode *node) -{ - return (void *)((unsigned long)node & ~MAPLE_ENODE_NULL); -} - -static inline void *mte_clear_full(const struct maple_enode *node) -{ - return (void *)((unsigned long)node | MAPLE_ENODE_NULL); -} - -static inline bool mte_has_null(const struct maple_enode *node) -{ - return (unsigned long)node & MAPLE_ENODE_NULL; -} - static __always_inline bool ma_is_root(struct maple_node *node) { return ((unsigned long)node->parent & MA_ROOT_PARENT); -- 2.43.0.rc1.1336.g36b5255a03ac