Hi, I maintain kernel module, till today, when compiling the kernel module, I use to download kernel sources (headers are not enough since i had to include btrfs code), and compile it.
In suse 12.3 (4.4.131-94.29-default), I downloaded the source package (kernel-source-4.4.131-94.29.1.src.rpm), extract linux-4.4.tar.xz out of it, copy to /usr/src/4.4.131-94.29 and update symbolic link from /lib/modules/4.4.131-94.29-default/source to source -> /usr/src/linux-4.4.131-94.29 When compiling I get the following exception: /usr/src/linux-4.4.131-94.29/include/linux/page-flags-layout.h:21:2: error: #error ZONES_SHIFT -- too many zones configured adjust calculation #error ZONES_SHIFT -- too many zones configured adjust calculation I assume MAX_NR_ZONES is not defined. How could that be ? The code for page-flags-layout.h line 21 is: #if MAX_NR_ZONES < 2 #define ZONES_SHIFT 0 #elif MAX_NR_ZONES <= 2 #define ZONES_SHIFT 1 #elif MAX_NR_ZONES <= 4 #define ZONES_SHIFT 2 #else #error ZONES_SHIFT -- too many zones configured adjust calculation #endif

