[PATCH v4 0/2] kernel.h: container_of() pointer checking
From: Ian Abbott
Date: Tue May 23 2017 - 12:01:47 EST
[I screwed up an 'Acked-by:' line on v3.]
Patch 2 changes the container_of() macro to improve the compatibility
checking when the member has array type. As a bonus (?), if the pointer
neither points to a type compatible with the member nor points to a type
compatible with void, compiler errors are produced instead of warnings.
Patch 1 is a prerequisite to avoid a lot of warnings when <linux/bug.h>
is included by <linux/kernel.h>.
1) asm-generic/bug.h: declare struct pt_regs; before function prototype
2) kernel.h: handle pointers to arrays better in container_of()
include/asm-generic/bug.h | 1 +
include/linux/kernel.h | 9 ++++++---
2 files changed, 7 insertions(+), 3 deletions(-)