Am Sat, 17 Jan 2015 08:58:13 -0800 schrieb Manish Katiyar <mkatiyar@xxxxxxxxx>: > Have you searched through archives. Exactly 7 years ago, I had the > same question. > > http://comments.gmane.org/gmane.linux.kernel.kernelnewbies/24141 > No, sorry, I missed that :-x Thank you. To get this straight: it is only to produce a warning at compile time, when it is misused? I compiled the kernel two times, one time with the original code and one time with #define container_of(ptr, type, member) ({ \ (type *)( (char *)ptr - offsetof(type,member) );}) The secound kernel does not work proberly. First there is a kernel BUG at include/drm/drm_mm.h:145 at every boot: http://sprunge.us/MdDa Secound the kernel hangs on reboot and poweroff: reboot: http://picpaste.de/pics/8a041c11f3f5e24faebc1abb41b1db3f.1421523345.png poweroff: http://picpaste.de/pics/b1ab5225f37572a31b43e2fb8526e890.1421523472.png Third for example startx only produces the output: waiting for X server to begin accepting connections There is no further output in dmesg. The X server starts correctly with the first/original kernel. I compiled both kernels with following config: https://projects.archlinux.org/svntogit/packages.git/plain/trunk/config.x86_64?h=packages/linux and following patches: https://projects.archlinux.org/svntogit/packages.git/plain/trunk/0001-drm-i915-Disallow-pin-ioctl-completely-for-kms-drive.patch?h=packages/linux https://projects.archlinux.org/svntogit/packages.git/plain/trunk/change-default-console-loglevel.patch?h=packages/linux I compiled a little c code with both defines and gcc is producing another binary, but both are working as they should. Thank you for your reply. Simon _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies