forked from rpms/kernel
		
	Linux v4.5-3654-g5cd0911a9e0e
- Fix oops from tsc subsystem (rhbz 1318596) - crypto, security, docs, rproc, dmaengine, powersupply, hsi, vfio, driver-core, tty, char, usb, configfs, ext4, dlm, gfs2, pstore merges
This commit is contained in:
		
							parent
							
								
									47bb021b79
								
							
						
					
					
						commit
						1e6dda8d92
					
				| @ -36,10 +36,9 @@ diff --git a/crypto/asymmetric_keys/Makefile b/crypto/asymmetric_keys/Makefile | |||||||
| index cd1406f9b14a..d9db380bbe53 100644
 | index cd1406f9b14a..d9db380bbe53 100644
 | ||||||
| --- a/crypto/asymmetric_keys/Makefile
 | --- a/crypto/asymmetric_keys/Makefile
 | ||||||
| +++ b/crypto/asymmetric_keys/Makefile
 | +++ b/crypto/asymmetric_keys/Makefile
 | ||||||
| @@ -8,6 +8,7 @@ asymmetric_keys-y := asymmetric_type.o signature.o
 | @@ -7,5 +7,6 @@ asymmetric_keys-y := asymmetric_type.o signature.o
 | ||||||
|   |   | ||||||
|  obj-$(CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE) += public_key.o |  obj-$(CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE) += public_key.o | ||||||
|  obj-$(CONFIG_PUBLIC_KEY_ALGO_RSA) += rsa.o |  | ||||||
| +obj-$(CONFIG_EFI_SIGNATURE_LIST_PARSER) += efi_parser.o
 | +obj-$(CONFIG_EFI_SIGNATURE_LIST_PARSER) += efi_parser.o
 | ||||||
