Skip to contentSkip to conversation

Linux 5.15.108

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Apr 20, 2023 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 5.15.108 kernel.

All users of the 5.15 kernel series must upgrade.

The updated 5.15.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.15.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary

thanks,

greg k-h

------------

 Documentation/driver-api/generic-counter.rst      |    2 
 Documentation/networking/ip-sysctl.rst            |    2 
 Documentation/sound/hd-audio/models.rst           |    2 
 MAINTAINERS                                       |    1 
 Makefile                                          |    2 
 arch/arm/lib/uaccess_with_memcpy.c                |    4 
 arch/arm64/kvm/pmu-emul.c                         |    1 
 arch/arm64/kvm/sys_regs.c                         |    1 
 arch/powerpc/mm/numa.c                            |    1 
 arch/powerpc/platforms/pseries/papr_scm.c         |    7 
 arch/riscv/kernel/signal.c                        |    9 
 arch/x86/kernel/x86_init.c                        |    4 
 arch/x86/pci/fixup.c                              |   21 
 crypto/asymmetric_keys/pkcs7_verify.c             |   10 
 crypto/asymmetric_keys/verify_pefile.c            |   32 
 drivers/acpi/resource.c                           |    7 
 drivers/clk/sprd/common.c                         |    9 
 drivers/counter/104-quad-8.c                      |  451 ++----
 drivers/counter/Makefile                          |    1 
 drivers/counter/counter-core.c                    |  142 ++
 drivers/counter/counter-sysfs.c                   |  849 ++++++++++++
 drivers/counter/counter-sysfs.h                   |   13 
 drivers/counter/counter.c                         | 1496 ----------------------
 drivers/counter/ftm-quaddec.c                     |   60 
 drivers/counter/intel-qep.c                       |  146 --
 drivers/counter/interrupt-cnt.c                   |   62 
 drivers/counter/microchip-tcb-capture.c           |   91 -
 drivers/counter/stm32-lptimer-cnt.c               |  212 +--
 drivers/counter/stm32-timer-cnt.c                 |  195 +-
 drivers/counter/ti-eqep.c                         |  180 +-
 drivers/firmware/efi/sysfb_efi.c                  |    8 
 drivers/gpu/drm/armada/armada_drv.c               |    1 
 drivers/gpu/drm/drm_panel_orientation_quirks.c    |   13 
 drivers/gpu/drm/i915/display/icl_dsi.c            |   20 
 drivers/gpu/drm/i915/i915_perf.c                  |  155 +-
 drivers/i2c/busses/i2c-hisi.c                     |    7 
 drivers/i2c/busses/i2c-imx-lpi2c.c                |    2 
 drivers/i2c/busses/i2c-ocores.c                   |   35 
 drivers/infiniband/core/cma.c                     |   60 
 drivers/infiniband/core/verbs.c                   |    2 
 drivers/infiniband/hw/irdma/cm.c                  |   16 
 drivers/infiniband/hw/irdma/cm.h                  |    2 
 drivers/infiniband/hw/irdma/hw.c                  |    3 
 drivers/infiniband/hw/mlx5/main.c                 |    4 
 drivers/mtd/mtdblock.c                            |   12 
 drivers/mtd/nand/raw/meson_nand.c                 |    6 
 drivers/mtd/nand/raw/stm32_fmc2_nand.c            |    3 
 drivers/mtd/ubi/build.c                           |   21 
 drivers/mtd/ubi/wl.c                              |    4 
 drivers/net/ethernet/cadence/macb_main.c          |    4 
 drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c   |    8 
 drivers/net/ethernet/sun/niu.c                    |    2 
 drivers/net/phy/nxp-c45-tja11xx.c                 |   14 
 drivers/net/phy/sfp.c                             |   13 
 drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c |    5 
 drivers/net/wireless/intel/iwlwifi/mvm/mvm.h      |    4 
 drivers/net/wireless/intel/iwlwifi/mvm/ops.c      |    5 
 drivers/net/wireless/intel/iwlwifi/mvm/sta.c      |    4 
 drivers/net/wireless/marvell/mwifiex/pcie.c       |    2 
 drivers/net/wireless/marvell/mwifiex/sdio.c       |    2 
 drivers/nvme/host/pci.c                           |   15 
 drivers/pinctrl/pinctrl-amd.c                     |   36 
 drivers/power/supply/cros_usbpd-charger.c         |    2 
 drivers/scsi/ses.c                                |   20 
 drivers/video/fbdev/core/fbmem.c                  |    2 
 fs/btrfs/disk-io.c                                |   17 
 fs/btrfs/super.c                                  |    2 
 include/linux/counter.h                           |  658 ++++-----
 include/linux/counter_enum.h                      |   45 
 include/linux/kexec.h                             |    2 
 include/linux/mfd/stm32-lptimer.h                 |    5 
 include/linux/mfd/stm32-timers.h                  |    4 
 include/linux/trace.h                             |   12 
 kernel/cgroup/cpuset.c                            |    6 
 kernel/kexec.c                                    |   11 
 kernel/kexec_core.c                               |   28 
 kernel/kexec_file.c                               |    4 
 kernel/kexec_internal.h                           |   15 
 kernel/ksysfs.c                                   |    7 
 kernel/sched/fair.c                               |   15 
 kernel/trace/trace.c                              |   41 
 net/9p/trans_xen.c                                |    4 
 net/bluetooth/hidp/core.c                         |    2 
 net/bluetooth/l2cap_core.c                        |   24 
 net/core/skbuff.c                                 |   16 
 net/ipv4/sysctl_net_ipv4.c                        |    3 
 net/ipv4/tcp_ipv4.c                               |    4 
 net/ipv6/udp.c                                    |    8 
 net/mptcp/options.c                               |    5 
 net/mptcp/protocol.c                              |    2 
 net/mptcp/subflow.c                               |   18 
 net/qrtr/af_qrtr.c                                |    8 
 net/sctp/stream_interleave.c                      |    3 
 sound/firewire/tascam/tascam-stream.c             |    2 
 sound/i2c/cs8427.c                                |    7 
 sound/pci/emu10k1/emupcm.c                        |   14 
 sound/pci/hda/patch_sigmatel.c                    |   10 
 tools/lib/bpf/btf_dump.c                          |    7 
 98 files changed, 2579 insertions(+), 2955 deletions(-)

