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

Bruce Ashfield bruce.ashfield at gmail.com
Thu May 12 04:31:40 UTC 2016


On Wed, May 11, 2016 at 5:55 PM, Khem Raj <raj.khem at gmail.com> wrote:

> 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.
>

Sounds good. I'll have them out first thing in the morning Thursday.

Bruce


>
> >
> > 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"
>



-- 
"Thou shalt not follow the NULL pointer, for chaos and madness await thee
at its end"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20160512/9beb4b45/attachment-0002.html>


More information about the Openembedded-core mailing list