[RFC,v3,1/5] cleanup: Fix discarded const warning when defining lock guard

Message ID 20240216051640.197378-2-vinicius.gomes@intel.com
State New
Headers
Series overlayfs: Optimize override/revert creds |

Commit Message

Vinicius Costa Gomes Feb. 16, 2024, 5:16 a.m. UTC
  Fix the following warning when defining a cleanup guard for a "const"
pointer type:

/include/linux/cleanup.h:211:18: warning: return discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
  211 |         return _T->lock;                                                \
      |                ~~^~~~~~
/include/linux/cleanup.h:233:1: note: in expansion of macro ‘__DEFINE_UNLOCK_GUARD’
  233 | __DEFINE_UNLOCK_GUARD(_name, _type, _unlock, __VA_ARGS__)               \
      | ^~~~~~~~~~~~~~~~~~~~~
/include/linux/cred.h:193:1: note: in expansion of macro ‘DEFINE_LOCK_GUARD_1’
  193 | DEFINE_LOCK_GUARD_1(cred, const struct cred, _T->lock = override_creds_light(_T->lock),
      | ^~~~~~~~~~~~~~~~~~~

Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
---
 include/linux/cleanup.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Patch

diff --git a/include/linux/cleanup.h b/include/linux/cleanup.h
index c2d09bc4f976..085482ef46c8 100644
--- a/include/linux/cleanup.h
+++ b/include/linux/cleanup.h
@@ -208,7 +208,7 @@  static inline void class_##_name##_destructor(class_##_name##_t *_T)	\
 									\
 static inline void *class_##_name##_lock_ptr(class_##_name##_t *_T)	\
 {									\
-	return _T->lock;						\
+	return (void *)_T->lock;					\
 }