openrisc:defconfig fails to build in next-20140926 with the following error.
In file included from arch/openrisc/kernel/signal.c:31:0:
./arch/openrisc/include/asm/syscall.h: In function 'syscall_get_arch':
./arch/openrisc/include/asm/syscall.h:77:9: error: 'EM_OPENRISC' undeclared
Fix by moving EM_OPENRISC to include/uapi/linux/elf-em.h.
Fixes: ce5d112827e5 ("ARCH: AUDIT: implement syscall_get_arch for all arches")
Cc: Eric Paris <redacted>
Cc: Stefan Kristiansson <redacted>
Cc: Geert Uytterhoeven <redacted>
Cc: Stephen Rothwell <redacted>
Signed-off-by: Guenter Roeck <redacted>
---
v2: Only move EM_OPENRISC.
Another possible solution for the problem would be to include asm/elf.h
in arch/openrisc/kernel/signal.c. I had actually submitted a patch with
that fix back in August (maybe that is where I remembered the problem from).
Wonder what happened with that patch.
Would it make sense to drop EM_OR32 and replace it with EM_OPENRISC where
it is used ? binutils seems to suggest that EM_OPENRISC is the "official"
definition.
arch/openrisc/include/uapi/asm/elf.h | 3 +--
include/uapi/linux/elf-em.h | 1 +
2 files changed, 2 insertions(+), 2 deletions(-)
@@ -55,9 +55,8 @@ typedef elf_greg_t elf_gregset_t[ELF_NGREG];/* A placeholder; OR32 does not have fp support yes, so no fp regs for now. */typedefunsignedlongelf_fpregset_t;-/* This should be moved to include/linux/elf.h */+/* EM_OPENRISC is defined in linux/elf-em.h */#define EM_OR32 0x8472-#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor *//**Theseareusedtosetparametersinthecoredumps.
From: Jonas Bonn <jonas@southpole.se> Date: 2014-09-26 17:51:57
On 09/26/2014 06:05 PM, Guenter Roeck wrote:
openrisc:defconfig fails to build in next-20140926 with the following error.
In file included from arch/openrisc/kernel/signal.c:31:0:
./arch/openrisc/include/asm/syscall.h: In function 'syscall_get_arch':
./arch/openrisc/include/asm/syscall.h:77:9: error: 'EM_OPENRISC' undeclared
Fix by moving EM_OPENRISC to include/uapi/linux/elf-em.h.
Fixes: ce5d112827e5 ("ARCH: AUDIT: implement syscall_get_arch for all arches")
Cc: Eric Paris <eparis@redhat.com>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Stephen Rothwell <redacted>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
---
v2: Only move EM_OPENRISC.
Another possible solution for the problem would be to include asm/elf.h
in arch/openrisc/kernel/signal.c. I had actually submitted a patch with
that fix back in August (maybe that is where I remembered the problem from).
Wonder what happened with that patch.
Would it make sense to drop EM_OR32 and replace it with EM_OPENRISC where
it is used ? binutils seems to suggest that EM_OPENRISC is the "official"
definition.
Do we even use EM_OR32? Will the kernel build with the old toolchain if
we drop it? If yes, drop it altogether... I don't recall the details as
to why we kept that define around at all. And really, why bother
supporting the old toolchain at all... it's been at least two or three
years since EM_OPENRISC was added, hopefully people have moved on. If
users want to upgrade their kernel, they can update the toolchain, too,
at this point.
/Jonas
@@ -55,9 +55,8 @@ typedef elf_greg_t elf_gregset_t[ELF_NGREG];/* A placeholder; OR32 does not have fp support yes, so no fp regs for now. */typedefunsignedlongelf_fpregset_t;-/* This should be moved to include/linux/elf.h */+/* EM_OPENRISC is defined in linux/elf-em.h */#define EM_OR32 0x8472-#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor *//**Theseareusedtosetparametersinthecoredumps.
From: Eric Paris <eparis@redhat.com> Date: 2014-09-26 17:53:28
Would you like me to carry this in the audit tree, since I'm the one who
broke it?
-Eric
On Fri, 2014-09-26 at 09:05 -0700, Guenter Roeck wrote:
quoted hunk
openrisc:defconfig fails to build in next-20140926 with the following error.
In file included from arch/openrisc/kernel/signal.c:31:0:
./arch/openrisc/include/asm/syscall.h: In function 'syscall_get_arch':
./arch/openrisc/include/asm/syscall.h:77:9: error: 'EM_OPENRISC' undeclared
Fix by moving EM_OPENRISC to include/uapi/linux/elf-em.h.
Fixes: ce5d112827e5 ("ARCH: AUDIT: implement syscall_get_arch for all arches")
Cc: Eric Paris <eparis@redhat.com>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Stephen Rothwell <redacted>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
---
v2: Only move EM_OPENRISC.
Another possible solution for the problem would be to include asm/elf.h
in arch/openrisc/kernel/signal.c. I had actually submitted a patch with
that fix back in August (maybe that is where I remembered the problem from).
Wonder what happened with that patch.
Would it make sense to drop EM_OR32 and replace it with EM_OPENRISC where
it is used ? binutils seems to suggest that EM_OPENRISC is the "official"
definition.
arch/openrisc/include/uapi/asm/elf.h | 3 +--
include/uapi/linux/elf-em.h | 1 +
2 files changed, 2 insertions(+), 2 deletions(-)
@@ -55,9 +55,8 @@ typedef elf_greg_t elf_gregset_t[ELF_NGREG];/* A placeholder; OR32 does not have fp support yes, so no fp regs for now. */typedefunsignedlongelf_fpregset_t;-/* This should be moved to include/linux/elf.h */+/* EM_OPENRISC is defined in linux/elf-em.h */#define EM_OR32 0x8472-#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor *//**Theseareusedtosetparametersinthecoredumps.
On Fri, Sep 26, 2014 at 07:51:49PM +0200, Jonas Bonn wrote:
On 09/26/2014 06:05 PM, Guenter Roeck wrote:
quoted
openrisc:defconfig fails to build in next-20140926 with the following error.
In file included from arch/openrisc/kernel/signal.c:31:0:
./arch/openrisc/include/asm/syscall.h: In function 'syscall_get_arch':
./arch/openrisc/include/asm/syscall.h:77:9: error: 'EM_OPENRISC' undeclared
Fix by moving EM_OPENRISC to include/uapi/linux/elf-em.h.
Fixes: ce5d112827e5 ("ARCH: AUDIT: implement syscall_get_arch for all arches")
Cc: Eric Paris <redacted>
Cc: Stefan Kristiansson <redacted>
Cc: Geert Uytterhoeven <redacted>
Cc: Stephen Rothwell <redacted>
Signed-off-by: Guenter Roeck <redacted>
---
v2: Only move EM_OPENRISC.
Another possible solution for the problem would be to include asm/elf.h
in arch/openrisc/kernel/signal.c. I had actually submitted a patch with
that fix back in August (maybe that is where I remembered the problem from).
Wonder what happened with that patch.
Would it make sense to drop EM_OR32 and replace it with EM_OPENRISC where
it is used ? binutils seems to suggest that EM_OPENRISC is the "official"
definition.
Do we even use EM_OR32? Will the kernel build with the old toolchain if
we drop it? If yes, drop it altogether... I don't recall the details as
to why we kept that define around at all. And really, why bother
supporting the old toolchain at all... it's been at least two or three
years since EM_OPENRISC was added, hopefully people have moved on. If
users want to upgrade their kernel, they can update the toolchain, too,
at this point.
EM_OR32 is used to define ELF_ARCH, which per its comment is used in core
dumps. No idea if that is important/relevant. You tell me ;-).
The kernel builds with both the old (or32) and new (or1k) toolchain after
removing EM_OR32 and defining ELF_ARCH as EM_OPENRISC. I can not test the
kernel built with the or32 toolchain, but qemu is happy with the image built
using the or1k toolchain.
I'll be happy to submit a patch to remove EM_OR32 if it is not needed anymore.
Thanks,
Guenter
On Fri, Sep 26, 2014 at 01:53:01PM -0400, Eric Paris wrote:
Would you like me to carry this in the audit tree, since I'm the one who
broke it?
Hi Eric,
guess you are asking Jonas, but it would make sense to me.
Guenter
-Eric
On Fri, 2014-09-26 at 09:05 -0700, Guenter Roeck wrote:
quoted
openrisc:defconfig fails to build in next-20140926 with the following error.
In file included from arch/openrisc/kernel/signal.c:31:0:
./arch/openrisc/include/asm/syscall.h: In function 'syscall_get_arch':
./arch/openrisc/include/asm/syscall.h:77:9: error: 'EM_OPENRISC' undeclared
Fix by moving EM_OPENRISC to include/uapi/linux/elf-em.h.
Fixes: ce5d112827e5 ("ARCH: AUDIT: implement syscall_get_arch for all arches")
Cc: Eric Paris <redacted>
Cc: Stefan Kristiansson <redacted>
Cc: Geert Uytterhoeven <redacted>
Cc: Stephen Rothwell <redacted>
Signed-off-by: Guenter Roeck <redacted>
---
v2: Only move EM_OPENRISC.
Another possible solution for the problem would be to include asm/elf.h
in arch/openrisc/kernel/signal.c. I had actually submitted a patch with
that fix back in August (maybe that is where I remembered the problem from).
Wonder what happened with that patch.
Would it make sense to drop EM_OR32 and replace it with EM_OPENRISC where
it is used ? binutils seems to suggest that EM_OPENRISC is the "official"
definition.
arch/openrisc/include/uapi/asm/elf.h | 3 +--
include/uapi/linux/elf-em.h | 1 +
2 files changed, 2 insertions(+), 2 deletions(-)
@@ -55,9 +55,8 @@ typedef elf_greg_t elf_gregset_t[ELF_NGREG];/* A placeholder; OR32 does not have fp support yes, so no fp regs for now. */typedefunsignedlongelf_fpregset_t;-/* This should be moved to include/linux/elf.h */+/* EM_OPENRISC is defined in linux/elf-em.h */#define EM_OR32 0x8472-#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor *//**Theseareusedtosetparametersinthecoredumps.
Fix by moving EM_OPENRISC to include/uapi/linux/elf-em.h.
Fixes: ce5d112827e5 ("ARCH: AUDIT: implement syscall_get_arch for
all arches")
quoted
quoted
Cc: Eric Paris <eparis@redhat.com>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Stephen Rothwell <redacted>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
---
v2: Only move EM_OPENRISC.
Another possible solution for the problem would be to include
asm/elf.h
quoted
quoted
in arch/openrisc/kernel/signal.c. I had actually submitted a patch
with
quoted
quoted
that fix back in August (maybe that is where I remembered the
problem from).
quoted
quoted
Wonder what happened with that patch.
Would it make sense to drop EM_OR32 and replace it with EM_OPENRISC
where
quoted
quoted
it is used ? binutils seems to suggest that EM_OPENRISC is the
@@ -55,9 +55,8 @@ typedef elf_greg_t elf_gregset_t[ELF_NGREG];/* A placeholder; OR32 does not have fp support yes, so no fp regs
for now. */
quoted
quoted
typedef unsigned long elf_fpregset_t;
-/* This should be moved to include/linux/elf.h */
+/* EM_OPENRISC is defined in linux/elf-em.h */
#define EM_OR32 0x8472
-#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded
processor */
quoted
quoted
/*
* These are used to set parameters in the core dumps.
From: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi> Date: 2014-09-27 04:14:59
On Fri, Sep 26, 2014 at 07:51:49PM +0200, Jonas Bonn wrote:
On 09/26/2014 06:05 PM, Guenter Roeck wrote:
quoted
openrisc:defconfig fails to build in next-20140926 with the following error.
In file included from arch/openrisc/kernel/signal.c:31:0:
./arch/openrisc/include/asm/syscall.h: In function 'syscall_get_arch':
./arch/openrisc/include/asm/syscall.h:77:9: error: 'EM_OPENRISC' undeclared
Fix by moving EM_OPENRISC to include/uapi/linux/elf-em.h.
Fixes: ce5d112827e5 ("ARCH: AUDIT: implement syscall_get_arch for all arches")
Cc: Eric Paris <eparis@redhat.com>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Stephen Rothwell <redacted>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
---
v2: Only move EM_OPENRISC.
Another possible solution for the problem would be to include asm/elf.h
in arch/openrisc/kernel/signal.c. I had actually submitted a patch with
that fix back in August (maybe that is where I remembered the problem from).
Wonder what happened with that patch.
Would it make sense to drop EM_OR32 and replace it with EM_OPENRISC where
it is used ? binutils seems to suggest that EM_OPENRISC is the "official"
definition.
Do we even use EM_OR32? Will the kernel build with the old toolchain if
we drop it? If yes, drop it altogether... I don't recall the details as
to why we kept that define around at all. And really, why bother
supporting the old toolchain at all... it's been at least two or three
years since EM_OPENRISC was added, hopefully people have moved on. If
users want to upgrade their kernel, they can update the toolchain, too,
at this point.
EM_OPENRISC was added about ten years ago, and when the OR32 things in binutils
was removed in favour for OR1K earlier this year,
EM_OR1K was added as an alias to EM_OPENRISC.
With that said, I'm putting in a vote for removing EM_OR32 as well.
Stefan