[OE-core] [PATCH 22/42] linux-yocto: Fix build on ppc with gcc-6

Khem Raj raj.khem at gmail.com
Wed May 11 21:55:24 UTC 2016


On Wed, May 11, 2016 at 2:36 PM, Bruce Ashfield
<bruce.ashfield at gmail.com> wrote:
>
>
> On Wed, May 11, 2016 at 5:30 PM, Khem Raj <raj.khem at gmail.com> wrote:
>>
>> On Wed, May 11, 2016 at 2:27 PM, Bruce Ashfield
>> <bruce.ashfield at gmail.com> wrote:
>> >
>> >
>> > On Wed, May 11, 2016 at 1:35 PM, Khem Raj <raj.khem at gmail.com> wrote:
>> >>
>> >> Signed-off-by: Khem Raj <raj.khem at gmail.com>
>> >
>> >
>> >
>> > These shouldn't be carried out of tree. So can you drop the linux-yocto
>> > changes from the
>> > series, and I'll look at getting them integrated later.
>>
>> I could but, this series switches to using gcc6 which will start to fail.
>
>
> I can coordinate the fix. We just don't carry patches like this for linux
> yocto. As you
> can see, your series will no longer apply with the consolidated pull
> requests that
> I just sent.

Just include these patches in your pull request and send a v2. I will
then drop it from my list.
since these patches should work fine with older gcc as well your
changes then can go in first
or along with my changes.

