[PATCH] bogus BUILD_BUG_ON() in bpa_iommu
authorAl Viro <viro@ftp.linux.org.uk>
Fri, 30 Sep 2005 02:36:50 +0000 (03:36 +0100)
committerLinus Torvalds <torvalds@g5.osdl.org>
Fri, 30 Sep 2005 15:42:24 +0000 (08:42 -0700)
BUILD_BUG_ON(1) is asking for trouble (and getting it) when used in that
manner - dead code elimination happens after we parse it and invalid
type is invalid type, dead code or not.

It might be version-dependent, but at least 4.0.1 refuses to accept
that.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/ppc64/kernel/bpa_iommu.c

index f33a7bccb0d780ed4e66f03b0acf8113c5776cfe..507eb9d0223faef5f97d430051ebbd658f19c5b8 100644 (file)
@@ -99,7 +99,11 @@ get_iost_entry(unsigned long iopt_base, unsigned long io_address, unsigned page_
                break;
 
        default: /* not a known compile time constant */
-               BUILD_BUG_ON(1);
+               {
+                       /* BUILD_BUG_ON() is not usable here */
+                       extern void __get_iost_entry_bad_page_size(void);
+                       __get_iost_entry_bad_page_size();
+               }
                break;
        }