Abhijit (1):
nvme-pci: add NVME_QUIRK_BOGUS_NID for Lexar NM760

Alexander Stein (1):
i2c: imx-lpi2c: clean rx/tx buffers upon new message

Andrew Jeffery (1):
ARM: 9290/1: uaccess: Fix KASAN false-positives

Andrii Nakryiko (1):
libbpf: Fix single-line struct definition output in btf_dump

Aneesh Kumar K.V (1):
powerpc/papr_scm: Update the NUMA distance table for the target node

Arseniy Krasnov (1):
mtd: rawnand: meson: fix bitmask for length in command word

Aymeric Wibo (1):
ACPI: resource: Add Medion S17413 to IRQ override quirk

Bang Li (1):
mtdblock: tolerate corrected bit-flips

Basavaraj Natikar (1):
x86/PCI: Add quirk for AMD XHCI controller that loses MSI-X state in D3hot

Christoph Hellwig (1):
btrfs: fix fast csum implementation detection

Christophe JAILLET (1):
drm/armada: Fix a potential double free in an error handling path

Christophe Kerello (2):
mtd: rawnand: stm32_fmc2: remove unsupported EDO mode
mtd: rawnand: stm32_fmc2: use timings.mode instead of checking tRC_min

Chunyan Zhang (1):
clk: sprd: set max_register according to mapping range

Daniel Vetter (1):
fbmem: Reject FB_ACTIVATE_KD_TEXT from userspace

David Sterba (1):
btrfs: print checksum type and implementation at mount time

Denis Plotnikov (1):
qlcnic: check pci_reset_function result

Duy Truong (1):
nvme-pci: add NVME_QUIRK_BOGUS_NID for T-FORCE Z330 SSD

Eric Dumazet (1):
udp6: fix potential access to stale information

Grant Grundler (1):
power: supply: cros_usbpd: reclassify "default case!" as debug

Greg Kroah-Hartman (1):

      Linux 5.15.108

Gregor Herburger (1):
i2c: ocores: generate stop condition after timeout in polling mode

Hans de Goede (2):
efi: sysfb_efi: Add quirk for Lenovo Yoga Book X91F/L
drm: panel-orientation-quirks: Add quirk for Lenovo Yoga Book X90F

Harshit Mogalapalli (1):
niu: Fix missing unwind goto in niu_alloc_channels()

Ivan Bornyakov (1):

      net: sfp: initialize sfp->i2c_block_size at sfp allocation

Jani Nikula (1):
drm/i915/dsi: fix DSS CTL register offsets for TGL+

Jiri Kosina (1):
scsi: ses: Handle enclosure with just a primary component gracefully

Johannes Berg (1):

      wifi: iwlwifi: mvm: fix mvmtxq->stopped handling

Juraj Pecigos (1):
nvme-pci: mark Lexar NM760 as IGNORE_DEV_SUBNQN

Kornel Dulęba (1):
Revert "pinctrl: amd: Disable and mask interrupts on resume"

Krzysztof Kozlowski (1):
wifi: mwifiex: mark OF related data as maybe unused

Liang Chen (1):
skbuff: Fix a race between coalescing and releasing SKBs

Luiz Augusto von Dentz (1):

      Bluetooth: L2CAP: Fix use-after-free in l2cap_disconnect_{req,rsp}

Maher Sanalla (1):
IB/mlx5: Add support for 400G_8X lane speed

Mark Zhang (1):
RDMA/cma: Allow UD qp_type to join multicast only

Martin KaFai Lau (1):
bpf: tcp: Use sock_gen_put instead of sock_put in bpf_iter_tcp

Mathis Salmen (1):
riscv: add icache flush for nommu sigreturn trampoline

Matija Glavinic Pecotic (1):
x86/rtc: Remove __init for runtime functions

Min Li (2):
Bluetooth: Fix race condition in hidp_session_thread drm/i915: fix race condition UAF in i915_perf_add_config_ioctl

Mustafa Ismail (2):
RDMA/irdma: Fix memory leak of PBLE objects RDMA/irdma: Increase iWARP CM default rexmit count

Ning Wang (1):
nvme-pci: avoid the deepest sleep state on ZHITAI TiPro7000 SSDs

