This patch adds a KVM guest subtarget to the x86 target. Since VirtIO is the preferred I/O virtualization platform for kvm, this target expects it's root device to be /dev/vda.
Signed-off-by: Stijn Tintel <st...@linux-ipv6.be> --- target/linux/x86/Makefile | 2 +- target/linux/x86/image/Config.in | 7 +++-- target/linux/x86/kvm_guest/base-files/etc/inittab | 5 +++ target/linux/x86/kvm_guest/config-default | 10 +++++++ target/linux/x86/kvm_guest/config-default.bak | 29 +++++++++++++++++++++ target/linux/x86/kvm_guest/target.mk | 2 + 6 files changed, 51 insertions(+), 4 deletions(-) create mode 100644 target/linux/x86/kvm_guest/base-files/etc/inittab create mode 100644 target/linux/x86/kvm_guest/config-default create mode 100644 target/linux/x86/kvm_guest/config-default.bak create mode 100644 target/linux/x86/kvm_guest/target.mk diff --git a/target/linux/x86/Makefile b/target/linux/x86/Makefile index e9b7cba..71e95cc 100644 --- a/target/linux/x86/Makefile +++ b/target/linux/x86/Makefile @@ -10,7 +10,7 @@ ARCH:=i386 BOARD:=x86 BOARDNAME:=x86 FEATURES:=squashfs jffs2 ext2 vdi vmdk pcmcia tgz -SUBTARGETS=generic olpc xen_domu +SUBTARGETS=generic kvm_guest olpc xen_domu LINUX_VERSION:=2.6.32.9 diff --git a/target/linux/x86/image/Config.in b/target/linux/x86/image/Config.in index 9d17f37..88bf040 100644 --- a/target/linux/x86/image/Config.in +++ b/target/linux/x86/image/Config.in @@ -20,8 +20,8 @@ config X86_GRUB_SERIAL string prompt "Serial port device" depends X86_GRUB_IMAGES - default "hvc0" if TARGET_x86_xen_domu - default "ttyS0" if ! TARGET_x86_xen_domu + default "hvc0" if (TARGET_x86_kvm_guest || TARGET_x86_xen_domu) + default "ttyS0" if ! (TARGET_x86_kvm_guest || TARGET_x86_xen_domu) config X86_GRUB_BAUDRATE int "Serial port baud rate" @@ -37,8 +37,9 @@ config X86_GRUB_KERNELPART config X86_GRUB_ROOTPART string prompt "Root partition on target device" if X86_GRUB_IMAGES + default "/dev/vda2" if TARGET_x86_kvm_guest default "/dev/xvda2" if TARGET_x86_xen_domu - default "/dev/sda2" if ! TARGET_x86_xen_domu + default "/dev/sda2" if ! (TARGET_x86_kvm_guest || TARGET_x86_xen_domu) help The root partition on the final device. If you don't know, you probably want the default (/dev/sda2). diff --git a/target/linux/x86/kvm_guest/base-files/etc/inittab b/target/linux/x86/kvm_guest/base-files/etc/inittab new file mode 100644 index 0000000..469b8a9 --- /dev/null +++ b/target/linux/x86/kvm_guest/base-files/etc/inittab @@ -0,0 +1,5 @@ +::sysinit:/etc/init.d/rcS S boot +::shutdown:/etc/init.d/rcS K stop +tts/0::askfirst:/bin/ash --login +hvc0::askfirst:/bin/ash --login +tty1::askfirst:/bin/ash --login diff --git a/target/linux/x86/kvm_guest/config-default b/target/linux/x86/kvm_guest/config-default new file mode 100644 index 0000000..bd17667 --- /dev/null +++ b/target/linux/x86/kvm_guest/config-default @@ -0,0 +1,10 @@ +CONFIG_KVM=n +CONFIG_LGUEST=n +CONFIG_MICROCODE=n +CONFIG_NR_CPUS=4 +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BLK=y +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_RING=y +CONFIG_VIRTUALIZATION=y +CONFIG_X86_PAT=n diff --git a/target/linux/x86/kvm_guest/config-default.bak b/target/linux/x86/kvm_guest/config-default.bak new file mode 100644 index 0000000..c0aa71a --- /dev/null +++ b/target/linux/x86/kvm_guest/config-default.bak @@ -0,0 +1,29 @@ +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_FREEZER=y +CONFIG_GENERIC_PENDING_IRQ=y +CONFIG_KVM=n +CONFIG_LGUEST=n +CONFIG_LOCK_KERNEL=y +CONFIG_MPENTIUM4=y +CONFIG_NR_CPUS=4 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_SCHED_MC=y +CONFIG_SCSI=n +CONFIG_SMP=y +CONFIG_STOP_MACHINE=y +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BLK=y +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_RING=y +CONFIG_VIRTUALIZATION=y +CONFIG_X86_32_SMP=y +CONFIG_X86_CMOV=y +CONFIG_X86_CMPXCHG64=y +CONFIG_X86_DEBUGCTLMSR=y +CONFIG_X86_HT=y +CONFIG_X86_L1_CACHE_SHIFT=6 +CONFIG_X86_MINIMUM_CPU_FAMILY=5 +CONFIG_X86_PAE=n +CONFIG_X86_PAT=n +CONFIG_X86_TRAMPOLINE=y +CONFIG_X86_TSC=y diff --git a/target/linux/x86/kvm_guest/target.mk b/target/linux/x86/kvm_guest/target.mk new file mode 100644 index 0000000..611e3f0 --- /dev/null +++ b/target/linux/x86/kvm_guest/target.mk @@ -0,0 +1,2 @@ +BOARDNAME:=KVM Guest +DEFAULT_PACKAGES += kmod-virtio-balloon kmod-virtio-console kmod-virtio-net kmod-virtio-random -- 1.6.4.4 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel