diff --git a/[refs] b/[refs] index 60b55d17e851..da4e05fe63ce 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d2dbe08ddceb4ba2b274abb84326d7e69d454e5c +refs/heads/master: cc8ef6eb21e964b1c5eb97b2d0e8ac9893e1bf86 diff --git a/trunk/include/linux/kernel.h b/trunk/include/linux/kernel.h index 3fc9f5aab5f8..328bca609b9b 100644 --- a/trunk/include/linux/kernel.h +++ b/trunk/include/linux/kernel.h @@ -734,6 +734,10 @@ struct sysinfo { /* Force a compilation error if condition is constant and true */ #define MAYBE_BUILD_BUG_ON(cond) ((void)sizeof(char[1 - 2 * !!(cond)])) +/* Force a compilation error if a constant expression is not a power of 2 */ +#define BUILD_BUG_ON_NOT_POWER_OF_2(n) \ + BUILD_BUG_ON((n) == 0 || (((n) & ((n) - 1)) != 0)) + /* Force a compilation error if condition is true, but also produce a result (of value 0 and type size_t), so the expression can be used e.g. in a structure initializer (or where-ever else comma expressions