Oswald Buddenhagen (5):
ALSA: emu10k1: fix capture interrupt handler unlinking
ALSA: hda/sigmatel: add pin overrides for Intel DP45SG motherboard
ALSA: i2c/cs8427: fix iec958 mixer control deactivation
ALSA: emu10k1: don't create old pass-through playback device on Audigy
ALSA: hda/sigmatel: fix S/PDIF out on Intel D*45* motherboards

Paolo Abeni (2):
mptcp: use mptcp_schedule_work instead of open-coding it
mptcp: stricter state check in mptcp_worker

Radu Pirea (OSS) (2):
net: phy: nxp-c45-tja11xx: add remove callback
net: phy: nxp-c45-tja11xx: fix unsigned long multiplication overflow

Randy Dunlap (1):
counter: fix docum. build problems after filename change

Reiji Watanabe (1):
KVM: arm64: PMU: Restore the guest's EL0 event counting after migration

Robbie Harwood (2):
verify_pefile: relax wrapper length check
asymmetric_keys: log on fatal failures in PE/pkcs7

Roman Gushchin (1):
net: macb: fix a memory corruption in extended buffer descriptor mode

Saravanan Vajravel (1):
RDMA/core: Fix GID entry ref leak when create_ah fails

Shyamin Ayesh (1):
nvme-pci: add NVME_QUIRK_BOGUS_NID for Lexar NM610

Stefan Reiter (1):
nvme-pci: add NVME_QUIRK_BOGUS_NID for ADATA XPG GAMMIX S50

Steven Rostedt (Google) (2):
tracing: Add trace_array_puts() to write into instance
tracing: Have tracing_snapshot_instance_cond() write errors to the appropriate instance

Tatyana Nikolova (1):
RDMA/irdma: Add ipv4 check to irdma_find_listener()

Tobias Gruetzmacher (1):
nvme-pci: Crucial P2 has bogus namespace ids

Umesh Nerlige Ramappa (1):
i915/perf: Replace DRM_DEBUG with driver specific drm_dbg call

Valentin Schneider (2):
kexec: turn all kexec_mutex acquisitions into trylocks panic, kexec: make __crash_kexec() NMI safe

Vincent Guittot (1):
sched/fair: Fix imbalance overflow

Waiman Long (1):
cgroup/cpuset: Wake up cpuset_attach_wq tasks in cpuset_cancel_attach()

William Breathitt Gray (4):
counter: stm32-lptimer-cnt: Provide defines for clock polarities
counter: stm32-timer-cnt: Provide defines for slave mode selection
counter: Internalize sysfs interface code
counter: 104-quad-8: Fix Synapse action reported for Index signals

Xi Ruoyao (1):
nvme-pci: avoid the deepest sleep state on ZHITAI TiPro5000 SSDs

Xin Long (1):
sctp: fix a potential overflow in sctp_ifwdtsn_skip

Xu Biang (1):
ALSA: firewire-tascam: add missing unwind goto in snd_tscm_stream_start_duplex()

Yanteng Si (1):
counter: Add the necessary colons and indents to the comments of counter_compi

Yicong Yang (1):
i2c: hisi: Avoid redundant interrupts

YueHaibing (1):
tcp: restrict net.ipv4.tcp_app_win

ZhaoLong Wang (1):
ubi: Fix deadlock caused by recursively holding work_sem

Zheng Wang (1):
9p/xen : Fix use after free bug in xen_9pfs_front_remove due to race condition

Zhihao Cheng (1):
ubi: Fix failure attaching when vid_hdr offset equals to (sub)page size

Ziyang Xuan (1):
net: qrtr: Fix an uninit variable access bug in qrtr_tx_resume()

zgpeng (1):
sched/fair: Move calculate of avg_load to a better location

author maintainer
#1 lore raw
Documentation/driver-api/generic-counter.rst +1 -1
index 64fe7db080e5..252aeb639bc4 100644
@@ -247,7 +247,7 @@ for defining a counter device.
 .. kernel-doc:: include/linux/counter.h
    :internal:
 
-.. kernel-doc:: drivers/counter/counter.c
+.. kernel-doc:: drivers/counter/counter-core.c
    :export:
 
 Implementation
Documentation/networking/ip-sysctl.rst +2 -0
index ba0e8e6337c0..7890b395e629 100644
@@ -322,6 +322,8 @@ tcp_app_win - INTEGER
 	Reserve max(window/2^tcp_app_win, mss) of window for application
 	buffer. Value 0 is special, it means that nothing is reserved.
 
+	Possible values are [0, 31], inclusive.
+
 	Default: 31
 
 tcp_autocorking - BOOLEAN
Documentation/sound/hd-audio/models.rst +1 -1
index 9b52f50a6854..120430450014 100644
@@ -704,7 +704,7 @@ ref
 no-jd
     BIOS setup but without jack-detection
 intel
-    Intel DG45* mobos
+    Intel D*45* mobos
 dell-m6-amic
     Dell desktops/laptops with analog mics
 dell-m6-dmic
MAINTAINERS +0 -1
index d0884a5d49b9..2d3d2155c744 100644
@@ -4813,7 +4813,6 @@ F:	Documentation/ABI/testing/sysfs-bus-counter
 F:	Documentation/driver-api/generic-counter.rst
 F:	drivers/counter/
 F:	include/linux/counter.h
-F:	include/linux/counter_enum.h
 
 CP2615 I2C DRIVER
 M:	Bence Csókás <[email protected]>
