Signed-off-by: Khem Raj <[email protected]> --- ...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 <[email protected]> +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 <[email protected]> +Cc: Kees Cook <[email protected]> +Cc: Michael Ellerman <[email protected]> +Cc: Segher Boessenkool <[email protected]> +--- +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 [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
