mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-30 14:01:57 -09:00
configs/qemu: bump to the latest kernel version
Drop m68k-mcf5208 kernel patch since it's upstream. Also bump the pc samples since they're tied to the (base) qemu config. Results table: Defconfig Kernel Qemu Network Status -------------------------------------------------------------- aarch64_virt 4.8.1 2.6.0 YES OK (3) arm_versatile 4.8.1 2.5.0 YES OK arm_vexpress 4.8.1 2.5.0 YES OK m68k_mcf5208 4.8.1 2.5.0 YES OK m68k_q800 4.8.1 q800-v2.4.0 NO (2) OK microblazebe 4.8.1 2.5.0 YES OK microblazeel 4.8.1 2.5.0 YES OK mips32r2el_malta 4.8.1 2.5.0 YES OK mips32r2_malta 4.8.1 2.5.0 YES OK mips32r6el_malta 4.8.1 2.6.0 YES OK (3) mips32r6_malta 4.8.1 2.6.0 YES OK (3) mips64el_malta 4.8.1 2.5.0 YES OK mips64_malta 4.8.1 2.5.0 YES OK mips64r6el_malta 4.8.1 2.7.0 YES OK (3)(4) mips64r6_malta 4.8.1 2.7.0 YES OK (3)(4) ppc_g3beige 4.8.1 2.5.0 YES OK ppc_mpc8544ds 4.8.1 2.5.0 YES OK ppc_virtex_ml507 4.8.1 2.5.0 NO OK ppc64_pseries 4.8.1 2.5.0 YES OK sh4 4.8.1 2.5.0 YES OK sh4eb 4.8.1 2.5.0 NO (1) OK sparc_ss10 4.8.1 2.5.0 YES OK sparc64_sun4u 4.8.1 2.5.0 YES OK sparc_sun4u 4.8.1 2.5.0 YES OK x86 4.8.1 2.5.0 YES OK x86_64 4.8.1 2.5.0 YES OK xtensa_lx60 4.8.1 2.6.0 YES OK xtensa_lx60_nommu 4.8.1 2.6.0 YES OK (1) - Probably an endian issue with 8139 emulation/driver (2) - There's a network interface, but enabling it in qemu fails (3) - Known to fail with qemu versions lower than 2.6.0 (4) - Might work with 2.6.0, but the cpu definition changed in 2.7.0 Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
committed by
Peter Korsgaard
parent
7341abaff3
commit
477756b257
@@ -1,45 +0,0 @@
|
||||
m68knommu: fix user a5 register being overwritten
|
||||
|
||||
On no-MMU systems the application a5 register can be overwitten with the
|
||||
address of the process data segment when processing application signals.
|
||||
For flat format applications compiled with full absolute relocation this
|
||||
effectively corrupts the a5 register on signal processing - and this very
|
||||
quickly leads to process crash and often takes out the whole system with
|
||||
a panic as well.
|
||||
|
||||
This has no effect on flat format applications compiled with the more
|
||||
common PIC methods (such as -msep-data). These format applications reserve
|
||||
a5 for the pointer to the data segment anyway - so it doesn't change it.
|
||||
|
||||
A long time ago the a5 register was used in the code packed into the user
|
||||
stack to enable signal return processing. And so it had to be restored on
|
||||
end of signal cleanup processing back to the original a5 user value. This
|
||||
was historically done by saving away a5 in the sigcontext structure. At
|
||||
some point (a long time back it seems) the a5 restore process was changed
|
||||
and it was hard coded to put the user data segment address directly into a5.
|
||||
Which is ok for the common PIC compiled application case, but breaks the
|
||||
full relocation application code.
|
||||
|
||||
We no longer use this type of signal handling mechanism and so we don't
|
||||
need to do anything special to save and restore a5 at all now. So remove the
|
||||
code that hard codes a5 to the address of the user data segment.
|
||||
|
||||
Signed-off-by: Greg Ungerer <gerg@linux-m68k.org>
|
||||
---
|
||||
arch/m68k/kernel/signal.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/arch/m68k/kernel/signal.c b/arch/m68k/kernel/signal.c
|
||||
index 2dcee3a..9202f82 100644
|
||||
--- a/arch/m68k/kernel/signal.c
|
||||
+++ b/arch/m68k/kernel/signal.c
|
||||
@@ -213,7 +213,6 @@ static inline int frame_extra_sizes(int f)
|
||||
|
||||
static inline void adjustformat(struct pt_regs *regs)
|
||||
{
|
||||
- ((struct switch_stack *)regs - 1)->a5 = current->mm->start_data;
|
||||
/*
|
||||
* set format byte to make stack appear modulo 4, which it will
|
||||
* be when doing the rte
|
||||
--
|
||||
1.9.1
|
||||
@@ -1,7 +1,10 @@
|
||||
Run the emulation with:
|
||||
|
||||
qemu-system-mips64 -M malta -cpu MIPS64R6-generic -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -nographic
|
||||
qemu-system-mips64 -M malta -cpu I6400 -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -nographic
|
||||
|
||||
The login prompt will appear in the terminal that started Qemu.
|
||||
|
||||
Tested with QEMU 2.6.0
|
||||
Tested with QEMU 2.7.0
|
||||
|
||||
Might work with 2.6.0 by changing the -cpu entry to MIPS64R6-generic
|
||||
since the naming was updated and the old name removed in 2.7.0
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
Run the emulation with:
|
||||
|
||||
qemu-system-mips64el -M malta -cpu MIPS64R6-generic -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -nographic
|
||||
qemu-system-mips64el -M malta -cpu I6400 -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -nographic
|
||||
|
||||
The login prompt will appear in the terminal that started Qemu.
|
||||
|
||||
Tested with QEMU 2.6.0
|
||||
|
||||
Might work with 2.6.0 by changing the -cpu entry to MIPS64R6-generic
|
||||
since the naming was updated and the old name removed in 2.7.0
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
../x86_64/linux-4.7.config
|
||||
1
board/qemu/x86/linux-4.8.config
Symbolic link
1
board/qemu/x86/linux-4.8.config
Symbolic link
@@ -0,0 +1 @@
|
||||
../x86_64/linux-4.8.config
|
||||
Reference in New Issue
Block a user