err.h: add INIT_ERR_PTR() macro
Add INIT_ERR_PTR() macro to initialize static variables with error pointers. This might be useful for specific case where there is a static variable initialized to an error condition and then later set to the real handle once probe finish/completes. This is to handle compilation problems like: error: initializer element is not constant where ERR_PTR() can't be used. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20251031130835.7953-2-ansuelsmth@gmail.com [bjorn: Added () suffix on macro references] Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
committed by
Bjorn Andersson
parent
dc5db35073
commit
652a86b24c
@@ -41,6 +41,14 @@ static inline void * __must_check ERR_PTR(long error)
|
||||
return (void *) error;
|
||||
}
|
||||
|
||||
/**
|
||||
* INIT_ERR_PTR - Init a const error pointer.
|
||||
* @error: A negative error code.
|
||||
*
|
||||
* Like ERR_PTR(), but usable to initialize static variables.
|
||||
*/
|
||||
#define INIT_ERR_PTR(error) ((void *)(error))
|
||||
|
||||
/* Return the pointer in the percpu address space. */
|
||||
#define ERR_PTR_PCPU(error) ((void __percpu *)(unsigned long)ERR_PTR(error))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user