The patch titled Subject: bug.h: prevent double evaulation of `condition' in BUILD_BUG_ON has been removed from the -mm tree. Its filename was bugh-prevent-double-evaulation-of-in-build_bug_on.patch This patch was dropped because it was merged into mainline or a subsystem tree ------------------------------------------------------ From: Daniel Santos <daniel.santos@xxxxxxxxx> Subject: bug.h: prevent double evaulation of `condition' in BUILD_BUG_ON When calling BUILD_BUG_ON in an optimized build using gcc 4.3 and later, the condition will be evaulated twice, possibily with side-effects. This patch eliminates that error. [akpm@xxxxxxxxxxxxxxxxxxxx: tweak code layout] Signed-off-by: Daniel Santos <daniel.santos@xxxxxxxxx> Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx> Cc: Borislav Petkov <bp@xxxxxxxxx> Cc: David Rientjes <rientjes@xxxxxxxxxx> Cc: Joe Perches <joe@xxxxxxxxxxx> Cc: Josh Triplett <josh@xxxxxxxxxxxxxxxx> Cc: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/bug.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff -puN include/linux/bug.h~bugh-prevent-double-evaulation-of-in-build_bug_on include/linux/bug.h --- a/include/linux/bug.h~bugh-prevent-double-evaulation-of-in-build_bug_on +++ a/include/linux/bug.h @@ -59,9 +59,10 @@ struct pt_regs; extern int __build_bug_on_failed; #define BUILD_BUG_ON(condition) \ do { \ - ((void)sizeof(char[1 - 2*!!(condition)])); \ - if (condition) __build_bug_on_failed = 1; \ - } while(0) + bool __cond = !!(condition); \ + ((void)sizeof(char[1 - 2 * __cond])); \ + if (__cond) __build_bug_on_failed = 1; \ + } while (0) #endif /** _ Patches currently in -mm which might be from daniel.santos@xxxxxxxxx are origin.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html