From c58f7da4d1f34c57fd80e3d5ccf1277b67050902 Mon Sep 17 00:00:00 2001 From: Marek Marczykowski Date: Sun, 27 May 2012 22:59:09 +0200 Subject: [PATCH 1/5] spec: allow to install multiple releases of single kernel Include release in kernel subdir name. --- kernel.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel.spec b/kernel.spec index 4e4c806..164e14e 100644 --- a/kernel.spec +++ b/kernel.spec @@ -19,7 +19,7 @@ %define build_src_dir %my_builddir/linux-%version %define src_install_dir /usr/src/kernels/%kernelrelease %define kernel_build_dir %my_builddir/linux-obj -%define vm_install_dir /var/lib/qubes/vm-kernels/%version +%define vm_install_dir /var/lib/qubes/vm-kernels/%version-%rel %(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes}) From 5b684de6b6715d4c6aff7956fea7543c5dc227c5 Mon Sep 17 00:00:00 2001 From: Marek Marczykowski Date: Fri, 25 May 2012 23:46:26 +0200 Subject: [PATCH 2/5] vm-initrd: support new dracut folder layout This enables building kernel under FC15. --- .../{ => lib/dracut/hooks}/pre-pivot/50_mount_modules.sh | 0 .../{ => lib/dracut/hooks}/pre-udev/90_qubes_cow_setup.sh | 0 vm-initramfs/pre-pivot | 1 + vm-initramfs/pre-udev | 1 + 4 files changed, 2 insertions(+) rename vm-initramfs/{ => lib/dracut/hooks}/pre-pivot/50_mount_modules.sh (100%) rename vm-initramfs/{ => lib/dracut/hooks}/pre-udev/90_qubes_cow_setup.sh (100%) create mode 120000 vm-initramfs/pre-pivot create mode 120000 vm-initramfs/pre-udev diff --git a/vm-initramfs/pre-pivot/50_mount_modules.sh b/vm-initramfs/lib/dracut/hooks/pre-pivot/50_mount_modules.sh similarity index 100% rename from vm-initramfs/pre-pivot/50_mount_modules.sh rename to vm-initramfs/lib/dracut/hooks/pre-pivot/50_mount_modules.sh diff --git a/vm-initramfs/pre-udev/90_qubes_cow_setup.sh b/vm-initramfs/lib/dracut/hooks/pre-udev/90_qubes_cow_setup.sh similarity index 100% rename from vm-initramfs/pre-udev/90_qubes_cow_setup.sh rename to vm-initramfs/lib/dracut/hooks/pre-udev/90_qubes_cow_setup.sh diff --git a/vm-initramfs/pre-pivot b/vm-initramfs/pre-pivot new file mode 120000 index 0000000..8460cde --- /dev/null +++ b/vm-initramfs/pre-pivot @@ -0,0 +1 @@ +lib/dracut/hooks/pre-pivot \ No newline at end of file diff --git a/vm-initramfs/pre-udev b/vm-initramfs/pre-udev new file mode 120000 index 0000000..f8c9b04 --- /dev/null +++ b/vm-initramfs/pre-udev @@ -0,0 +1 @@ +lib/dracut/hooks/pre-udev \ No newline at end of file From ceba3bd56106fd2a27ac150c40bdb6e39f3b217f Mon Sep 17 00:00:00 2001 From: Marek Marczykowski Date: Mon, 28 May 2012 00:10:21 +0200 Subject: [PATCH 3/5] pvops: suppress debug code in wifi drivers --- config-pvops | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/config-pvops b/config-pvops index 566f0a8..eb570d4 100644 --- a/config-pvops +++ b/config-pvops @@ -2292,23 +2292,22 @@ CONFIG_HOSTAP_PCI=m CONFIG_HOSTAP_CS=m CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y -CONFIG_IPW2100_DEBUG=y +# CONFIG_IPW2100_DEBUG is not set CONFIG_IPW2200=m CONFIG_IPW2200_MONITOR=y CONFIG_IPW2200_RADIOTAP=y CONFIG_IPW2200_PROMISCUOUS=y CONFIG_IPW2200_QOS=y -CONFIG_IPW2200_DEBUG=y +# CONFIG_IPW2200_DEBUG is not set CONFIG_LIBIPW=m -CONFIG_LIBIPW_DEBUG=y +# CONFIG_LIBIPW_DEBUG is not set CONFIG_IWLWIFI=m # # Debugging Options # -CONFIG_IWLWIFI_DEBUG=y +# CONFIG_IWLWIFI_DEBUG is not set CONFIG_IWLWIFI_DEBUGFS=y -# CONFIG_IWLWIFI_DEBUG_EXPERIMENTAL_UCODE is not set # CONFIG_IWLWIFI_DEVICE_TRACING is not set CONFIG_IWLWIFI_DEVICE_SVTOOL=y CONFIG_IWLWIFI_LEGACY=m From c8d9a6402613f01d06efe2303bc7a33f2a76b663 Mon Sep 17 00:00:00 2001 From: Marek Marczykowski Date: Mon, 4 Jun 2012 15:33:31 +0200 Subject: [PATCH 4/5] include generated includes in -devel package - only for pvops Required to compile external modules - there are eg unistd_{32,64}.h. --- kernel.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/kernel.spec b/kernel.spec index 164e14e..425e3b2 100644 --- a/kernel.spec +++ b/kernel.spec @@ -225,7 +225,9 @@ rm -f %buildroot/lib/modules/%kernelrelease/build/scripts/*/*.o cp -a scripts/* %buildroot/lib/modules/%kernelrelease/build/scripts/ cp -a include/* %buildroot/lib/modules/%kernelrelease/build/include -cp -a --parents arch/x86/include/generated %buildroot/lib/modules/%kernelrelease/build/ +if [ "%{build_flavor}" != "xenlinux" ]; then + cp -a --parents arch/x86/include/generated %buildroot/lib/modules/%kernelrelease/build/ +fi # Make sure the Makefile and version.h have a matching timestamp so that # external modules can be built From 0737d28707978ae72d1a52bf4983be0a8d87842f Mon Sep 17 00:00:00 2001 From: Marek Marczykowski Date: Sun, 10 Jun 2012 02:01:47 +0200 Subject: [PATCH 5/5] initramfs: setup dmroot as non-persistent snapshot The volatile.img is cleared before each startup anyway. This should speed up AppVM start and reduce ssd wearing. --- vm-initramfs/lib/dracut/hooks/pre-udev/90_qubes_cow_setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vm-initramfs/lib/dracut/hooks/pre-udev/90_qubes_cow_setup.sh b/vm-initramfs/lib/dracut/hooks/pre-udev/90_qubes_cow_setup.sh index 117d257..fa1616f 100755 --- a/vm-initramfs/lib/dracut/hooks/pre-udev/90_qubes_cow_setup.sh +++ b/vm-initramfs/lib/dracut/hooks/pre-udev/90_qubes_cow_setup.sh @@ -20,7 +20,7 @@ if [ `blockdev --getro /dev/xvda` = 1 ] ; then while ! [ -e /dev/xvdc ]; do sleep 0.1; done while ! [ -e /dev/xvdc2 ]; do sleep 0.1; done - echo "0 `blockdev --getsz /dev/xvda` snapshot /dev/xvda /dev/xvdc2 P 16" | \ + echo "0 `blockdev --getsz /dev/xvda` snapshot /dev/xvda /dev/xvdc2 N 16" | \ dmsetup create dmroot || { echo "Qubes: FATAL: cannot create dmroot!"; } echo Qubes: done. else