2013/6/11 Yinghai Lu <ying...@kernel.org>: > On Tue, Jun 11, 2013 at 10:08 AM, Joshua C. <joshua...@gmail.com> wrote: >> 2013/6/11 Yinghai Lu <ying...@kernel.org>: >>> On Tue, Jun 11, 2013 at 3:04 AM, Joshua C. <joshua...@gmail.com> wrote: >>>> 2013/6/11 Joshua C. <joshua...@gmail.com>: >>>>> 2013/6/10 Yinghai Lu <ying...@kernel.org>: >>>>>> On Mon, Jun 10, 2013 at 3:55 AM, Sergey Meirovich >>>>>> <rathamah...@gmail.com> wrote: >>>>>> >>>>>>> patches 1,2(latest one) have not helped me on 3.9.5: >>>>>> >>>>>> So v1: >>>>>> https://patchwork.kernel.org/patch/2694981/ >>>>>> https://patchwork.kernel.org/patch/2694971/ >>>>>> >>>>>> and v2: >>>>>> https://patchwork.kernel.org/patch/2695891/ >>>>>> https://patchwork.kernel.org/patch/2695881/ >>>>>> >>>>>> Neither of two versions fix the problem on your setup? >>>>>> >>>>>> Can you post boot log with mtrr_cleanup_debug on 3.9.4? >>>>>> >>>>>> Thanks >>>>>> >>>>>> Yinghai >>>>> >>>>> I got some warnings when trying to build v2 of the patches: >>>>> >>>>> # make -s ARCH=x86_64 V=1 -j4 bzImage >>>>> kernel/range.c: In function 'add_range_with_merge': >>>>> kernel/range.c:51:3: error: implicit declaration of function 'memmove' >>>>> [-Werror=implicit-function-declaration] >>>>> kernel/range.c:51:3: warning: incompatible implicit declaration of >>>>> built-in function 'memmove' [enabled by default] >>>>> cc1: some warnings being treated as errors >>>>> scripts/Makefile.build:307: recipe for target 'kernel/range.o' failed >>>>> make[1]: *** [kernel/range.o] Error 1 >>>>> Makefile:793: recipe for target 'kernel' failed >>>>> make: *** [kernel] Error 2 >>>>> make: *** Waiting for unfinished jobs.... >>>>> >>>>> >>>>> -- >>>>> --joshua >>> >>> it does not report warning when I compile it with >>> >>> gcc (SUSE Linux) 4.7.2 20130108 [gcc-4_7-branch revision 195012 >>> >>>> >>>> A trivial fix for the above warnings: >>>> >>>> --- linux-2.6.orig/kernel/range.c >>>> +++ linux-2.6/kernel/range.c >>>> @@ -4,6 +4,7 @@ >>>> #include <linux/kernel.h> >>>> #include <linux/init.h> >>>> #include <linux/sort.h> >>>> +#include <linux/string.h> >>>> >>>> #include <linux/range.h> >>>> >> >> I use fedora17 with gcc version 4.7.3 (git checkout on 20130411). I >> have no idea where this came from... > > Ok. Your config should have CONFIG_DYNAMIC_DEBUG defined, > and my config does not have that defined. > > we have linux/kernel.h > linux/printk.h > linux/dynamic_debug.h > > dynamic_debug.h will include linux/string.h when CONFIG_DYNAMIC_DEBUG > is not defined. > > Hi, Andrew, > > How to fix this inconsistency caused by dynamic_debug.h > > 1. let linux/kernel.h include string.h directly > 2. or let dynamic_debug include string.h always > 3. let printk.h include string.h. > ... > > Yinghai
You guys are better at kernel coding than I am, but can't we just directly add 'string.h' just like the small patch I posted? In the worst case the file will be included twice... Maybe this is not a good coding style but it solves the problem and doesn't cause any side effects. So why not do it the way I did? -- --joshua -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/