summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Add-option-to-automatically-enforce-module-signature.patch8
-rw-r--r--Add-sysrq-option-to-disable-secure-boot-mode.patch2
-rw-r--r--KEYS-Add-a-system-blacklist-keyring.patch4
-rw-r--r--MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch6
-rw-r--r--PCI-Lock-down-BAR-access-when-module-security-is-ena.patch2
-rw-r--r--Revert-Revert-ACPI-video-change-acpi-video-brightnes.patch4
-rw-r--r--config-generic6
-rw-r--r--config-nodebug114
-rw-r--r--config-x86-generic2
-rw-r--r--criu-no-expert.patch2
-rw-r--r--disable-i8042-check-on-apple-mac.patch2
-rw-r--r--drm-i915-hush-check-crtc-state.patch2
-rw-r--r--efi-Add-EFI_SECURE_BOOT-bit.patch4
-rw-r--r--efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch4
-rw-r--r--ext4-fix-race-between-write-and-fcntl-F_SETFL.patch2
-rw-r--r--hibernate-Disable-in-a-signed-modules-environment.patch2
-rw-r--r--input-silence-i8042-noise.patch4
-rw-r--r--kernel-arm64.patch44
-rw-r--r--kernel.spec26
-rw-r--r--nf_reject_ipv4-module-license-unspecified-taints-ker.patch84
-rw-r--r--rcu-Make-rcu_barrier-understand-about-missing-rcuo-k.patch177
-rw-r--r--rcu-More-on-deadlock-between-CPU-hotplug-and-expedit.patch67
-rw-r--r--silence-fbcon-logo.patch6
-rw-r--r--sources3
-rw-r--r--x86-microcode-AMD-Fix-early-ucode-loading-on-32-bit.patch55
25 files changed, 158 insertions, 474 deletions
diff --git a/Add-option-to-automatically-enforce-module-signature.patch b/Add-option-to-automatically-enforce-module-signature.patch
index 7cc669c15..852cd77ec 100644
--- a/Add-option-to-automatically-enforce-module-signature.patch
+++ b/Add-option-to-automatically-enforce-module-signature.patch
@@ -33,10 +33,10 @@ index 199f453cb4de..ec38acf00b40 100644
290/040 ALL edd_mbr_sig_buffer EDD MBR signatures
2D0/A00 ALL e820_map E820 memory map table
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
-index f2327e88e07c..4ba047a782fd 100644
+index ded8a6774ac9..750d32268fb1 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
-@@ -1607,6 +1607,16 @@ config EFI_MIXED
+@@ -1611,6 +1611,16 @@ config EFI_MIXED
If unsure, say N.
@@ -129,10 +129,10 @@ index 225b0988043a..90dbfb73e11f 100644
* The sentinel is set to a nonzero value (0xff) in header.S.
*
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
-index 235cfd39e0d7..13c0835f907a 100644
+index ab08aa2276fb..f4eb99432db1 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
-@@ -1151,6 +1151,12 @@ void __init setup_arch(char **cmdline_p)
+@@ -1150,6 +1150,12 @@ void __init setup_arch(char **cmdline_p)
io_delay_init();
diff --git a/Add-sysrq-option-to-disable-secure-boot-mode.patch b/Add-sysrq-option-to-disable-secure-boot-mode.patch
index 0babad835..4b1cff847 100644
--- a/Add-sysrq-option-to-disable-secure-boot-mode.patch
+++ b/Add-sysrq-option-to-disable-secure-boot-mode.patch
@@ -15,7 +15,7 @@ Upstream-status: Fedora mustard
7 files changed, 65 insertions(+), 10 deletions(-)
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
-index fbae2bf99a47..f3960a8c2627 100644
+index bc31a43b31a0..5f80d12a55cb 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -70,6 +70,11 @@
diff --git a/KEYS-Add-a-system-blacklist-keyring.patch b/KEYS-Add-a-system-blacklist-keyring.patch
index 0f02211a4..34f1563b9 100644
--- a/KEYS-Add-a-system-blacklist-keyring.patch
+++ b/KEYS-Add-a-system-blacklist-keyring.patch
@@ -29,10 +29,10 @@ index 72665eb80692..2c7b80d31366 100644
+
#endif /* _KEYS_SYSTEM_KEYRING_H */
diff --git a/init/Kconfig b/init/Kconfig
-index 3ee28ae02cc8..0bba9555e5ef 100644
+index 2081a4d3d917..d99a519bb9ae 100644
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -1733,6 +1733,15 @@ config SYSTEM_TRUSTED_KEYRING
+@@ -1747,6 +1747,15 @@ config SYSTEM_TRUSTED_KEYRING
Keys in this keyring are used by module signature checking.
diff --git a/MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch b/MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch
index b21a700a8..d0308704f 100644
--- a/MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch
+++ b/MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch
@@ -42,10 +42,10 @@ index b1d686e9175e..4d41f4532127 100644
efi_guid_t guid;
u64 table;
diff --git a/init/Kconfig b/init/Kconfig
-index 0bba9555e5ef..0e1e8a14175a 100644
+index d99a519bb9ae..9ef459bb44b2 100644
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -1887,6 +1887,15 @@ config MODULE_SIG_ALL
+@@ -1901,6 +1901,15 @@ config MODULE_SIG_ALL
comment "Do not forget to sign required modules with scripts/sign-file"
depends on MODULE_SIG_FORCE && !MODULE_SIG_ALL
@@ -62,7 +62,7 @@ index 0bba9555e5ef..0e1e8a14175a 100644
prompt "Which hash algorithm should modules be signed with?"
depends on MODULE_SIG
diff --git a/kernel/Makefile b/kernel/Makefile
-index dc5c77544fd6..95bdf3398880 100644
+index 17ea6d4a9a24..381fe2d56ed1 100644
--- a/kernel/Makefile
+++ b/kernel/Makefile
@@ -45,6 +45,7 @@ obj-$(CONFIG_UID16) += uid16.o
diff --git a/PCI-Lock-down-BAR-access-when-module-security-is-ena.patch b/PCI-Lock-down-BAR-access-when-module-security-is-ena.patch
index 01af607ea..1b8a0034d 100644
--- a/PCI-Lock-down-BAR-access-when-module-security-is-ena.patch
+++ b/PCI-Lock-down-BAR-access-when-module-security-is-ena.patch
@@ -16,7 +16,7 @@ Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
3 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
-index 92b6d9ab00e4..f77f893114a4 100644
+index 2c6643fdc0cf..56333630ab77 100644
--- a/drivers/pci/pci-sysfs.c
+++ b/drivers/pci/pci-sysfs.c
@@ -30,6 +30,7 @@
diff --git a/Revert-Revert-ACPI-video-change-acpi-video-brightnes.patch b/Revert-Revert-ACPI-video-change-acpi-video-brightnes.patch
index d150cc8f3..a722683f2 100644
--- a/Revert-Revert-ACPI-video-change-acpi-video-brightnes.patch
+++ b/Revert-Revert-ACPI-video-change-acpi-video-brightnes.patch
@@ -15,10 +15,10 @@ Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
-index 74339c57b914..3251c36e0e5d 100644
+index 4c81a860cc2b..6e53352750b4 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
-@@ -3705,7 +3705,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
+@@ -3719,7 +3719,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
the allocated input device; If set to 0, video driver
will only send out the event without touching backlight
brightness level.
diff --git a/config-generic b/config-generic
index 487fd7cb0..acd9cc340 100644
--- a/config-generic
+++ b/config-generic
@@ -1699,13 +1699,13 @@ CONFIG_B43_PCMCIA=y
CONFIG_B43_SDIO=y
CONFIG_B43_BCMA=y
CONFIG_B43_BCMA_PIO=y
-CONFIG_B43_DEBUG=y
+# CONFIG_B43_DEBUG is not set
CONFIG_B43_PHY_LP=y
CONFIG_B43_PHY_N=y
CONFIG_B43_PHY_HT=y
CONFIG_B43_PHY_G=y
CONFIG_B43LEGACY=m
-CONFIG_B43LEGACY_DEBUG=y
+# CONFIG_B43LEGACY_DEBUG is not set
CONFIG_B43LEGACY_DMA=y
CONFIG_B43LEGACY_PIO=y
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
@@ -4694,7 +4694,7 @@ CONFIG_PM_DEBUG=y
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
CONFIG_PM_TRACE=y
CONFIG_PM_TRACE_RTC=y
-CONFIG_PM_TEST_SUSPEND=y
+# CONFIG_PM_TEST_SUSPEND is not set
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 143433bf8..ed6913376 100644
--- a/config-nodebug
+++ b/config-nodebug
@@ -2,115 +2,115 @@ CONFIG_SND_VERBOSE_PRINTK=y
CONFIG_SND_DEBUG=y
CONFIG_SND_PCM_XRUN_DEBUG=y
-CONFIG_DEBUG_ATOMIC_SLEEP=y
-
-CONFIG_DEBUG_MUTEXES=y
-CONFIG_DEBUG_RT_MUTEXES=y
-CONFIG_DEBUG_LOCK_ALLOC=y
-CONFIG_LOCK_TORTURE_TEST=m
-CONFIG_PROVE_LOCKING=y
-CONFIG_DEBUG_SPINLOCK=y
-CONFIG_PROVE_RCU=y
+# CONFIG_DEBUG_ATOMIC_SLEEP is not set
+
+# CONFIG_DEBUG_MUTEXES is not set
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_LOCK_TORTURE_TEST is not set
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_DEBUG_SPINLOCK is not set
+# CONFIG_PROVE_RCU is not set
# CONFIG_PROVE_RCU_REPEATEDLY is not set
-CONFIG_DEBUG_PER_CPU_MAPS=y
+# CONFIG_DEBUG_PER_CPU_MAPS is not set
CONFIG_CPUMASK_OFFSTACK=y
-CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
+# CONFIG_CPU_NOTIFIER_ERROR_INJECT 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_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_LOCK_STAT=y
+# CONFIG_LOCK_STAT is not set
-CONFIG_DEBUG_STACK_USAGE=y
+# CONFIG_DEBUG_STACK_USAGE is not set
-CONFIG_ACPI_DEBUG=y
+# CONFIG_ACPI_DEBUG is not set
-CONFIG_DEBUG_SG=y
-CONFIG_DEBUG_PI_LIST=y
+# CONFIG_DEBUG_SG is not set
+# CONFIG_DEBUG_PI_LIST is not set
# CONFIG_DEBUG_PAGEALLOC is not set
-CONFIG_DEBUG_OBJECTS=y
+# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_DEBUG_OBJECTS_SELFTEST is not set
-CONFIG_DEBUG_OBJECTS_FREE=y
-CONFIG_DEBUG_OBJECTS_TIMERS=y
-CONFIG_DEBUG_OBJECTS_RCU_HEAD=y
+# 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_ENABLE_DEFAULT=1
-CONFIG_X86_PTDUMP=y
-CONFIG_EFI_PGT_DUMP=y
+# CONFIG_X86_PTDUMP is not set
+# CONFIG_EFI_PGT_DUMP is not set
-CONFIG_CAN_DEBUG_DEVICES=y
+# CONFIG_CAN_DEBUG_DEVICES is not set
-CONFIG_MODULE_FORCE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
-CONFIG_DEBUG_NOTIFIERS=y
+# CONFIG_DEBUG_NOTIFIERS is not set
-CONFIG_DMA_API_DEBUG=y
+# CONFIG_DMA_API_DEBUG is not set
-CONFIG_MMIOTRACE=y
+# CONFIG_MMIOTRACE is not set
-CONFIG_DEBUG_CREDENTIALS=y
+# CONFIG_DEBUG_CREDENTIALS is not set
# off in both production debug and nodebug builds,
# on in rawhide nodebug builds
-CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y
+# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
-CONFIG_EXT4_DEBUG=y
+# CONFIG_EXT4_DEBUG is not set
# CONFIG_XFS_WARN is not set
-CONFIG_DEBUG_PERF_USE_VMALLOC=y
+# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
-CONFIG_JBD2_DEBUG=y
+# CONFIG_JBD2_DEBUG is not set
-CONFIG_NFSD_FAULT_INJECTION=y
+# CONFIG_NFSD_FAULT_INJECTION is not set
-CONFIG_DEBUG_BLK_CGROUP=y
+# CONFIG_DEBUG_BLK_CGROUP is not set
-CONFIG_DRBD_FAULT_INJECTION=y
+# CONFIG_DRBD_FAULT_INJECTION is not set
-CONFIG_ATH_DEBUG=y
-CONFIG_CARL9170_DEBUGFS=y
-CONFIG_IWLWIFI_DEVICE_TRACING=y
+# CONFIG_ATH_DEBUG is not set
+# CONFIG_CARL9170_DEBUGFS is not set
+# CONFIG_IWLWIFI_DEVICE_TRACING is not set
# CONFIG_RTLWIFI_DEBUG is not set
-CONFIG_DEBUG_OBJECTS_WORK=y
+# CONFIG_DEBUG_OBJECTS_WORK is not set
-CONFIG_DMADEVICES_DEBUG=y
-CONFIG_DMADEVICES_VDEBUG=y
+# CONFIG_DMADEVICES_DEBUG is not set
+# CONFIG_DMADEVICES_VDEBUG is not set
CONFIG_PM_ADVANCED_DEBUG=y
-CONFIG_CEPH_LIB_PRETTYDEBUG=y
-CONFIG_QUOTA_DEBUG=y
+# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
+# CONFIG_QUOTA_DEBUG is not set
CONFIG_KGDB_KDB=y
CONFIG_KDB_KEYBOARD=y
CONFIG_KDB_CONTINUE_CATASTROPHIC=0
-CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y
+# CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER is not set
# CONFIG_PERCPU_TEST is not set
-CONFIG_TEST_LIST_SORT=y
+# CONFIG_TEST_LIST_SORT is not set
# CONFIG_TEST_STRING_HELPERS is not set
-CONFIG_DETECT_HUNG_TASK=y
+# CONFIG_DETECT_HUNG_TASK is not set
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
-CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
+# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set
-CONFIG_DEBUG_KMEMLEAK=y
+# CONFIG_DEBUG_KMEMLEAK is not set
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=1024
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
@@ -121,7 +121,7 @@ CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
# CONFIG_SPI_DEBUG is not set
-CONFIG_X86_DEBUG_STATIC_CPU_HAS=y
+# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set
# CONFIG_SCHEDSTATS is not set
# CONFIG_LATENCYTOP is not set
diff --git a/config-x86-generic b/config-x86-generic
index 2a12307ea..59217f12b 100644
--- a/config-x86-generic
+++ b/config-x86-generic
@@ -337,7 +337,7 @@ CONFIG_SP5100_TCO=m
# CONFIG_MEMTEST is not set
# CONFIG_DEBUG_TLBFLUSH is not set
-CONFIG_MAXSMP=y
+# CONFIG_MAXSMP is not set
CONFIG_HP_ILO=m
diff --git a/criu-no-expert.patch b/criu-no-expert.patch
index 3eadcc74a..3ba0354bb 100644
--- a/criu-no-expert.patch
+++ b/criu-no-expert.patch
@@ -9,7 +9,7 @@ Upstream-status: Fedora mustard
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/init/Kconfig b/init/Kconfig
-index 0e1e8a14175a..71cd7226a78f 100644
+index 9ef459bb44b2..cc096e258a4a 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1149,7 +1149,7 @@ config DEBUG_BLK_CGROUP
diff --git a/disable-i8042-check-on-apple-mac.patch b/disable-i8042-check-on-apple-mac.patch
index aa7456d24..73d8037f1 100644
--- a/disable-i8042-check-on-apple-mac.patch
+++ b/disable-i8042-check-on-apple-mac.patch
@@ -17,7 +17,7 @@ Signed-off-by: Bastien Nocera <hadess@hadess.net>
1 file changed, 22 insertions(+)
diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c
-index 1160aa081d21..d75d0dcda6fb 100644
+index 9bb95eab6926..4b5015f27f9e 100644
--- a/drivers/input/serio/i8042.c
+++ b/drivers/input/serio/i8042.c
@@ -1471,6 +1471,22 @@ static struct platform_driver i8042_driver = {
diff --git a/drm-i915-hush-check-crtc-state.patch b/drm-i915-hush-check-crtc-state.patch
index 9b064fc23..be7d43c6c 100644
--- a/drm-i915-hush-check-crtc-state.patch
+++ b/drm-i915-hush-check-crtc-state.patch
@@ -14,7 +14,7 @@ Upstream-status: http://lists.freedesktop.org/archives/intel-gfx/2013-November/0
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index c9e220963a78..9a705e52ab26 100644
+index f0a1a56406eb..e5fd8b9148a9 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -10963,7 +10963,7 @@ check_crtc_state(struct drm_device *dev)
diff --git a/efi-Add-EFI_SECURE_BOOT-bit.patch b/efi-Add-EFI_SECURE_BOOT-bit.patch
index ca6aead09..9d78030a1 100644
--- a/efi-Add-EFI_SECURE_BOOT-bit.patch
+++ b/efi-Add-EFI_SECURE_BOOT-bit.patch
@@ -12,10 +12,10 @@ Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
2 files changed, 3 insertions(+)
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
-index 13c0835f907a..fbae2bf99a47 100644
+index f4eb99432db1..bc31a43b31a0 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
-@@ -1153,7 +1153,9 @@ void __init setup_arch(char **cmdline_p)
+@@ -1152,7 +1152,9 @@ void __init setup_arch(char **cmdline_p)
#ifdef CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE
if (boot_params.secure_boot) {
diff --git a/efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch b/efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch
index 3e5166a82..925c0e0a7 100644
--- a/efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch
+++ b/efi-Make-EFI_SECURE_BOOT_SIG_ENFORCE-depend-on-EFI.patch
@@ -11,10 +11,10 @@ Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
-index 4ba047a782fd..749f58ba7e36 100644
+index 750d32268fb1..f560653b8c4f 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
-@@ -1608,7 +1608,8 @@ config EFI_MIXED
+@@ -1612,7 +1612,8 @@ config EFI_MIXED
If unsure, say N.
config EFI_SECURE_BOOT_SIG_ENFORCE
diff --git a/ext4-fix-race-between-write-and-fcntl-F_SETFL.patch b/ext4-fix-race-between-write-and-fcntl-F_SETFL.patch
index a8a2f5d4d..26394239e 100644
--- a/ext4-fix-race-between-write-and-fcntl-F_SETFL.patch
+++ b/ext4-fix-race-between-write-and-fcntl-F_SETFL.patch
@@ -61,7 +61,7 @@ Signed-off-by: Dmitry Monakhov <dmonakhov@xxxxxxxxxx>
1 file changed, 95 insertions(+), 1 deletion(-)
diff --git a/fs/ext4/file.c b/fs/ext4/file.c
-index aca7b24a4432..8477eb259809 100644
+index 8131be8c0af3..dc7bd1b64c46 100644
--- a/fs/ext4/file.c
+++ b/fs/ext4/file.c
@@ -88,6 +88,100 @@ ext4_unaligned_aio(struct inode *inode, struct iov_iter *from, loff_t pos)
diff --git a/hibernate-Disable-in-a-signed-modules-environment.patch b/hibernate-Disable-in-a-signed-modules-environment.patch
index 53dd6deac..6c89536a7 100644
--- a/hibernate-Disable-in-a-signed-modules-environment.patch
+++ b/hibernate-Disable-in-a-signed-modules-environment.patch
@@ -13,7 +13,7 @@ Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c
-index a9dfa79b6bab..14c7356ff53a 100644
+index 1f35a3478f3c..5e2472fc3dda 100644
--- a/kernel/power/hibernate.c
+++ b/kernel/power/hibernate.c
@@ -28,6 +28,7 @@
diff --git a/input-silence-i8042-noise.patch b/input-silence-i8042-noise.patch
index 094c1262c..f971723ad 100644
--- a/input-silence-i8042-noise.patch
+++ b/input-silence-i8042-noise.patch
@@ -16,7 +16,7 @@ Upstream-status: Fedora mustard
3 files changed, 2 insertions(+), 9 deletions(-)
diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c
-index 44973196d3fd..0179281a2517 100644
+index 9717d5f20139..a3101d2fd936 100644
--- a/drivers/base/power/main.c
+++ b/drivers/base/power/main.c
@@ -122,8 +122,6 @@ void device_pm_unlock(void)
@@ -29,7 +29,7 @@ index 44973196d3fd..0179281a2517 100644
if (dev->parent && dev->parent->power.is_prepared)
dev_warn(dev, "parent %s should not be sleeping\n",
diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c
-index 9a97c2b10926..1160aa081d21 100644
+index f5a98af3b325..9bb95eab6926 100644
--- a/drivers/input/serio/i8042.c
+++ b/drivers/input/serio/i8042.c
@@ -857,7 +857,6 @@ static int __init i8042_check_aux(void)
diff --git a/kernel-arm64.patch b/kernel-arm64.patch
index c2464c89d..3e32005cb 100644
--- a/kernel-arm64.patch
+++ b/kernel-arm64.patch
@@ -1,26 +1,3 @@
-commit fb3aa1c1644a73bc36a47a6844c3ee6414787e9e
-Author: Mark Salter <msalter@redhat.com>
-Date: Sun Oct 19 11:11:08 2014 -0400
-
- clocksource: arm_arch_timer: fix system hang
-
- Arm allows for two possible architectural clock sources. One memory mapped
- and the other coprocessor based. If both timers exist, then the driver waits
- for both to be probed before registering a clocksource.
-
- Commit c387f07e6205 ("clocksource: arm_arch_timer: Discard unavailable timers
- correctly") attempted to fix a hang occurring when one of the two possible
- timers had a device node, but was disabled. In that case, the second probe
- would never occur and the system would hang without a clocksource being
- registered.
-
- Unfortunately, incorrect logic in that commit made things worse such that
- a hang would occur unless both timers had a device node and were enabled.
- This patch fixes the logic so that we don't wait to probe a second timer
- unless it exists and is enabled.
-
- Signed-off-by: Mark Salter <msalter@redhat.com>
-
commit 798bcf9c5057f0acd54154d09abf6fc4fc044e41
Author: Mark Salter <msalter@redhat.com>
Date: Tue Oct 14 13:51:54 2014 -0400
@@ -4706,25 +4683,6 @@ index 2133f9d..b73392b 100644
if (cntbase)
arch_timer_rate = readl_relaxed(cntbase + CNTFRQ);
else
-@@ -660,13 +666,14 @@ static bool __init
- arch_timer_probed(int type, const struct of_device_id *matches)
- {
- struct device_node *dn;
-- bool probed = false;
-+ bool probed = true;
-
- dn = of_find_matching_node(NULL, matches);
-- if (dn && of_device_is_available(dn) && (arch_timers_present & type))
-- probed = true;
-- of_node_put(dn);
--
-+ if (dn) {
-+ if (of_device_is_available(dn) && !(arch_timers_present & type))
-+ probed = false;
-+ of_node_put(dn);
-+ }
- return probed;
- }
@@ -687,20 +694,8 @@ static void __init arch_timer_common_init(void)
arch_timer_arch_init();
@@ -7318,9 +7276,9 @@ index 5e94d00..a6131a9 100644
--- a/drivers/net/ethernet/smsc/smc91x.c
+++ b/drivers/net/ethernet/smsc/smc91x.c
@@ -81,6 +81,7 @@ static const char version[] =
- #include <linux/workqueue.h>
#include <linux/of.h>
#include <linux/of_device.h>
+ #include <linux/of_gpio.h>
+#include <linux/acpi.h>
#include <linux/netdevice.h>
diff --git a/kernel.spec b/kernel.spec
index 4a73c1278..3f795005f 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -67,9 +67,9 @@ Summary: The Linux kernel
# The next upstream release sublevel (base_sublevel+1)
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
# The rc snapshot level
-%define rcrev 2
+%define rcrev 3
# The git snapshot level
-%define gitrev 3
+%define gitrev 0
# Set rpm version accordingly
%define rpmversion 3.%{upstream_sublevel}.0
%endif
@@ -124,7 +124,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 0
+%define debugbuildsenabled 1
# Want to build a vanilla kernel build without any non-upstream patches?
%define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
@@ -602,8 +602,6 @@ Patch22000: weird-root-dentry-name-debug.patch
# Patch series from Hans for various backlight and platform driver fixes
Patch26002: samsung-laptop-Add-broken-acpi-video-quirk-for-NC210.patch
-Patch26035: nf_reject_ipv4-module-license-unspecified-taints-ker.patch
-
#rhbz 1149509
Patch26036: USB-quirks-enable-device-qualifier-quirk-for-another.patch
Patch26038: USB-quirks-device-qualifier-quirk-for-another-Elan-t.patch
@@ -618,12 +616,12 @@ Patch26058: asus-nb-wmi-Add-wapf4-quirk-for-the-X550VB.patch
#rhbz 1111138
Patch26059: i8042-Add-notimeout-quirk-for-Fujitsu-Lifebook-A544-.patch
-Patch26060: rcu-More-on-deadlock-between-CPU-hotplug-and-expedit.patch
-Patch26061: rcu-Make-rcu_barrier-understand-about-missing-rcuo-k.patch
-
#rhbz 1157327
Patch26062: quirk-for-Lenovo-Yoga-3-no-rfkill-switch.patch
+#rhbz 1158204 1157157
+Patch26063: x86-microcode-AMD-Fix-early-ucode-loading-on-32-bit.patch
+
# git clone ssh://git.fedorahosted.org/git/kernel-arm64.git, git diff master...devel
Patch30000: kernel-arm64.patch
@@ -1335,8 +1333,6 @@ ApplyPatch ath9k-rx-dma-stop-check.patch
# Patch series from Hans for various backlight and platform driver fixes
ApplyPatch samsung-laptop-Add-broken-acpi-video-quirk-for-NC210.patch
-ApplyPatch nf_reject_ipv4-module-license-unspecified-taints-ker.patch
-
#rhbz 1149509
ApplyPatch USB-quirks-enable-device-qualifier-quirk-for-another.patch
ApplyPatch USB-quirks-device-qualifier-quirk-for-another-Elan-t.patch
@@ -1351,12 +1347,12 @@ ApplyPatch asus-nb-wmi-Add-wapf4-quirk-for-the-X550VB.patch
#rhbz 1111138
ApplyPatch i8042-Add-notimeout-quirk-for-Fujitsu-Lifebook-A544-.patch
-ApplyPatch rcu-More-on-deadlock-between-CPU-hotplug-and-expedit.patch
-ApplyPatch rcu-Make-rcu_barrier-understand-about-missing-rcuo-k.patch
-
#rhbz 1157327
ApplyPatch quirk-for-Lenovo-Yoga-3-no-rfkill-switch.patch
+#rhbz 1158204 1157157
+ApplyPatch x86-microcode-AMD-Fix-early-ucode-loading-on-32-bit.patch
+
%if 0%{?aarch64patches}
ApplyPatch kernel-arm64.patch
%ifnarch aarch64 # this is stupid, but i want to notice before secondary koji does.
@@ -2225,6 +2221,10 @@ fi
# ||----w |
# || ||
%changelog
+* Mon Nov 03 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.18.0-0.rc3.git0.1
+- Linux v3.18-rc3
+- Disable debugging options.
+
* Thu Oct 30 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.18.0-0.rc2.git3.1
- Linux v3.18-rc2-106-ga7ca10f263d7
diff --git a/nf_reject_ipv4-module-license-unspecified-taints-ker.patch b/nf_reject_ipv4-module-license-unspecified-taints-ker.patch
deleted file mode 100644
index f46a0c485..000000000
--- a/nf_reject_ipv4-module-license-unspecified-taints-ker.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From: Pablo Neira <pablo@netfilter.org>
-Date: Fri, 10 Oct 2014 11:56:16 +0200
-Subject: [PATCH] nf_reject_ipv4: module license 'unspecified' taints kernel
-
-On Fri, Oct 10, 2014 at 05:19:04PM +0800, Dave Young wrote:
-> Hi,
->
-> With today's linus tree, I got below kmsg:
-> [ 23.545204] nf_reject_ipv4: module license 'unspecified' taints kernel.
->
-> It could be caused by below commit:
->
-> commit c8d7b98bec43faaa6583c3135030be5eb4693acb
-> Author: Pablo Neira Ayuso <pablo@netfilter.org>
-> Date: Fri Sep 26 14:35:15 2014 +0200
->
-> netfilter: move nf_send_resetX() code to nf_reject_ipvX modules
->
-> Move nf_send_reset() and nf_send_reset6() to nf_reject_ipv4 and
-> nf_reject_ipv6 respectively. This code is shared by x_tables and
-> nf_tables.
->
-> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-
-Patch attached, thanks for reporting.
-
-P.S: Please, Cc netfilter-devel@vger.kernel.org in future reports, so
-we make sure things don't get lost.
-
->From d4358bcf64ba7a64d4de4e1dc5533c4c8f88ea82 Mon Sep 17 00:00:00 2001
-From: Pablo Neira Ayuso <pablo@netfilter.org>
-Date: Fri, 10 Oct 2014 11:25:20 +0200
-Subject: [PATCH] netfilter: missing module license in the nf_reject_ipvX
- modules
-
-[ 23.545204] nf_reject_ipv4: module license 'unspecified' taints kernel.
-
-Reported-by: Dave Young <dyoung@redhat.com>
-Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
----
- net/ipv4/netfilter/nf_reject_ipv4.c | 3 +++
- net/ipv6/netfilter/nf_reject_ipv6.c | 4 ++++
- 2 files changed, 7 insertions(+)
-
-diff --git a/net/ipv4/netfilter/nf_reject_ipv4.c b/net/ipv4/netfilter/nf_reject_ipv4.c
-index b023b4eb1a96..92b303dbd5fc 100644
---- a/net/ipv4/netfilter/nf_reject_ipv4.c
-+++ b/net/ipv4/netfilter/nf_reject_ipv4.c
-@@ -6,6 +6,7 @@
- * published by the Free Software Foundation.
- */
-
-+#include <linux/module.h>
- #include <net/ip.h>
- #include <net/tcp.h>
- #include <net/route.h>
-@@ -125,3 +126,5 @@ void nf_send_reset(struct sk_buff *oldskb, int hook)
- kfree_skb(nskb);
- }
- EXPORT_SYMBOL_GPL(nf_send_reset);
-+
-+MODULE_LICENSE("GPL");
-diff --git a/net/ipv6/netfilter/nf_reject_ipv6.c b/net/ipv6/netfilter/nf_reject_ipv6.c
-index 5f5f0438d74d..20d9defc6c59 100644
---- a/net/ipv6/netfilter/nf_reject_ipv6.c
-+++ b/net/ipv6/netfilter/nf_reject_ipv6.c
-@@ -5,6 +5,8 @@
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- */
-+
-+#include <linux/module.h>
- #include <net/ipv6.h>
- #include <net/ip6_route.h>
- #include <net/ip6_fib.h>
-@@ -161,3 +163,5 @@ void nf_send_reset6(struct net *net, struct sk_buff *oldskb, int hook)
- ip6_local_out(nskb);
- }
- EXPORT_SYMBOL_GPL(nf_send_reset6);
-+
-+MODULE_LICENSE("GPL");
---
-1.9.3
-
diff --git a/rcu-Make-rcu_barrier-understand-about-missing-rcuo-k.patch b/rcu-Make-rcu_barrier-understand-about-missing-rcuo-k.patch
deleted file mode 100644
index ca3592e53..000000000
--- a/rcu-Make-rcu_barrier-understand-about-missing-rcuo-k.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
-Date: Mon, 27 Oct 2014 09:15:54 -0700
-Subject: [PATCH] rcu: Make rcu_barrier() understand about missing rcuo
- kthreads
-
-Commit 35ce7f29a44a (rcu: Create rcuo kthreads only for onlined CPUs)
-avoids creating rcuo kthreads for CPUs that never come online. This
-fixes a bug in many instances of firmware: Instead of lying about their
-age, these systems instead lie about the number of CPUs that they have.
-Before commit 35ce7f29a44a, this could result in huge numbers of useless
-rcuo kthreads being created.
-
-It appears that experience indicates that I should have told the
-people suffering from this problem to fix their broken firmware, but
-I instead produced what turned out to be a partial fix. The missing
-piece supplied by this commit makes sure that rcu_barrier() knows not to
-post callbacks for no-CBs CPUs that have not yet come online, because
-otherwise rcu_barrier() will hang on systems having firmware that lies
-about the number of CPUs.
-
-It is tempting to simply have rcu_barrier() refuse to post a callback on
-any no-CBs CPU that does not have an rcuo kthread. This unfortunately
-does not work because rcu_barrier() is required to wait for all pending
-callbacks. It is therefore required to wait even for those callbacks
-that cannot possibly be invoked. Even if doing so hangs the system.
-
-Given that posting a callback to a no-CBs CPU that does not yet have an
-rcuo kthread can hang rcu_barrier(), It is tempting to report an error
-in this case. Unfortunately, this will result in false positives at
-boot time, when it is perfectly legal to post callbacks to the boot CPU
-before the scheduler has started, in other words, before it is legal
-to invoke rcu_barrier().
-
-So this commit instead has rcu_barrier() avoid posting callbacks to
-CPUs having neither rcuo kthread nor pending callbacks, and has it
-complain bitterly if it finds CPUs having no rcuo kthread but some
-pending callbacks. And when rcu_barrier() does find CPUs having no rcuo
-kthread but pending callbacks, as noted earlier, it has no choice but
-to hang indefinitely.
-
-Reported-by: Yanko Kaneti <yaneti@declera.com>
-Reported-by: Jay Vosburgh <jay.vosburgh@canonical.com>
-Reported-by: Meelis Roos <mroos@linux.ee>
-Reported-by: Eric B Munson <emunson@akamai.com>
-Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
-Tested-by: Eric B Munson <emunson@akamai.com>
----
- include/trace/events/rcu.h | 18 +++++++++---------
- kernel/rcu/tree.c | 15 ++++++++++-----
- kernel/rcu/tree.h | 1 +
- kernel/rcu/tree_plugin.h | 33 +++++++++++++++++++++++++++++++++
- 4 files changed, 53 insertions(+), 14 deletions(-)
-
-diff --git a/include/trace/events/rcu.h b/include/trace/events/rcu.h
-index 9b56f37148cf..e335e7d8c6c2 100644
---- a/include/trace/events/rcu.h
-+++ b/include/trace/events/rcu.h
-@@ -660,18 +660,18 @@ TRACE_EVENT(rcu_torture_read,
- /*
- * Tracepoint for _rcu_barrier() execution. The string "s" describes
- * the _rcu_barrier phase:
-- * "Begin": rcu_barrier_callback() started.
-- * "Check": rcu_barrier_callback() checking for piggybacking.
-- * "EarlyExit": rcu_barrier_callback() piggybacked, thus early exit.
-- * "Inc1": rcu_barrier_callback() piggyback check counter incremented.
-- * "Offline": rcu_barrier_callback() found offline CPU
-- * "OnlineNoCB": rcu_barrier_callback() found online no-CBs CPU.
-- * "OnlineQ": rcu_barrier_callback() found online CPU with callbacks.
-- * "OnlineNQ": rcu_barrier_callback() found online CPU, no callbacks.
-+ * "Begin": _rcu_barrier() started.
-+ * "Check": _rcu_barrier() checking for piggybacking.
-+ * "EarlyExit": _rcu_barrier() piggybacked, thus early exit.
-+ * "Inc1": _rcu_barrier() piggyback check counter incremented.
-+ * "OfflineNoCB": _rcu_barrier() found callback on never-online CPU
-+ * "OnlineNoCB": _rcu_barrier() found online no-CBs CPU.
-+ * "OnlineQ": _rcu_barrier() found online CPU with callbacks.
-+ * "OnlineNQ": _rcu_barrier() found online CPU, no callbacks.
- * "IRQ": An rcu_barrier_callback() callback posted on remote CPU.
- * "CB": An rcu_barrier_callback() invoked a callback, not the last.
- * "LastCB": An rcu_barrier_callback() invoked the last callback.
-- * "Inc2": rcu_barrier_callback() piggyback check counter incremented.
-+ * "Inc2": _rcu_barrier() piggyback check counter incremented.
- * The "cpu" argument is the CPU or -1 if meaningless, the "cnt" argument
- * is the count of remaining callbacks, and "done" is the piggybacking count.
- */
-diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
-index 133e47223095..9815447d22e0 100644
---- a/kernel/rcu/tree.c
-+++ b/kernel/rcu/tree.c
-@@ -3299,11 +3299,16 @@ static void _rcu_barrier(struct rcu_state *rsp)
- continue;
- rdp = per_cpu_ptr(rsp->rda, cpu);
- if (rcu_is_nocb_cpu(cpu)) {
-- _rcu_barrier_trace(rsp, "OnlineNoCB", cpu,
-- rsp->n_barrier_done);
-- atomic_inc(&rsp->barrier_cpu_count);
-- __call_rcu(&rdp->barrier_head, rcu_barrier_callback,
-- rsp, cpu, 0);
-+ if (!rcu_nocb_cpu_needs_barrier(rsp, cpu)) {
-+ _rcu_barrier_trace(rsp, "OfflineNoCB", cpu,
-+ rsp->n_barrier_done);
-+ } else {
-+ _rcu_barrier_trace(rsp, "OnlineNoCB", cpu,
-+ rsp->n_barrier_done);
-+ atomic_inc(&rsp->barrier_cpu_count);
-+ __call_rcu(&rdp->barrier_head,
-+ rcu_barrier_callback, rsp, cpu, 0);
-+ }
- } else if (ACCESS_ONCE(rdp->qlen)) {
- _rcu_barrier_trace(rsp, "OnlineQ", cpu,
- rsp->n_barrier_done);
-diff --git a/kernel/rcu/tree.h b/kernel/rcu/tree.h
-index d03764652d91..bbdc45d8d74f 100644
---- a/kernel/rcu/tree.h
-+++ b/kernel/rcu/tree.h
-@@ -587,6 +587,7 @@ static void print_cpu_stall_info(struct rcu_state *rsp, int cpu);
- static void print_cpu_stall_info_end(void);
- static void zero_cpu_stall_ticks(struct rcu_data *rdp);
- static void increment_cpu_stall_ticks(void);
-+static bool rcu_nocb_cpu_needs_barrier(struct rcu_state *rsp, int cpu);
- static void rcu_nocb_gp_set(struct rcu_node *rnp, int nrq);
- static void rcu_nocb_gp_cleanup(struct rcu_state *rsp, struct rcu_node *rnp);
- static void rcu_init_one_nocb(struct rcu_node *rnp);
-diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h
-index 387dd4599344..c1d7f27bd38f 100644
---- a/kernel/rcu/tree_plugin.h
-+++ b/kernel/rcu/tree_plugin.h
-@@ -2050,6 +2050,33 @@ static void wake_nocb_leader(struct rcu_data *rdp, bool force)
- }
-
- /*
-+ * Does the specified CPU need an RCU callback for the specified flavor
-+ * of rcu_barrier()?
-+ */
-+static bool rcu_nocb_cpu_needs_barrier(struct rcu_state *rsp, int cpu)
-+{
-+ struct rcu_data *rdp = per_cpu_ptr(rsp->rda, cpu);
-+ struct rcu_head *rhp;
-+
-+ /* No-CBs CPUs might have callbacks on any of three lists. */
-+ rhp = ACCESS_ONCE(rdp->nocb_head);
-+ if (!rhp)
-+ rhp = ACCESS_ONCE(rdp->nocb_gp_head);
-+ if (!rhp)
-+ rhp = ACCESS_ONCE(rdp->nocb_follower_head);
-+
-+ /* Having no rcuo kthread but CBs after scheduler starts is bad! */
-+ if (!ACCESS_ONCE(rdp->nocb_kthread) && rhp) {
-+ /* RCU callback enqueued before CPU first came online??? */
-+ pr_err("RCU: Never-onlined no-CBs CPU %d has CB %p\n",
-+ cpu, rhp->func);
-+ WARN_ON_ONCE(1);
-+ }
-+
-+ return !!rhp;
-+}
-+
-+/*
- * Enqueue the specified string of rcu_head structures onto the specified
- * CPU's no-CBs lists. The CPU is specified by rdp, the head of the
- * string by rhp, and the tail of the string by rhtp. The non-lazy/lazy
-@@ -2642,6 +2669,12 @@ static bool init_nocb_callback_list(struct rcu_data *rdp)
-
- #else /* #ifdef CONFIG_RCU_NOCB_CPU */
-
-+static bool rcu_nocb_cpu_needs_barrier(struct rcu_state *rsp, int cpu)
-+{
-+ WARN_ON_ONCE(1); /* Should be dead code. */
-+ return false;
-+}
-+
- static void rcu_nocb_gp_cleanup(struct rcu_state *rsp, struct rcu_node *rnp)
- {
- }
---
-1.9.3
-
diff --git a/rcu-More-on-deadlock-between-CPU-hotplug-and-expedit.patch b/rcu-More-on-deadlock-between-CPU-hotplug-and-expedit.patch
deleted file mode 100644
index 77770ff12..000000000
--- a/rcu-More-on-deadlock-between-CPU-hotplug-and-expedit.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
-Date: Wed, 22 Oct 2014 10:00:05 -0700
-Subject: [PATCH] rcu: More on deadlock between CPU hotplug and expedited grace
- periods
-
-Commit dd56af42bd82 (rcu: Eliminate deadlock between CPU hotplug and
-expedited grace periods) was incomplete. Although it did eliminate
-deadlocks involving synchronize_sched_expedited()'s acquisition of
-cpu_hotplug.lock via get_online_cpus(), it did nothing about the similar
-deadlock involving acquisition of this same lock via put_online_cpus().
-This deadlock became apparent with testing involving hibernation.
-
-This commit therefore changes put_online_cpus() acquisition of this lock
-to be conditional, and increments a new cpu_hotplug.puts_pending field
-in case of acquisition failure. Then cpu_hotplug_begin() checks for this
-new field being non-zero, and applies any changes to cpu_hotplug.refcount.
-
-Reported-by: Jiri Kosina <jkosina@suse.cz>
-Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
-Tested-by: Jiri Kosina <jkosina@suse.cz>
-Tested-by: Borislav Petkov <bp@suse.de>
----
- kernel/cpu.c | 14 +++++++++++++-
- 1 file changed, 13 insertions(+), 1 deletion(-)
-
-diff --git a/kernel/cpu.c b/kernel/cpu.c
-index 356450f09c1f..90a3d017b90c 100644
---- a/kernel/cpu.c
-+++ b/kernel/cpu.c
-@@ -64,6 +64,8 @@ static struct {
- * an ongoing cpu hotplug operation.
- */
- int refcount;
-+ /* And allows lockless put_online_cpus(). */
-+ atomic_t puts_pending;
-
- #ifdef CONFIG_DEBUG_LOCK_ALLOC
- struct lockdep_map dep_map;
-@@ -113,7 +115,11 @@ void put_online_cpus(void)
- {
- if (cpu_hotplug.active_writer == current)
- return;
-- mutex_lock(&cpu_hotplug.lock);
-+ if (!mutex_trylock(&cpu_hotplug.lock)) {
-+ atomic_inc(&cpu_hotplug.puts_pending);
-+ cpuhp_lock_release();
-+ return;
-+ }
-
- if (WARN_ON(!cpu_hotplug.refcount))
- cpu_hotplug.refcount++; /* try to fix things up */
-@@ -155,6 +161,12 @@ void cpu_hotplug_begin(void)
- cpuhp_lock_acquire();
- for (;;) {
- mutex_lock(&cpu_hotplug.lock);
-+ if (atomic_read(&cpu_hotplug.puts_pending)) {
-+ int delta;
-+
-+ delta = atomic_xchg(&cpu_hotplug.puts_pending, 0);
-+ cpu_hotplug.refcount -= delta;
-+ }
- if (likely(!cpu_hotplug.refcount))
- break;
- __set_current_state(TASK_UNINTERRUPTIBLE);
---
-1.9.3
-
diff --git a/silence-fbcon-logo.patch b/silence-fbcon-logo.patch
index 2b907f90b..20a5b6a70 100644
--- a/silence-fbcon-logo.patch
+++ b/silence-fbcon-logo.patch
@@ -9,10 +9,10 @@ Upstream-status: Fedora mustard
1 file changed, 17 insertions(+), 7 deletions(-)
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
-index 57b1d44acbfe..31048a85713d 100644
+index eb976ee3a02f..275f20a643f4 100644
--- a/drivers/video/console/fbcon.c
+++ b/drivers/video/console/fbcon.c
-@@ -638,13 +638,15 @@ static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info,
+@@ -637,13 +637,15 @@ static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info,
kfree(save);
}
@@ -35,7 +35,7 @@ index 57b1d44acbfe..31048a85713d 100644
}
}
#endif /* MODULE */
-@@ -3625,6 +3627,14 @@ static int __init fb_console_init(void)
+@@ -3624,6 +3626,14 @@ static int __init fb_console_init(void)
return 0;
}
diff --git a/sources b/sources
index e1a1baed7..3b77725d0 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,3 @@
fb30d0f29214d75cddd2faa94f73d5cf linux-3.17.tar.xz
159e969cbc27201d8e2fa0f609dc722f perf-man-3.17.tar.gz
-cdc96388a5c70f5f385925caab06db12 patch-3.18-rc2.xz
-997764b2f1f4a94bb11c4f4f19a46c77 patch-3.18-rc2-git3.xz
+84109345d207976c0a899b1d29bfeddd patch-3.18-rc3.xz
diff --git a/x86-microcode-AMD-Fix-early-ucode-loading-on-32-bit.patch b/x86-microcode-AMD-Fix-early-ucode-loading-on-32-bit.patch
new file mode 100644
index 000000000..93887f247
--- /dev/null
+++ b/x86-microcode-AMD-Fix-early-ucode-loading-on-32-bit.patch
@@ -0,0 +1,55 @@
+From: Borislav Petkov <bp@alien8.de>
+Date: Sat, 1 Nov 2014 11:01:00 +0100
+Subject: [PATCH] x86, microcode, AMD: Fix early ucode loading on 32-bit
+
+Hi guys,
+
+please queue this for the next batch to Linus.
+
+Thanks.
+---
+ arch/x86/kernel/cpu/microcode/amd_early.c | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/arch/x86/kernel/cpu/microcode/amd_early.c b/arch/x86/kernel/cpu/microcode/amd_early.c
+index 7aa1acc79789..8b75f7050129 100644
+--- a/arch/x86/kernel/cpu/microcode/amd_early.c
++++ b/arch/x86/kernel/cpu/microcode/amd_early.c
+@@ -348,6 +348,7 @@ int __init save_microcode_in_initrd_amd(void)
+ {
+ unsigned long cont;
+ enum ucode_state ret;
++ u8 *cont_va;
+ u32 eax;
+
+ if (!container)
+@@ -355,13 +356,15 @@ int __init save_microcode_in_initrd_amd(void)
+
+ #ifdef CONFIG_X86_32
+ get_bsp_sig();
+- cont = (unsigned long)container;
++ cont = (unsigned long)container;
++ cont_va = __va(container);
+ #else
+ /*
+ * We need the physical address of the container for both bitness since
+ * boot_params.hdr.ramdisk_image is a physical address.
+ */
+- cont = __pa(container);
++ cont = __pa(container);
++ cont_va = container;
+ #endif
+
+ /*
+@@ -372,6 +375,8 @@ int __init save_microcode_in_initrd_amd(void)
+ if (relocated_ramdisk)
+ container = (u8 *)(__va(relocated_ramdisk) +
+ (cont - boot_params.hdr.ramdisk_image));
++ else
++ container = cont_va;
+
+ if (ucode_new_rev)
+ pr_info("microcode: updated early to new patch_level=0x%08x\n",
+--
+1.9.3
+