>
> Bruce
>
>>
>>
>> >
>> > Bruce
>> >
>> >>
>> >> ---
>> >>  ...ace-Fix-out-of-bounds-array-access-warnin.patch | 50
>> >> ++++++++++++++++++++++
>> >>  meta/recipes-kernel/linux/linux-yocto_4.4.bb       |  4 +-
>> >>  2 files changed, 53 insertions(+), 1 deletion(-)
>> >>  create mode 100644
>> >>
>> >> meta/recipes-kernel/linux/linux-yocto/0001-powerpc-ptrace-Fix-out-of-bounds-array-access-warnin.patch
>> >>
>> >> diff --git
>> >>
>> >> a/meta/recipes-kernel/linux/linux-yocto/0001-powerpc-ptrace-Fix-out-of-bounds-array-access-warnin.patch
>> >>
>> >> b/meta/recipes-kernel/linux/linux-yocto/0001-powerpc-ptrace-Fix-out-of-bounds-array-access-warnin.patch
>> >> new file mode 100644
>> >> index 0000000..05315ed
>> >> --- /dev/null
>> >> +++
>> >>
>> >> b/meta/recipes-kernel/linux/linux-yocto/0001-powerpc-ptrace-Fix-out-of-bounds-array-access-warnin.patch
>> >> @@ -0,0 +1,50 @@
>> >> +From 32acc1d9a5738b02e8815047af8886978aa40ead Mon Sep 17 00:00:00 2001
>> >> +From: Khem Raj <raj.khem at gmail.com>
>> >> +Date: Mon, 25 Apr 2016 05:47:01 +0000
>> >> +Subject: [PATCH V2] powerpc/ptrace: Fix out of bounds array access
>> >> warning
>> >> +
>> >> +gcc-6 correctly warns about a out of bounds access
>> >> +
>> >> +arch/powerpc/kernel/ptrace.c:407:24: warning: index 32 denotes an
>> >> offset
>> >> greater than size of 'u64[32][1] {aka long long unsigned int[32][1]}'
>> >> [-Warray-bounds]
>> >> +        offsetof(struct thread_fp_state, fpr[32][0]));
>> >> +                        ^
>> >> +
>> >> +check the end of array instead of beginning of next element to fix
>> >> this
>> >> +
>> >> +Signed-off-by: Khem Raj <raj.khem at gmail.com>
>> >> +Cc: Kees Cook <keescook at chromium.org>
>> >> +Cc: Michael Ellerman <mpe at ellerman.id.au>
>> >> +Cc: Segher Boessenkool <segher at kernel.crashing.org>
>> >> +---
>> >> +Changes from v1 to v2:
>> >> +
>> >> +- Check for fpr[32] instead of fpr[31][1]
>> >> +
>> >> + arch/powerpc/kernel/ptrace.c | 4 ++--
>> >> + 1 file changed, 2 insertions(+), 2 deletions(-)
>> >> +
>> >> +diff --git a/arch/powerpc/kernel/ptrace.c
>> >> b/arch/powerpc/kernel/ptrace.c
>> >> +index 737c0d0..b38fd08 100644
>> >> +--- a/arch/powerpc/kernel/ptrace.c
>> >> ++++ b/arch/powerpc/kernel/ptrace.c
>> >> +@@ -376,7 +376,7 @@ static int fpr_get(struct task_struct *target,
>> >> const
>> >> struct user_regset *regset,
>> >> +
>> >> + #else
>> >> +       BUILD_BUG_ON(offsetof(struct thread_fp_state, fpscr) !=
>> >> +-                   offsetof(struct thread_fp_state, fpr[32][0]));
>> >> ++                   offsetof(struct thread_fp_state, fpr[32]));
>> >> +
>> >> +       return user_regset_copyout(&pos, &count, &kbuf, &ubuf,
>> >> +                                  &target->thread.fp_state, 0, -1);
>> >> +@@ -404,7 +404,7 @@ static int fpr_set(struct task_struct *target,
>> >> const
>> >> struct user_regset *regset,
>> >> +       return 0;
>> >> + #else
>> >> +       BUILD_BUG_ON(offsetof(struct thread_fp_state, fpscr) !=
>> >> +-                   offsetof(struct thread_fp_state, fpr[32][0]));
>> >> ++                   offsetof(struct thread_fp_state, fpr[32]));
>> >> +
>> >> +       return user_regset_copyin(&pos, &count, &kbuf, &ubuf,
>> >> +                                 &target->thread.fp_state, 0, -1);
>> >> +--
>> >> +1.9.1
>> >> +
>> >> diff --git a/meta/recipes-kernel/linux/linux-yocto_4.4.bb
>> >> b/meta/recipes-kernel/linux/linux-yocto_4.4.bb
>> >> index b74903e..fbb592a 100644
>> >> --- a/meta/recipes-kernel/linux/linux-yocto_4.4.bb
>> >> +++ b/meta/recipes-kernel/linux/linux-yocto_4.4.bb
>> >> @@ -22,7 +22,9 @@ SRCREV_machine ?=
>> >> "b18090556c1d1b449233cd555c27a04d38272d6d"
>> >>  SRCREV_meta ?= "9ab4787fe2aea2ae0fcc31a5e067eaba19ef64c8"
>> >>
>> >>  SRC_URI =
>> >>
>> >> "git://git.yoctoproject.org/linux-yocto-4.4.git;name=machine;branch=${KBRANCH};
>> >> \
>> >> -
>> >>
>> >> git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.4;destsuffix=${KMETA}"
>> >> +
>> >>
>> >> git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.4;destsuffix=${KMETA}
>> >> \
>> >> +
>> >> file://0001-powerpc-ptrace-Fix-out-of-bounds-array-access-warnin.patch
>> >> \
>> >> +"
>> >>
>> >>  LINUX_VERSION ?= "4.4.3"
>> >>
>> >> --
>> >> 2.8.2
>> >>
>> >> --
>> >> _______________________________________________
>> >> Openembedded-core mailing list
>> >> Openembedded-core at lists.openembedded.org
>> >> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>> >
>> >
>> >
>> >
>> > --
>> > "Thou shalt not follow the NULL pointer, for chaos and madness await
>> > thee at
>> > its end"
>
>
>
>
> --
> "Thou shalt not follow the NULL pointer, for chaos and madness await thee at
> its end"



More information about the Openembedded-core mailing list