|   |   | ||||||
|  # |  # | ||||||
|  | |||||||
| @ -1195,19 +1195,6 @@ index 5ba2188..ca59458 100644 | |||||||
|  }; |  }; | ||||||
|   |   | ||||||
|  static const struct factors_data sun5i_a13_ahb_data __initconst = { |  static const struct factors_data sun5i_a13_ahb_data __initconst = { | ||||||
| diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig
 |  | ||||||
| index 07d4942..737200f 100644
 |  | ||||||
| --- a/drivers/crypto/Kconfig
 |  | ||||||
| +++ b/drivers/crypto/Kconfig
 |  | ||||||
| @@ -487,7 +487,7 @@ config CRYPTO_DEV_IMGTEC_HASH
 |  | ||||||
|   |  | ||||||
|  config CRYPTO_DEV_SUN4I_SS |  | ||||||
|  	tristate "Support for Allwinner Security System cryptographic accelerator" |  | ||||||
| -	depends on ARCH_SUNXI
 |  | ||||||
| +	depends on ARCH_SUNXI && !64BIT
 |  | ||||||
|  	select CRYPTO_MD5 |  | ||||||
|  	select CRYPTO_SHA1 |  | ||||||
|  	select CRYPTO_AES |  | ||||||
| -- 
 | -- 
 | ||||||
| 2.5.0 | 2.5.0 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -131,6 +131,8 @@ CONFIG_REGULATOR_ACT8865=m | |||||||
| CONFIG_ROCKCHIP_PM_DOMAINS=y | CONFIG_ROCKCHIP_PM_DOMAINS=y | ||||||
| CONFIG_CRYPTO_DEV_ROCKCHIP=m | CONFIG_CRYPTO_DEV_ROCKCHIP=m | ||||||
| CONFIG_ROCKCHIP_EFUSE=m | CONFIG_ROCKCHIP_EFUSE=m | ||||||
|  | CONFIG_PHY_ROCKCHIP_EMMC=m | ||||||
|  | CONFIG_PHY_ROCKCHIP_DP=m | ||||||
| 
 | 
 | ||||||
| # Tegra | # Tegra | ||||||
| CONFIG_ARM_TEGRA_CPUFREQ=y | CONFIG_ARM_TEGRA_CPUFREQ=y | ||||||
|  | |||||||
| @ -430,6 +430,8 @@ CONFIG_RTC_DRV_ARMADA38X=m | |||||||
| # CONFIG_CACHE_FEROCEON_L2 is not set | # CONFIG_CACHE_FEROCEON_L2 is not set | ||||||
| # CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH is not set | # CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH is not set | ||||||
| CONFIG_LEDS_NS2=m | CONFIG_LEDS_NS2=m | ||||||
|  | CONFIG_SERIAL_MVEBU_UART=y | ||||||
|  | # CONFIG_SERIAL_MVEBU_CONSOLE is not set | ||||||
| 
 | 
 | ||||||
| # DRM panels | # DRM panels | ||||||
| CONFIG_DRM_PANEL=y | CONFIG_DRM_PANEL=y | ||||||
|  | |||||||
| @ -225,6 +225,9 @@ CONFIG_FW_LOADER=y | |||||||
| # CONFIG_TEST_FIRMWARE is not set | # CONFIG_TEST_FIRMWARE is not set | ||||||
| # CONFIG_FIRMWARE_IN_KERNEL is not set | # CONFIG_FIRMWARE_IN_KERNEL is not set | ||||||
| CONFIG_EXTRA_FIRMWARE="" | CONFIG_EXTRA_FIRMWARE="" | ||||||
|  | CONFIG_FW_CFG_SYSFS=m | ||||||
|  | # CONFIG_FW_CFG_SYSFS_CMDLINE is not set | ||||||
|  | 
 | ||||||
| 
 | 
 | ||||||
| # Give this a try in rawhide for now | # Give this a try in rawhide for now | ||||||
| # CONFIG_FW_LOADER_USER_HELPER is not set | # CONFIG_FW_LOADER_USER_HELPER is not set | ||||||
| @ -2612,10 +2615,12 @@ CONFIG_SERIAL_8250_DW=y | |||||||
| # CONFIG_SERIAL_8250_INGENIC is not set | # CONFIG_SERIAL_8250_INGENIC is not set | ||||||
| CONFIG_SERIAL_8250_RT288X=y | CONFIG_SERIAL_8250_RT288X=y | ||||||
| CONFIG_SERIAL_8250_MID=y | CONFIG_SERIAL_8250_MID=y | ||||||
|  | CONFIG_SERIAL_8250_MOXA=m | ||||||
| CONFIG_CYCLADES=m | CONFIG_CYCLADES=m | ||||||
| # CONFIG_CYZ_INTR is not set | # CONFIG_CYZ_INTR is not set | ||||||
| # CONFIG_MOXA_INTELLIO is not set | # CONFIG_MOXA_INTELLIO is not set | ||||||
| # CONFIG_MOXA_SMARTIO is not set | # CONFIG_MOXA_SMARTIO is not set | ||||||
|  | # CONFIG_SERIAL_MVEBU_UART is not set | ||||||
| # CONFIG_ISI is not set | # CONFIG_ISI is not set | ||||||
| # CONFIG_RIO is not set | # CONFIG_RIO is not set | ||||||
| CONFIG_SERIAL_JSM=m | CONFIG_SERIAL_JSM=m | ||||||
| @ -5355,6 +5360,8 @@ CONFIG_ASYNC_TX_DMA=y | |||||||
| # CONFIG_HSU_DMA_PCI is not set | # CONFIG_HSU_DMA_PCI is not set | ||||||
| # CONFIG_XGENE_DMA is not set | # CONFIG_XGENE_DMA is not set | ||||||
| # CONFIG_INTEL_IDMA64 is not set | # CONFIG_INTEL_IDMA64 is not set | ||||||
|  | # CONFIG_QCOM_HIDMA_MGMT is not set | ||||||
|  | # CONFIG_QCOM_HIDMA is not set | ||||||
| 
 | 
 | ||||||
| CONFIG_UNUSED_SYMBOLS=y | CONFIG_UNUSED_SYMBOLS=y | ||||||
| 
 | 
 | ||||||
| @ -5809,6 +5816,8 @@ CONFIG_PSTORE_RAM=m | |||||||
| 
 | 
 | ||||||
| # CONFIG_SIGMA is not set | # CONFIG_SIGMA is not set | ||||||
| 
 | 
 | ||||||
|  | # CONFIG_GOLDFISH is not set | ||||||
|  | 
 | ||||||
| CONFIG_CHROME_PLATFORMS=y | CONFIG_CHROME_PLATFORMS=y | ||||||
| 
 | 
 | ||||||
| CONFIG_BCMA=m | CONFIG_BCMA=m | ||||||
| @ -5869,6 +5878,7 @@ CONFIG_MODULE_SIG_SHA256=y | |||||||
| # CONFIG_MODULE_SIG_FORCE is not set | # CONFIG_MODULE_SIG_FORCE is not set | ||||||
| CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" | CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" | ||||||
| CONFIG_SYSTEM_TRUSTED_KEYS="" | CONFIG_SYSTEM_TRUSTED_KEYS="" | ||||||
|  | # CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set | ||||||
| CONFIG_PKCS7_MESSAGE_PARSER=y | CONFIG_PKCS7_MESSAGE_PARSER=y | ||||||
| # CONFIG_PKCS7_TEST_KEY is not set | # CONFIG_PKCS7_TEST_KEY is not set | ||||||
| CONFIG_SIGNED_PE_FILE_VERIFICATION=y | CONFIG_SIGNED_PE_FILE_VERIFICATION=y | ||||||
|  | |||||||
| @ -515,6 +515,7 @@ CONFIG_RCU_FANOUT_LEAF=16 | |||||||
| CONFIG_INTEL_MEI=m | CONFIG_INTEL_MEI=m | ||||||
| CONFIG_INTEL_MEI_ME=m | CONFIG_INTEL_MEI_ME=m | ||||||
| CONFIG_INTEL_MEI_TXE=m | CONFIG_INTEL_MEI_TXE=m | ||||||
|  | CONFIG_INTEL_MEI_WDT=m | ||||||
| 
 | 
 | ||||||
| CONFIG_NFC_MEI_PHY=m | CONFIG_NFC_MEI_PHY=m | ||||||
| CONFIG_NFC_PN544_MEI=m | CONFIG_NFC_PN544_MEI=m | ||||||
|  | |||||||
| @ -63,6 +63,9 @@ CONFIG_INTEL_MIC_BUS=m | |||||||
| CONFIG_INTEL_MIC_X100_DMA=m | CONFIG_INTEL_MIC_X100_DMA=m | ||||||
| CONFIG_MIC_COSM=m | CONFIG_MIC_COSM=m | ||||||
| 
 | 
 | ||||||
|  | CONFIG_VOP_BUS=m | ||||||
|  | CONFIG_VOP=m | ||||||
|  | 
 | ||||||
| # SHPC has half-arsed PCI probing, which makes it load on too many systems | # SHPC has half-arsed PCI probing, which makes it load on too many systems | ||||||
| CONFIG_HOTPLUG_PCI_SHPC=m | CONFIG_HOTPLUG_PCI_SHPC=m | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										2
									
								
								gitrev
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								gitrev
									
									
									
									
									
								
							| @ -1 +1 @@ | |||||||
| 09fd671ccb2475436bd5f597f751ca4a7d177aea | 5cd0911a9e0e408f28079a5e36a981217bf47520 | ||||||
|  | |||||||
							
								
								
									
										13
									
								
								kernel.spec
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								kernel.spec
									
									
									
									
									
								
							| @ -42,7 +42,7 @@ Summary: The Linux kernel | |||||||
| # For non-released -rc kernels, this will be appended after the rcX and | # For non-released -rc kernels, this will be appended after the rcX and | ||||||
| # gitX tags, so a 3 here would become part of release "0.rcX.gitX.3" | # gitX tags, so a 3 here would become part of release "0.rcX.gitX.3" | ||||||
| # | # | ||||||
| %global baserelease 2 | %global baserelease 1 | ||||||
| %global fedora_build %{baserelease} | %global fedora_build %{baserelease} | ||||||
| 
 | 
 | ||||||
| # base_sublevel is the kernel version we're starting with and patching | # base_sublevel is the kernel version we're starting with and patching | ||||||
| @ -69,7 +69,7 @@ Summary: The Linux kernel | |||||||
| # The rc snapshot level | # The rc snapshot level | ||||||
| %define rcrev 0 | %define rcrev 0 | ||||||
| # The git snapshot level | # The git snapshot level | ||||||
| %define gitrev 7 | %define gitrev 8 | ||||||
| # Set rpm version accordingly | # Set rpm version accordingly | ||||||
| %define rpmversion 4.%{upstream_sublevel}.0 | %define rpmversion 4.%{upstream_sublevel}.0 | ||||||
| %endif | %endif | ||||||
| @ -624,6 +624,9 @@ Patch666: ipv4-Dont-do-expensive-useless-work-during-inetdev-des.patch | |||||||
| 
 | 
 | ||||||
| Patch667: 0001-Temp-fix-for-intel_pstate-oopses-and-lockdep-report-.patch | Patch667: 0001-Temp-fix-for-intel_pstate-oopses-and-lockdep-report-.patch | ||||||
| 
 | 
 | ||||||
|  | #rhbz 1318596 | ||||||
|  | Patch668: x86-tsc-Prevent-NULL-pointer-deref-in-calibrate_dela.patch | ||||||
|  | 
 | ||||||
| # END OF PATCH DEFINITIONS | # END OF PATCH DEFINITIONS | ||||||
| 
 | 
 | ||||||
| %endif | %endif | ||||||
| @ -2145,6 +2148,12 @@ fi | |||||||
| # | # | ||||||
| #  | #  | ||||||
| %changelog | %changelog | ||||||
|  | * Fri Mar 18 2016 Josh Boyer <jwboyer@fedoraproject.org> - 4.6.0-0.rc0.git8.1 | ||||||
|  | - Linux v4.5-3654-g5cd0911a9e0e | ||||||
|  | - Fix oops from tsc subsystem (rhbz 1318596) | ||||||
|  | - crypto, security, docs, rproc, dmaengine, powersupply, hsi, vfio, driver-core, | ||||||
|  |   tty, char, usb, configfs, ext4, dlm, gfs2, pstore merges | ||||||
|  | 
 | ||||||
| * Thu Mar 17 2016 Josh Boyer <jwboyer@fedoraproject.org> | * Thu Mar 17 2016 Josh Boyer <jwboyer@fedoraproject.org> | ||||||
| - Add temporary patch to fix intel_pstate oops and lockdep report on | - Add temporary patch to fix intel_pstate oops and lockdep report on | ||||||
|   various atom based CPUs. |   various atom based CPUs. | ||||||
|  | |||||||
							
								
								
									
										2
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								sources
									
									
									
									
									
								
							| @ -1,3 +1,3 @@ | |||||||
| a60d48eee08ec0536d5efb17ca819aef  linux-4.5.tar.xz | a60d48eee08ec0536d5efb17ca819aef  linux-4.5.tar.xz | ||||||
| 6f557fe90b800b615c85c2ca04da6154  perf-man-4.5.tar.gz | 6f557fe90b800b615c85c2ca04da6154  perf-man-4.5.tar.gz | ||||||
| b212237ac2571063fcdf43317dfab7c6  patch-4.5-git7.xz | 2ec8a12d2908ee34366bc3314df03a04  patch-4.5-git8.xz | ||||||
|  | |||||||
							
								
								
									
										47
									
								
								x86-tsc-Prevent-NULL-pointer-deref-in-calibrate_dela.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								x86-tsc-Prevent-NULL-pointer-deref-in-calibrate_dela.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,47 @@ | |||||||
|  | From 6b1292e2e61669457398e3b55e46490e7efca5f0 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Thomas Gleixner <tglx@linutronix.de> | ||||||
|  | Date: Fri, 18 Mar 2016 08:35:29 +0100 | ||||||
|  | Subject: [PATCH] x86/tsc: Prevent NULL pointer deref in | ||||||
|  |  calibrate_delay_is_known() | ||||||
|  | 
 | ||||||
|  | The topology_core_cpumask is used to find a neighbour cpu in | ||||||
|  | calibrate_delay_is_known(). It might not be allocated at the first invocation | ||||||
|  | of that function on the boot cpu, when CONFIG_CPUMASK_OFFSTACK is set. | ||||||
|  | 
 | ||||||
|  | The mask is allocated later in native_smp_prepare_cpus. As a consequence the | ||||||
|  | underlying find_next_bit() call dereferences a NULL pointer. | ||||||
|  | 
 | ||||||
|  | Add a proper check to prevent this. | ||||||
|  | 
 | ||||||
|  | Reported-by: Richard W.M. Jones <rjones@redhat.com> | ||||||
|  | Fixes: c25323c07345 "x86/tsc: Use topology functions" | ||||||
|  | Signed-off-by: Thomas Gleixner <tglx@linutronix.de> | ||||||
|  | Cc: Josh Boyer <jwboyer@fedoraproject.org> | ||||||
|  | ---
 | ||||||
|  |  arch/x86/kernel/tsc.c | 6 +++++- | ||||||
|  |  1 file changed, 5 insertions(+), 1 deletion(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c
 | ||||||
|  | index 56380440d862..99b5e0809ead 100644
 | ||||||
|  | --- a/arch/x86/kernel/tsc.c
 | ||||||
|  | +++ b/arch/x86/kernel/tsc.c
 | ||||||
|  | @@ -1306,11 +1306,15 @@ void __init tsc_init(void)
 | ||||||
|  |  unsigned long calibrate_delay_is_known(void) | ||||||
|  |  { | ||||||
|  |  	int sibling, cpu = smp_processor_id(); | ||||||
|  | +	struct cpumask *mask = topology_core_cpumask(cpu);
 | ||||||
|  |   | ||||||
|  |  	if (!tsc_disabled && !cpu_has(&cpu_data(cpu), X86_FEATURE_CONSTANT_TSC)) | ||||||
|  |  		return 0; | ||||||
|  |   | ||||||
|  | -	sibling = cpumask_any_but(topology_core_cpumask(cpu), cpu);
 | ||||||
|  | +	if (!mask)
 | ||||||
|  | +		return 0;
 | ||||||
|  | +
 | ||||||
|  | +	sibling = cpumask_any_but(mask, cpu);
 | ||||||
|  |  	if (sibling < nr_cpu_ids) | ||||||
|  |  		return cpu_data(sibling).loops_per_jiffy; | ||||||
|  |  	return 0; | ||||||
|  | -- 
 | ||||||
|  | 2.5.0 | ||||||
|  | 
 | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user