openwrt/target/linux/armvirt
Hauke Mehrtens 46af22de16 kernel: Remove CONFIG_COMPAT
This removes support for executing old 32 bit applications on 64 bit ARM
and MIPS kernels.
On OpenWrt we normally compile all the user space applications on our
own and do not support third party binary only modules especial not 32
bit applications on 64 bit CPUs.

This reduces the attack surface on such systems and should also save
some memory.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
..
32 armvirt: 32: enable CONFIG_ARM_LPAE 2019-02-19 13:13:49 +00:00
64 kernel: Remove CONFIG_COMPAT 2019-05-11 17:15:41 +02:00
base-files/etc
image armvirt: merge arm64 as subtarget 64 2017-04-23 09:19:33 +08:00
config-4.14 kernel: enable memory compaction 2018-10-09 14:29:55 +02:00
Makefile armvirt: bump to v4.14 2018-01-09 14:40:54 +01:00
README merge: targets: update image generation and targets 2017-12-08 19:41:18 +01:00

This is intended to be used with LEDE project to provide image for use with
QEMU ARM virt machine.

Run with qemu-system-arm

	# boot with initramfs embedded in
	qemu-system-arm -nographic -M virt -m 64 -kernel openwrt-armvirt-32-zImage-initramfs

	# boot with accel=kvm
	qemu-system-arm -nographic -M virt,accel=kvm -cpu host -m 64 -kernel
	openwrt-armvirt-32-zImage-initramfs

	# boot with a separate rootfs
	qemu-system-arm -nographic -M virt -m 64 -kernel openwrt-armvirt-32-zImage \
	  -drive file=openwrt-armvirt-32-root.ext4,format=raw,if=virtio -append 'root=/dev/vda rootwait'

	# boot with local dir as rootfs
	qemu-system-arm -nographic -M virt -m 64 -kernel openwrt-armvirt-32-zImage \
	  -fsdev local,id=rootdev,path=root-armvirt/,security_model=none \
	  -device virtio-9p-pci,fsdev=rootdev,mount_tag=/dev/root \
	  -append 'rootflags=trans=virtio,version=9p2000.L,cache=loose rootfstype=9p'

Run with kvmtool

	# start a named machine
	lkvm run -k openwrt-armvirt-32-zImage -i openwrt-armvirt-32-rootfs.cpio --name armvirt0

	# start with virtio-9p rootfs
	lkvm run -k openwrt-armvirt-32-zImage -d root-armvirt/

	# stop "armvirt0"
	lkvm stop --name armvirt0

	# stop all
	lkvm stop --all

The multi-platform ARMv8 target can be used with QEMU:

	qemu-system-aarch64 -machine virt -cpu cortex-a57 -nographic \
		-kernel openwrt-armvirt-64-Image-initramfs \