From 12e4beeaf7b52545a16aa8d4655e5d39134c2436 Mon Sep 17 00:00:00 2001 From: "Robin H. Johnson" Date: Sun, 14 Oct 2012 00:05:16 +0000 Subject: [PATCH] Bug #432956: Easy to include VirtIO support in kernel. Signed-off-by: Robin H. Johnson --- ChangeLog | 4 ++++ gen_cmdline.sh | 5 +++++ gen_configkernel.sh | 13 +++++++++++++ gen_determineargs.sh | 1 + 4 files changed, 23 insertions(+) diff --git a/ChangeLog b/ChangeLog index 95b25a4..85749dd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,10 @@ # Distributed under the GPL v2 # $Id$ + 14 Oct 2012; Robin H. Johnson gen_cmdline.sh, + gen_configkernel.sh, gen_determineargs.sh: + Bug #432956: Easy to include VirtIO support in kernel. + 13 Oct 2012; Robin H. Johnson arch/alpha/modules_load, arch/arm/modules_load, arch/ia64/modules_load, arch/mips/modules_load, arch/parisc/modules_load, arch/parisc64/modules_load, arch/ppc/modules_load, diff --git a/gen_cmdline.sh b/gen_cmdline.sh index 858b850..5503bb5 100755 --- a/gen_cmdline.sh +++ b/gen_cmdline.sh @@ -31,6 +31,7 @@ longusage() { echo " --no-xconfig Don't run xconfig after oldconfig" echo " --save-config Save the configuration to /etc/kernels" echo " --no-save-config Don't save the configuration to /etc/kernels" + echo " --virtio Include VirtIO kernel code" echo " Kernel Compile settings" echo " --oldconfig Implies --no-clean and runs a 'make oldconfig'" echo " --clean Run make clean before compilation" @@ -321,6 +322,10 @@ parse_cmdline() { CMD_ZFS=`parse_optbool "$*"` print_info 2 "CMD_ZFS: ${CMD_ZFS}" ;; + --virtio) + CMD_VIRTIO=`parse_optbool "$*"` + print_info 2 "CMD_VIRTIO: ${CMD_VIRTIO}" + ;; --multipath|--no-multipath) CMD_MULTIPATH=`parse_optbool "$*"` if [ "$CMD_MULTIPATH" = "1" -a ! -e /usr/include/libdevmapper.h ] diff --git a/gen_configkernel.sh b/gen_configkernel.sh index b546db1..a69c713 100755 --- a/gen_configkernel.sh +++ b/gen_configkernel.sh @@ -147,4 +147,17 @@ config_kernel() { then sed -i ${KERNEL_OUTPUTDIR}/.config -e 's/#\? \?CONFIG_FB_SPLASH is.*/CONFIG_FB_SPLASH=y/g' fi + + # VirtIO + if isTrue ${CMD_VIRTIO} + then + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_PARAVIRT_GUEST.*/CONFIG_PARAVIRT_GUEST=y/g' + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_VIRTIO_PCI.*/CONFIG_VIRTIO_PCI=y/g' + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_VIRTIO_BALLOON.*/CONFIG_VIRTIO_BALLOON=y/g' + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_VIRTIO_MMIO.*/CONFIG_VIRTIO_MMIO=y/g' + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_VIRTIO_BLK.*/CONFIG_VIRTIO_BLK=y/g' + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_SCSI_VIRTIO.*/CONFIG_SCSI_VIRTIO=y/g' + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_VIRTIO_NET.*/CONFIG_VIRTIO_NET=y/g' + sed -i ${KERNEL_DIR}/.config -e 's/#\? \?CONFIG_VHOST_NET.*/CONFIG_VHOST_NET=y/g' + fi } diff --git a/gen_determineargs.sh b/gen_determineargs.sh index eb822b3..c3756d2 100755 --- a/gen_determineargs.sh +++ b/gen_determineargs.sh @@ -125,6 +125,7 @@ determine_real_args() { set_config_with_override STRING MDADM_CONFIG CMD_MDADM_CONFIG set_config_with_override BOOL E2FSPROGS CMD_E2FSPROGS "no" set_config_with_override BOOL ZFS CMD_ZFS + set_config_with_override BOOL VIRTIO CMD_VIRTIO "no" set_config_with_override BOOL MULTIPATH CMD_MULTIPATH set_config_with_override BOOL FIRMWARE CMD_FIRMWARE set_config_with_override STRING FIRMWARE_DIR CMD_FIRMWARE_DIR "/lib/firmware" -- 2.26.2