From: Dan Carpenter Date: Thu, 26 Apr 2018 05:58:27 +0000 (+0300) Subject: staging: kernel.h: Prevent macro expantion bug in container_of_safe() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=227abcc6da7b803e380f034d6772ea0861612340;p=linux.git staging: kernel.h: Prevent macro expantion bug in container_of_safe() There aren't many users of this so it doesn't cause a problem, but we obviously want to use "__mptr" here instead of "ptr" to prevent the parameter from being executed twice. Signed-off-by: Dan Carpenter Acked-by: NeilBrown Signed-off-by: Greg Kroah-Hartman --- diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 58d6645b14250..3dfa3f260fc43 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -977,7 +977,7 @@ static inline void ftrace_dump(enum ftrace_dump_mode oops_dump_mode) { } BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \ !__same_type(*(ptr), void), \ "pointer type mismatch in container_of()"); \ - IS_ERR_OR_NULL(ptr) ? ERR_CAST(ptr) : \ + IS_ERR_OR_NULL(__mptr) ? ERR_CAST(__mptr) : \ ((type *)(__mptr - offsetof(type, member))); }) /* Rebuild everything on CONFIG_FTRACE_MCOUNT_RECORD */