From 0b49604ef2db90deb6f028bdf2e9149600aa1193 Mon Sep 17 00:00:00 2001 From: Josh Boyer Date: Wed, 7 Nov 2012 08:55:13 -0500 Subject: [PATCH] Linux v3.7-rc4-20-g0e4a43e - Reenable debugging options. - Add patch to not break modules_install for external module builds --- config-generic | 8 +-- config-nodebug | 110 +++++++++++++++++++------------------- config-x86-generic | 2 +- kernel.spec | 11 ++-- modsign-post-KS-jwb.patch | 97 ++++++++++++++++----------------- sources | 1 + 6 files changed, 118 insertions(+), 111 deletions(-) diff --git a/config-generic b/config-generic index eb588f350..1ac354569 100644 --- a/config-generic +++ b/config-generic @@ -1513,13 +1513,13 @@ CONFIG_B43_SDIO=y CONFIG_B43_BCMA=y # CONFIG_B43_BCMA_EXTRA is not set CONFIG_B43_BCMA_PIO=y -# CONFIG_B43_DEBUG is not set +CONFIG_B43_DEBUG=y CONFIG_B43_PHY_LP=y CONFIG_B43_PHY_N=y CONFIG_B43_PHY_HT=y # CONFIG_B43_FORCE_PIO is not set CONFIG_B43LEGACY=m -# CONFIG_B43LEGACY_DEBUG is not set +CONFIG_B43LEGACY_DEBUG=y CONFIG_B43LEGACY_DMA=y CONFIG_B43LEGACY_PIO=y CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y @@ -3111,7 +3111,7 @@ CONFIG_USB_STORAGE_REALTEK=m CONFIG_REALTEK_AUTOPM=y CONFIG_USB_STORAGE_ENE_UB6250=m # CONFIG_USB_LIBUSUAL is not set -# CONFIG_USB_UAS is not set +CONFIG_USB_UAS=m # @@ -4077,7 +4077,7 @@ CONFIG_IBMASR=m CONFIG_PM_DEBUG=y CONFIG_PM_TRACE=y CONFIG_PM_TRACE_RTC=y -# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_TEST_SUSPEND=y CONFIG_PM_RUNTIME=y # CONFIG_PM_OPP is not set # CONFIG_PM_AUTOSLEEP is not set diff --git a/config-nodebug b/config-nodebug index c471b853e..b52b784e9 100644 --- a/config-nodebug +++ b/config-nodebug @@ -2,111 +2,111 @@ CONFIG_SND_VERBOSE_PRINTK=y CONFIG_SND_DEBUG=y CONFIG_SND_PCM_XRUN_DEBUG=y -# CONFIG_DEBUG_ATOMIC_SLEEP is not set +CONFIG_DEBUG_ATOMIC_SLEEP=y -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_PROVE_RCU is not set +CONFIG_DEBUG_MUTEXES=y +CONFIG_DEBUG_RT_MUTEXES=y +CONFIG_DEBUG_LOCK_ALLOC=y +CONFIG_PROVE_LOCKING=y +CONFIG_DEBUG_SPINLOCK=y +CONFIG_PROVE_RCU=y # CONFIG_PROVE_RCU_REPEATEDLY is not set -# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_DEBUG_PER_CPU_MAPS=y CONFIG_CPUMASK_OFFSTACK=y -# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set +CONFIG_CPU_NOTIFIER_ERROR_INJECT=m -# CONFIG_FAULT_INJECTION is not set -# CONFIG_FAILSLAB is not set -# CONFIG_FAIL_PAGE_ALLOC is not set -# CONFIG_FAIL_MAKE_REQUEST is not set -# CONFIG_FAULT_INJECTION_DEBUG_FS is not set -# CONFIG_FAULT_INJECTION_STACKTRACE_FILTER is not set -# CONFIG_FAIL_IO_TIMEOUT is not set -# CONFIG_FAIL_MMC_REQUEST is not set +CONFIG_FAULT_INJECTION=y +CONFIG_FAILSLAB=y +CONFIG_FAIL_PAGE_ALLOC=y +CONFIG_FAIL_MAKE_REQUEST=y +CONFIG_FAULT_INJECTION_DEBUG_FS=y +CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y +CONFIG_FAIL_IO_TIMEOUT=y +CONFIG_FAIL_MMC_REQUEST=y -# CONFIG_SLUB_DEBUG_ON is not set +CONFIG_SLUB_DEBUG_ON=y -# CONFIG_LOCK_STAT is not set +CONFIG_LOCK_STAT=y -# CONFIG_DEBUG_STACK_USAGE is not set +CONFIG_DEBUG_STACK_USAGE=y -# CONFIG_ACPI_DEBUG is not set +CONFIG_ACPI_DEBUG=y # CONFIG_ACPI_DEBUG_FUNC_TRACE is not set -# CONFIG_DEBUG_SG is not set +CONFIG_DEBUG_SG=y # CONFIG_DEBUG_PAGEALLOC is not set -# CONFIG_DEBUG_WRITECOUNT is not set -# CONFIG_DEBUG_OBJECTS is not set +CONFIG_DEBUG_WRITECOUNT=y +CONFIG_DEBUG_OBJECTS=y # CONFIG_DEBUG_OBJECTS_SELFTEST is not set -# CONFIG_DEBUG_OBJECTS_FREE is not set -# CONFIG_DEBUG_OBJECTS_TIMERS is not set -# CONFIG_DEBUG_OBJECTS_RCU_HEAD is not set +CONFIG_DEBUG_OBJECTS_FREE=y +CONFIG_DEBUG_OBJECTS_TIMERS=y +CONFIG_DEBUG_OBJECTS_RCU_HEAD=y CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1 -# CONFIG_X86_PTDUMP is not set +CONFIG_X86_PTDUMP=y -# CONFIG_CAN_DEBUG_DEVICES is not set +CONFIG_CAN_DEBUG_DEVICES=y -# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODULE_FORCE_UNLOAD=y -# CONFIG_SYSCTL_SYSCALL_CHECK is not set +CONFIG_SYSCTL_SYSCALL_CHECK=y -# CONFIG_DEBUG_NOTIFIERS is not set +CONFIG_DEBUG_NOTIFIERS=y -# CONFIG_DMA_API_DEBUG is not set +CONFIG_DMA_API_DEBUG=y -# CONFIG_MMIOTRACE is not set +CONFIG_MMIOTRACE=y -# CONFIG_DEBUG_CREDENTIALS is not set +CONFIG_DEBUG_CREDENTIALS=y # off in both production debug and nodebug builds, # on in rawhide nodebug builds -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y -# CONFIG_EXT4_DEBUG is not set +CONFIG_EXT4_DEBUG=y -# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +CONFIG_DEBUG_PERF_USE_VMALLOC=y -# CONFIG_JBD2_DEBUG is not set +CONFIG_JBD2_DEBUG=y -# CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_NFSD_FAULT_INJECTION=y -# CONFIG_DEBUG_BLK_CGROUP is not set +CONFIG_DEBUG_BLK_CGROUP=y -# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_DRBD_FAULT_INJECTION=y -# CONFIG_ATH_DEBUG is not set -# CONFIG_CARL9170_DEBUGFS is not set -# CONFIG_IWLWIFI_DEVICE_TRACING is not set +CONFIG_ATH_DEBUG=y +CONFIG_CARL9170_DEBUGFS=y +CONFIG_IWLWIFI_DEVICE_TRACING=y -# CONFIG_DEBUG_OBJECTS_WORK is not set +CONFIG_DEBUG_OBJECTS_WORK=y -# CONFIG_DMADEVICES_DEBUG is not set -# CONFIG_DMADEVICES_VDEBUG is not set +CONFIG_DMADEVICES_DEBUG=y +CONFIG_DMADEVICES_VDEBUG=y CONFIG_PM_ADVANCED_DEBUG=y -# CONFIG_CEPH_LIB_PRETTYDEBUG is not set -# CONFIG_QUOTA_DEBUG is not set +CONFIG_CEPH_LIB_PRETTYDEBUG=y +CONFIG_QUOTA_DEBUG=y CONFIG_PCI_DEFAULT_USE_CRS=y CONFIG_KGDB_KDB=y CONFIG_KDB_KEYBOARD=y -# CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER is not set -# CONFIG_TEST_LIST_SORT is not set +CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y +CONFIG_TEST_LIST_SORT=y -# CONFIG_DETECT_HUNG_TASK is not set +CONFIG_DETECT_HUNG_TASK=y CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set -# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set +CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y -# CONFIG_DEBUG_KMEMLEAK is not set +CONFIG_DEBUG_KMEMLEAK=y CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=1024 # CONFIG_DEBUG_KMEMLEAK_TEST is not set CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y diff --git a/config-x86-generic b/config-x86-generic index 2bcd498eb..1716194e5 100644 --- a/config-x86-generic +++ b/config-x86-generic @@ -320,7 +320,7 @@ CONFIG_STRICT_DEVMEM=y # CONFIG_MEMTEST is not set # CONFIG_DEBUG_TLBFLUSH is not set -# CONFIG_MAXSMP is not set +CONFIG_MAXSMP=y CONFIG_HP_ILO=m diff --git a/kernel.spec b/kernel.spec index 4774345c3..44209de82 100644 --- a/kernel.spec +++ b/kernel.spec @@ -95,7 +95,7 @@ Summary: The Linux kernel # The rc snapshot level %define rcrev 4 # The git snapshot level -%define gitrev 0 +%define gitrev 1 # Set rpm version accordingly %define rpmversion 3.%{upstream_sublevel}.0 %endif @@ -163,7 +163,7 @@ Summary: The Linux kernel # Set debugbuildsenabled to 1 for production (build separate debug kernels) # and 0 for rawhide (all kernels are debug kernels). # See also 'make debug' and 'make release'. -%define debugbuildsenabled 1 +%define debugbuildsenabled 0 # Want to build a vanilla kernel build without any non-upstream patches? %define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0} @@ -176,7 +176,7 @@ Summary: The Linux kernel %define doc_build_fail true %endif -%define rawhide_skip_docs 0 +%define rawhide_skip_docs 1 %if 0%{?rawhide_skip_docs} %define with_doc 0 %define doc_build_fail true @@ -2324,6 +2324,11 @@ fi # ||----w | # || || %changelog +* Wed Nov 07 2012 Josh Boyer - 3.7.0-0.rc4.git1.1 +- Linux v3.7-rc4-20-g0e4a43e +- Reenable debugging options. +- Add patch to not break modules_install for external module builds + * Mon Nov 05 2012 Josh Boyer - 3.7.0-0.rc4.git0.1 - Linux v3.7-rc4 - Disable debugging options. diff --git a/modsign-post-KS-jwb.patch b/modsign-post-KS-jwb.patch index ba942170f..e78070bc7 100644 --- a/modsign-post-KS-jwb.patch +++ b/modsign-post-KS-jwb.patch @@ -1,58 +1,59 @@ -From f1fa90d02f50078a89da602d73dc9ab7743439ba Mon Sep 17 00:00:00 2001 +From f6a79af8f3701b5a0df431a76adee212616154dc Mon Sep 17 00:00:00 2001 +From: Rusty Russell +Date: Tue, 6 Nov 2012 11:46:59 +1030 +Subject: [PATCH] modules: don't break modules_install on external modules + with no key. + +The script still spits out an error ("Can't read private key") but we +don't break modules_install. + +Reported-by: Bruno Wolff III +Original-patch-by: Josh Boyer +Signed-off-by: Rusty Russell +--- + scripts/Makefile.modinst | 3 ++- + 1 files changed, 2 insertions(+), 1 deletions(-) + +diff --git a/scripts/Makefile.modinst b/scripts/Makefile.modinst +index dda4b2b..ecbb447 100644 +--- a/scripts/Makefile.modinst ++++ b/scripts/Makefile.modinst +@@ -16,8 +16,9 @@ PHONY += $(modules) + __modinst: $(modules) + @: + ++# Don't stop modules_install if we can't sign external modules. + quiet_cmd_modules_install = INSTALL $@ +- cmd_modules_install = mkdir -p $(2); cp $@ $(2) ; $(mod_strip_cmd) $(2)/$(notdir $@) ; $(mod_sign_cmd) $(2)/$(notdir $@) ++ cmd_modules_install = mkdir -p $(2); cp $@ $(2) ; $(mod_strip_cmd) $(2)/$(notdir $@) ; $(mod_sign_cmd) $(2)/$(notdir $@) $(patsubst %,|| true,$(KBUILD_EXTMOD)) + + # Modules built outside the kernel source tree go into extra by default + INSTALL_MOD_DIR ?= extra +-- +1.7.6.5 + +From 56713a28675b966e027a824a0130b80dffab209f Mon Sep 17 00:00:00 2001 From: Josh Boyer -Date: Mon, 24 Sep 2012 10:46:36 -0400 -Subject: [PATCH 2/2] MODSIGN: Add modules_sign make target +Date: Mon, 5 Nov 2012 09:09:24 +1030 +Subject: [PATCH] MODSIGN: Add modules_sign make target If CONFIG_MODULE_SIG is set, and 'make modules_sign' is called then this -patch will cause the modules to get a signature installed. The make target +patch will cause the modules to get a signature appended. The make target is intended to be run after 'make modules_install', and will modify the -modules in-place in the installed location. +modules in-place in the installed location. It can be used to produce +signed modules after they have been processed by distribution build +scripts. -The signature will be appended to the module, along with some information -about the signature size and a magic string that indicates the presence of -the signature. This requires private and public keys to be available. By -default these are expected to be found in files: - - signing_key.priv - signing_key.x509 - -in the base directory of the build. The first is the private key in PEM -form and the second is the X.509 certificate in DER form as can be generated -from openssl: - - openssl req \ - -new -x509 -outform PEM -out signing_key.x509 \ - -keyout signing_key.priv -nodes \ - -subj "/CN=H2G2/O=Magrathea/CN=Slartibartfast" - -If the secret key is not found then signing will be skipped and the unsigned -module from (1) will just be copied to foo.ko. - -If signing occurs, lines like the following will be seen: - - SIGN [M] /fs/foo/foo.ko - -will appear in the build log. If the signature step will be skipped and the -following will be seen: - - NO SIGN [M] /fs/foo/foo.ko - -NOTE! After the signature step, the signed module must not be passed through -strip. If you wish to strip or otherwise modify the kernel modules, use the -built-in stripping capabilities with 'make modules_install' or perform said -modifications before calling this make target. This restriction may affect -packaging tools (such as rpmbuild) and initramfs composition tools. - -Based heavily on work by: David Howells Signed-off-by: Josh Boyer +Signed-off-by: Rusty Russell (minor typo fix) --- - Makefile | 6 ++++++ - scripts/Makefile.modsign | 32 ++++++++++++++++++++++++++++++++ - 2 files changed, 38 insertions(+) + Makefile | 6 ++++++ + scripts/Makefile.modsign | 32 ++++++++++++++++++++++++++++++++ + 2 files changed, 38 insertions(+), 0 deletions(-) create mode 100644 scripts/Makefile.modsign diff --git a/Makefile b/Makefile -index 89a2e2c..ac04c11 100644 +index 42d0e56..253aa1b 100644 --- a/Makefile +++ b/Makefile @@ -981,6 +981,12 @@ _modinst_post: _modinst_ @@ -70,7 +71,7 @@ index 89a2e2c..ac04c11 100644 # Modules not configured diff --git a/scripts/Makefile.modsign b/scripts/Makefile.modsign new file mode 100644 -index 0000000..670d5dc +index 0000000..abfda62 --- /dev/null +++ b/scripts/Makefile.modsign @@ -0,0 +1,32 @@ @@ -103,9 +104,9 @@ index 0000000..670d5dc + $(call cmd,sign_ko,$(MODLIB)/$(modinst_dir)) + +# Declare the contents of the .PHONY variable as phony. We keep that -+# # information in a variable se we can use it in if_changed and friends. ++# information in a variable se we can use it in if_changed and friends. + +.PHONY: $(PHONY) -- -1.7.11.7 +1.7.7.6 diff --git a/sources b/sources index 302e753fb..1530a0323 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ 1a1760420eac802c541a20ab51a093d1 linux-3.6.tar.xz 000539942b4f0146e9d313b69959ebc8 patch-3.7-rc4.xz +0756a5ed22e094e3c1a84e4b7f8c6227 patch-3.7-rc4-git1.xz