Makefile +1 -1
index b06324521d28..49ae089784a6 100644
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 VERSION = 5
 PATCHLEVEL = 15
-SUBLEVEL = 107
+SUBLEVEL = 108
 EXTRAVERSION =
 NAME = Trick or Treat
 
arch/arm/lib/uaccess_with_memcpy.c +2 -2
index 106f83a5ea6d..35e03f6a6212 100644
@@ -121,7 +121,7 @@ __copy_to_user_memcpy(void __user *to, const void *from, unsigned long n)
 			tocopy = n;
 
 		ua_flags = uaccess_save_and_enable();
-		memcpy((void *)to, from, tocopy);
+		__memcpy((void *)to, from, tocopy);
 		uaccess_restore(ua_flags);
 		to += tocopy;
 		from += tocopy;
@@ -188,7 +188,7 @@ __clear_user_memset(void __user *addr, unsigned long n)
 			tocopy = n;
 
 		ua_flags = uaccess_save_and_enable();
-		memset((void *)addr, 0, tocopy);
+		__memset((void *)addr, 0, tocopy);
 		uaccess_restore(ua_flags);
 		addr += tocopy;
 		n -= tocopy;
arch/arm64/kvm/pmu-emul.c +1 -0
index 2af3c37445e0..886048c08363 100644
@@ -554,6 +554,7 @@ void kvm_pmu_software_increment(struct kvm_vcpu *vcpu, u64 val)
 			__vcpu_sys_reg(vcpu, PMOVSSET_EL0) |= BIT(i);
 		}
 	}
+	kvm_vcpu_pmu_restore_guest(vcpu);
 }
 
 /**
arch/arm64/kvm/sys_regs.c +0 -1
index c11612db4a37..d00170d7ddf5 100644
@@ -702,7 +702,6 @@ static bool access_pmcr(struct kvm_vcpu *vcpu, struct sys_reg_params *p,
 			val |= ARMV8_PMU_PMCR_LC;
 		__vcpu_sys_reg(vcpu, PMCR_EL0) = val;
 		kvm_pmu_handle_pmcr(vcpu, val);
-		kvm_vcpu_pmu_restore_guest(vcpu);
 	} else {
 		/* PMCR.P & PMCR.C are RAZ */
 		val = __vcpu_sys_reg(vcpu, PMCR_EL0)
arch/powerpc/mm/numa.c +1 -0
index 5fb829256b59..9c038c8cebeb 100644
@@ -367,6 +367,7 @@ void update_numa_distance(struct device_node *node)
 	WARN(numa_distance_table[nid][nid] == -1,
 	     "NUMA distance details for node %d not provided\n", nid);
 }
+EXPORT_SYMBOL_GPL(update_numa_distance);
 
 /*
  * ibm,numa-lookup-index-table= {N, domainid1, domainid2, ..... domainidN}
arch/powerpc/platforms/pseries/papr_scm.c +7 -0
index f48e87ac89c9..3cfcc748052e 100644
@@ -1159,6 +1159,13 @@ static int papr_scm_probe(struct platform_device *pdev)
 		return -ENODEV;
 	}
 
+	/*
+	 * open firmware platform device create won't update the NUMA 
+	 * distance table. For PAPR SCM devices we use numa_map_to_online_node()
+	 * to find the nearest online NUMA node and that requires correct
+	 * distance table information.
+	 */
+	update_numa_distance(dn);
 
 	p = kzalloc(sizeof(*p), GFP_KERNEL);
 	if (!p)
arch/riscv/kernel/signal.c +8 -1
index f8fb85dc94b7..8892569aad23 100644
@@ -16,6 +16,7 @@
 #include <asm/vdso.h>
 #include <asm/switch_to.h>
 #include <asm/csr.h>
+#include <asm/cacheflush.h>
 
 extern u32 __user_rt_sigreturn[2];
 
@@ -178,6 +179,7 @@ static int setup_rt_frame(struct ksignal *ksig, sigset_t *set,
 {
 	struct rt_sigframe __user *frame;
 	long err = 0;
+	unsigned long __maybe_unused addr;
 
 	frame = get_sigframe(ksig, regs, sizeof(*frame));
 	if (!access_ok(frame, sizeof(*frame)))
@@ -206,7 +208,12 @@ static int setup_rt_frame(struct ksignal *ksig, sigset_t *set,
 	if (copy_to_user(&frame->sigreturn_code, __user_rt_sigreturn,
 			 sizeof(frame->sigreturn_code)))
 		return -EFAULT;
-	regs->ra = (unsigned long)&frame->sigreturn_code;
+
+	addr = (unsigned long)&frame->sigreturn_code;
+	/* Make sure the two instructions are pushed to icache. */
+	flush_icache_range(addr, addr + sizeof(frame->sigreturn_code));
+
+	regs->ra = addr;
 #endif /* CONFIG_MMU */
 
 	/*
arch/x86/kernel/x86_init.c +2 -2
index 8b395821cb8d..d3e3b16ea9cf 100644
@@ -32,8 +32,8 @@ static int __init iommu_init_noop(void) { return 0; }
 static void iommu_shutdown_noop(void) { }
 bool __init bool_x86_init_noop(void) { return false; }
 void x86_op_int_noop(int cpu) { }
-static __init int set_rtc_noop(const struct timespec64 *now) { return -EINVAL; }
-static __init void get_rtc_noop(struct timespec64 *now) { }
+static int set_rtc_noop(const struct timespec64 *now) { return -EINVAL; }
+static void get_rtc_noop(struct timespec64 *now) { }
 
 static __initconst const struct of_device_id of_cmos_match[] = {
 	{ .compatible = "motorola,mc146818" },
arch/x86/pci/fixup.c +21 -0
index 615a76d70019..bf5161dcf89e 100644
@@ -7,6 +7,7 @@
 #include <linux/dmi.h>
 #include <linux/pci.h>
 #include <linux/vgaarb.h>
+#include <asm/amd_nb.h>
 #include <asm/hpet.h>
 #include <asm/pci_x86.h>
 
@@ -824,3 +825,23 @@ static void rs690_fix_64bit_dma(struct pci_dev *pdev)
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x7910, rs690_fix_64bit_dma);
 
 #endif
+
+#ifdef CONFIG_AMD_NB
+
+#define AMD_15B8_RCC_DEV2_EPF0_STRAP2                                  0x10136008
+#define AMD_15B8_RCC_DEV2_EPF0_STRAP2_NO_SOFT_RESET_DEV2_F0_MASK       0x00000080L
+
+static void quirk_clear_strap_no_soft_reset_dev2_f0(struct pci_dev *dev)
+{
+	u32 data;
+
+	if (!amd_smn_read(0, AMD_15B8_RCC_DEV2_EPF0_STRAP2, &data)) {
+		data &= ~AMD_15B8_RCC_DEV2_EPF0_STRAP2_NO_SOFT_RESET_DEV2_F0_MASK;
+		if (amd_smn_write(0, AMD_15B8_RCC_DEV2_EPF0_STRAP2, data))
+			pci_err(dev, "Failed to write data 0x%x\n", data);
+	} else {
+		pci_err(dev, "Failed to read data\n");
+	}
+}
+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, 0x15b8, quirk_clear_strap_no_soft_reset_dev2_f0);
+#endif
crypto/asymmetric_keys/pkcs7_verify.c +5 -5
index f94a1d1ad3a6..df279538cead 100644
@@ -79,16 +79,16 @@ static int pkcs7_digest(struct pkcs7_message *pkcs7,
 		}
 
 		if (sinfo->msgdigest_len != sig->digest_size) {
-			pr_debug("Sig %u: Invalid digest size (%u)\n",
-				 sinfo->index, sinfo->msgdigest_len);
+			pr_warn("Sig %u: Invalid digest size (%u)\n",
+				sinfo->index, sinfo->msgdigest_len);
 			ret = -EBADMSG;
 			goto error;
 		}
 
 		if (memcmp(sig->digest, sinfo->msgdigest,
 			   sinfo->msgdigest_len) != 0) {
-			pr_debug("Sig %u: Message digest doesn't match\n",
-				 sinfo->index);
+			pr_warn("Sig %u: Message digest doesn't match\n",
+				sinfo->index);
 			ret = -EKEYREJECTED;
 			goto error;
 		}
@@ -481,7 +481,7 @@ int pkcs7_supply_detached_data(struct pkcs7_message *pkcs7,
 			       const void *data, size_t datalen)
 {
 	if (pkcs7->data) {
-		pr_debug("Data already supplied\n");
+		pr_warn("Data already supplied\n");
 		return -EINVAL;
 	}
 	pkcs7->data = data;
crypto/asymmetric_keys/verify_pefile.c +18 -14
index 7553ab18db89..22beaf2213a2 100644
@@ -74,7 +74,7 @@ static int pefile_parse_binary(const void *pebuf, unsigned int pelen,
 		break;
 
 	default:
-		pr_debug("Unknown PEOPT magic = %04hx\n", pe32->magic);
+		pr_warn("Unknown PEOPT magic = %04hx\n", pe32->magic);
 		return -ELIBBAD;
 	}
 
@@ -95,7 +95,7 @@ static int pefile_parse_binary(const void *pebuf, unsigned int pelen,
 	ctx->certs_size = ddir->certs.size;
 
 	if (!ddir->certs.virtual_address || !ddir->certs.size) {
-		pr_debug("Unsigned PE binary\n");
+		pr_warn("Unsigned PE binary\n");
 		return -ENODATA;
 	}
 
@@ -127,7 +127,7 @@ static int pefile_strip_sig_wrapper(const void *pebuf,
 	unsigned len;
 
 	if (ctx->sig_len < sizeof(wrapper)) {
-		pr_debug("Signature wrapper too short\n");
+		pr_warn("Signature wrapper too short\n");
 		return -ELIBBAD;
 	}
 
@@ -135,19 +135,23 @@ static int pefile_strip_sig_wrapper(const void *pebuf,
 	pr_debug("sig wrapper = { %x, %x, %x }\n",
 		 wrapper.length, wrapper.revision, wrapper.cert_type);
 
-	/* Both pesign and sbsign round up the length of certificate table
-	 * (in optional header data directories) to 8 byte alignment.
+	/* sbsign rounds up the length of certificate table (in optional
+	 * header data directories) to 8 byte alignment.  However, the PE
+	 * specification states that while entries are 8-byte aligned, this is
+	 * not included in their length, and as a result, pesign has not
+	 * rounded up since 0.110.
 	 */
-	if (round_up(wrapper.length, 8) != ctx->sig_len) {
-		pr_debug("Signature wrapper len wrong\n");
+	if (wrapper.length > ctx->sig_len) {
+		pr_warn("Signature wrapper bigger than sig len (%x > %x)\n",
+			ctx->sig_len, wrapper.length);
 		return -ELIBBAD;
 	}
 	if (wrapper.revision != WIN_CERT_REVISION_2_0) {
-		pr_debug("Signature is not revision 2.0\n");
+		pr_warn("Signature is not revision 2.0\n");
 		return -ENOTSUPP;
 	}
 	if (wrapper.cert_type != WIN_CERT_TYPE_PKCS_SIGNED_DATA) {
-		pr_debug("Signature certificate type is not PKCS\n");
+		pr_warn("Signature certificate type is not PKCS\n");
 		return -ENOTSUPP;
 	}
 
@@ -160,7 +164,7 @@ static int pefile_strip_sig_wrapper(const void *pebuf,
 	ctx->sig_offset += sizeof(wrapper);
 	ctx->sig_len -= sizeof(wrapper);
 	if (ctx->sig_len < 4) {
-		pr_debug("Signature data missing\n");
+		pr_warn("Signature data missing\n");
 		return -EKEYREJECTED;
 	}
 
@@ -194,7 +198,7 @@ static int pefile_strip_sig_wrapper(const void *pebuf,
 		return 0;
 	}
 not_pkcs7:
-	pr_debug("Signature data not PKCS#7\n");
+	pr_warn("Signature data not PKCS#7\n");
 	return -ELIBBAD;
 }
 
@@ -337,8 +341,8 @@ static int pefile_digest_pe(const void *pebuf, unsigned int pelen,
 	digest_size = crypto_shash_digestsize(tfm);
 
 	if (digest_size != ctx->digest_len) {
-		pr_debug("Digest size mismatch (%zx != %x)\n",
-			 digest_size, ctx->digest_len);
+		pr_warn("Digest size mismatch (%zx != %x)\n",
+			digest_size, ctx->digest_len);
 		ret = -EBADMSG;
 		goto error_no_desc;
 	}
@@ -369,7 +373,7 @@ static int pefile_digest_pe(const void *pebuf, unsigned int pelen,
 	 * PKCS#7 certificate.
 	 */
 	if (memcmp(digest, ctx->digest, ctx->digest_len) != 0) {
-		pr_debug("Digest mismatch\n");
+		pr_warn("Digest mismatch\n");
 		ret = -EKEYREJECTED;
 	} else {
 		pr_debug("The digests match!\n");
drivers/acpi/resource.c +7 -0
index 3b9f89487336..803dc6afa6d6 100644
@@ -396,6 +396,13 @@ static const struct dmi_system_id medion_laptop[] = {
 			DMI_MATCH(DMI_BOARD_NAME, "M17T"),
 		},
 	},
+	{
+		.ident = "MEDION S17413",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "MEDION"),
+			DMI_MATCH(DMI_BOARD_NAME, "M1xA"),
+		},
+	},
 	{ }
 };
 
drivers/clk/sprd/common.c +6 -3
index ce81e4087a8f..2bfbab8db94b 100644
@@ -17,7 +17,6 @@ static const struct regmap_config sprdclk_regmap_config = {
 	.reg_bits	= 32,
 	.reg_stride	= 4,
 	.val_bits	= 32,
-	.max_register	= 0xffff,
 	.fast_io	= true,
 };
 
@@ -43,6 +42,8 @@ int sprd_clk_regmap_init(struct platform_device *pdev,
 	struct device *dev = &pdev->dev;
 	struct device_node *node = dev->of_node, *np;
 	struct regmap *regmap;
+	struct resource *res;
+	struct regmap_config reg_config = sprdclk_regmap_config;
 
 	if (of_find_property(node, "sprd,syscon", NULL)) {
 		regmap = syscon_regmap_lookup_by_phandle(node, "sprd,syscon");
@@ -59,12 +60,14 @@ int sprd_clk_regmap_init(struct platform_device *pdev,
 			return PTR_ERR(regmap);
 		}
 	} else {
-		base = devm_platform_ioremap_resource(pdev, 0);
+		base = devm_platform_get_and_ioremap_resource(pdev, 0, &res);
 		if (IS_ERR(base))
 			return PTR_ERR(base);
 
+		reg_config.max_register = resource_size(res) - reg_config.reg_stride;
+
 		regmap = devm_regmap_init_mmio(&pdev->dev, base,
-					       &sprdclk_regmap_config);
+					       &reg_config);
 		if (IS_ERR(regmap)) {
 			pr_err("failed to init regmap\n");
 			return PTR_ERR(regmap);
drivers/counter/104-quad-8.c +192 -259

797 lines not on this page · raw message

drivers/counter/Makefile +1 -0
index 19742e6f5e3e..1ab7e087fdc2 100644
@@ -4,6 +4,7 @@
 #
 
 obj-$(CONFIG_COUNTER) += counter.o
+counter-y := counter-core.o counter-sysfs.o
 
 obj-$(CONFIG_104_QUAD_8)	+= 104-quad-8.o
 obj-$(CONFIG_INTERRUPT_CNT)		+= interrupt-cnt.o
drivers/counter/counter-core.c new file +142 -0

142 lines not on this page · raw message

drivers/counter/counter-sysfs.c new file +849 -0

849 lines not on this page · raw message

drivers/counter/counter-sysfs.h new file +13 -0
new file mode 100644
index 000000000000..14fe566aca0e
@@ -0,0 +1,13 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Counter sysfs interface
+ * Copyright (C) 2020 William Breathitt Gray
+ */
+#ifndef _COUNTER_SYSFS_H_
+#define _COUNTER_SYSFS_H_
+
+#include <linux/counter.h>
+
+int counter_sysfs_add(struct counter_device *const counter);
+
+#endif /* _COUNTER_SYSFS_H_ */
drivers/counter/counter.c deleted +0 -1496

877 lines not on this page · raw message

drivers/counter/ftm-quaddec.c +23 -37

60 lines not on this page · raw message

drivers/counter/intel-qep.c +62 -84

146 lines not on this page · raw message

drivers/counter/interrupt-cnt.c +26 -36

62 lines not on this page · raw message

drivers/counter/microchip-tcb-capture.c +39 -52

91 lines not on this page · raw message

drivers/counter/stm32-lptimer-cnt.c +100 -112

212 lines not on this page · raw message

drivers/counter/stm32-timer-cnt.c +76 -119

195 lines not on this page · raw message

drivers/counter/ti-eqep.c +98 -82

180 lines not on this page · raw message

drivers/firmware/efi/sysfb_efi.c +8 -0
index 7ac757843dcf..24d6f6e08df8 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/armada/armada_drv.c +0 -1
index 8e3e98f13db4..54168134d9b9 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/drm_panel_orientation_quirks.c +10 -3
index 8768073794fb..6106fa7c4302 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/icl_dsi.c +16 -4
index 2601873e1546..26dd5a2bd502 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/i915_perf.c +102 -53

155 lines not on this page · raw message

drivers/i2c/busses/i2c-hisi.c +7 -0
index 72e43ecaff13..1f406e6f4ece 100644

Lines of this file are not shown. View the raw message.

drivers/i2c/busses/i2c-imx-lpi2c.c +2 -0
index 2018dbcf241e..d45ec26d51cb 100644

Lines of this file are not shown. View the raw message.

drivers/i2c/busses/i2c-ocores.c +19 -16
index a0af027db04c..2e575856c5cd 100644

Lines of this file are not shown. View the raw message.

drivers/infiniband/core/cma.c +34 -26

60 lines not on this page · raw message

drivers/infiniband/core/verbs.c +2 -0
index f0c07e4ba438..cae013130eb1 100644

Lines of this file are not shown. View the raw message.

drivers/infiniband/hw/irdma/cm.c +10 -6
index a8ec3d8f6e46..64d4bb0e9a12 100644

Lines of this file are not shown. View the raw message.

drivers/infiniband/hw/irdma/cm.h +1 -1
index d03cd29333ea..2b0fb5a6b300 100644

Lines of this file are not shown. View the raw message.

drivers/infiniband/hw/irdma/hw.c +3 -0
index b918f80d2e2c..3b070cb3c4da 100644

Lines of this file are not shown. View the raw message.

drivers/infiniband/hw/mlx5/main.c +4 -0
index 827ee3040bea..2361caa38547 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/mtdblock.c +8 -4
index 1e94e7d10b8b..a0a1194dc1d9 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/nand/raw/meson_nand.c +3 -3
index 4fd20e70aabd..c66edabec9f1 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/nand/raw/stm32_fmc2_nand.c +3 -0
index 1c277fbb91f2..1ac8c4887ce0 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/ubi/build.c +15 -6
index 3499ff2649d5..762dc14aef74 100644

Lines of this file are not shown. View the raw message.

drivers/mtd/ubi/wl.c +2 -2
index 2ee0e60c43c2..4427018ad4d9 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/cadence/macb_main.c +4 -0
index 906c5bbefaac..ddadb1822d89 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/qlogic/qlcnic/qlcnic_ctx.c +7 -1
index 87f76bac2e46..eb827b86ecae 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/sun/niu.c +1 -1
index a68a01d1b2b1..3fdc7c9824a3 100644

Lines of this file are not shown. View the raw message.

drivers/net/phy/nxp-c45-tja11xx.c +13 -1
index fbb64aa32404..a3196c04caf6 100644

Lines of this file are not shown. View the raw message.

drivers/net/phy/sfp.c +8 -5
index 028a5df5c538..d5918605eae6 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c +4 -1
index 56c7a68a6491..fa7de3e47b8c 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/intel/iwlwifi/mvm/mvm.h +3 -1
index 46af8dd2dc93..6b59425dbdb1 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/intel/iwlwifi/mvm/ops.c +4 -1
index eeb81808db08..3ee4b3ecd0c8 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/intel/iwlwifi/mvm/sta.c +2 -2
index 1bb456daff9e..45dfee3ad8c6 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/marvell/mwifiex/pcie.c +1 -1
index d5fb29400bad..94a6bbcae2d3 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/marvell/mwifiex/sdio.c +1 -1
index 7fb6eef40928..b09e60fedeb1 100644

Lines of this file are not shown. View the raw message.

drivers/nvme/host/pci.c +15 -0
index 6539332b42b3..c3acef6c3291 100644

Lines of this file are not shown. View the raw message.

drivers/pinctrl/pinctrl-amd.c +16 -20
index 0a77b8426817..52d1fe5ec3e7 100644

Lines of this file are not shown. View the raw message.

drivers/power/supply/cros_usbpd-charger.c +1 -1
index d89e08efd2ad..0a4f02e4ae7b 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/ses.c +8 -12
index 1707d6d144d2..6a1428d453f3 100644

Lines of this file are not shown. View the raw message.

drivers/video/fbdev/core/fbmem.c +2 -0
index 528c87ff14d8..1b288a613a6e 100644

Lines of this file are not shown. View the raw message.

fs/btrfs/disk-io.c +17 -0
index ce2da06c9d7b..a4bfa5acaf9f 100644

Lines of this file are not shown. View the raw message.

fs/btrfs/super.c +0 -2
index 4ff55457f902..ea23b83fc96b 100644

Lines of this file are not shown. View the raw message.

include/linux/counter.h +338 -320

658 lines not on this page · raw message

include/linux/counter_enum.h deleted +0 -45

45 lines not on this page · raw message

include/linux/kexec.h +1 -1
index cf042d41c87b..88c289ce3039 100644

Lines of this file are not shown. View the raw message.

include/linux/mfd/stm32-lptimer.h +5 -0
index 90b20550c1c8..06d3f11dc3c9 100644

Lines of this file are not shown. View the raw message.

include/linux/mfd/stm32-timers.h +4 -0
index f8db83aedb2b..5f5c43fd69dd 100644

Lines of this file are not shown. View the raw message.

include/linux/trace.h +12 -0
index 80ffda871749..2a70a447184c 100644

Lines of this file are not shown. View the raw message.

kernel/cgroup/cpuset.c +5 -1
index 428820bf141d..fb895eaf3a7c 100644

Lines of this file are not shown. View the raw message.

kernel/kexec.c +4 -7
index b5e40f069768..cb8e6e6f983c 100644

Lines of this file are not shown. View the raw message.

kernel/kexec_core.c +16 -12
index 5a5d192a89ac..bdc2d952911c 100644

Lines of this file are not shown. View the raw message.

kernel/kexec_file.c +2 -2
index f7a4fd4d243f..1fb7ff690577 100644

Lines of this file are not shown. View the raw message.

kernel/kexec_internal.h +14 -1
index 48aaf2ac0d0d..74da1409cd14 100644

Lines of this file are not shown. View the raw message.

kernel/ksysfs.c +6 -1
index 35859da8bd4f..e20c19e3ba49 100644

Lines of this file are not shown. View the raw message.

kernel/sched/fair.c +13 -2
index 8f5a5e72bdb3..7ac00dede846 100644

Lines of this file are not shown. View the raw message.

kernel/trace/trace.c +24 -17

41 lines not on this page · raw message

net/9p/trans_xen.c +4 -0
index 9e4da8c1b907..99e6b2483311 100644

Lines of this file are not shown. View the raw message.

net/bluetooth/hidp/core.c +1 -1
index 80848dfc01db..021ab957a5c4 100644

Lines of this file are not shown. View the raw message.

net/bluetooth/l2cap_core.c +6 -18
index 0194c25b8dc5..446343348329 100644

Lines of this file are not shown. View the raw message.

net/core/skbuff.c +8 -8
index 2d3f82b62236..46cc3a7632f7 100644

Lines of this file are not shown. View the raw message.

net/ipv4/sysctl_net_ipv4.c +3 -0
index 495c58e442e2..1f22e72074fd 100644

Lines of this file are not shown. View the raw message.

net/ipv4/tcp_ipv4.c +2 -2
index 0e1fbad17dbe..63472c9b39ae 100644

Lines of this file are not shown. View the raw message.

net/ipv6/udp.c +5 -3
index 9dfb4bb54344..921129c3df8a 100644

Lines of this file are not shown. View the raw message.

net/mptcp/options.c +2 -3
index 193f0fcce8d8..aa4b0cf7c638 100644

Lines of this file are not shown. View the raw message.

net/mptcp/protocol.c +1 -1
index 5d05d85242bc..4c4577775c5d 100644

Lines of this file are not shown. View the raw message.

net/mptcp/subflow.c +6 -12
index 232f437770a6..9b89999062c9 100644

Lines of this file are not shown. View the raw message.

net/qrtr/af_qrtr.c +5 -3
index 6e88ba812d2a..e0a27a404404 100644

Lines of this file are not shown. View the raw message.

net/sctp/stream_interleave.c +2 -1
index 6b13f737ebf2..e3aad75cb11d 100644

Lines of this file are not shown. View the raw message.

sound/firewire/tascam/tascam-stream.c +1 -1
index 53e094cc411f..dfe783d01d7d 100644

Lines of this file are not shown. View the raw message.

sound/i2c/cs8427.c +5 -2
index 65012af6a36e..f58b14b49045 100644

Lines of this file are not shown. View the raw message.

sound/pci/emu10k1/emupcm.c +9 -5
index 48af77ae8020..6ec394fb1846 100644

Lines of this file are not shown. View the raw message.

sound/pci/hda/patch_sigmatel.c +10 -0
index a794a01a68ca..61258b0aac8d 100644

Lines of this file are not shown. View the raw message.

tools/lib/bpf/btf_dump.c +5 -2
index a9f974e5fb85..98cb3831aa18 100644

Lines of this file are not shown. View the raw message.

The rest of this diff is not shown. View the raw message.

Part of the diff is not shown here. View the raw message.