Skip to contentSkip to conversation

Linux 4.19.188

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Apr 16, 2021 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 4.19.188 kernel.

All users of the 4.19 kernel series must upgrade.

The updated 4.19.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.19.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

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

 Makefile                               |    2 
 arch/arm64/include/asm/kvm_arm.h       |    1 
 arch/arm64/kernel/cpufeature.c         |    1 
 arch/arm64/kvm/debug.c                 |    2 
 arch/riscv/kernel/entry.S              |    1 
 block/bio.c                            |    2 
 drivers/base/dd.c                      |    8 
 drivers/gpu/drm/imx/imx-ldb.c          |   10 
 drivers/gpu/drm/tegra/dc.c             |   10 
 drivers/net/phy/bcm-phy-lib.c          |   11 
 drivers/staging/Kconfig                |    2 
 drivers/staging/Makefile               |    1 
 drivers/staging/mt7621-mmc/Kconfig     |   16 
 drivers/staging/mt7621-mmc/Makefile    |   42 
 drivers/staging/mt7621-mmc/TODO        |    8 
 drivers/staging/mt7621-mmc/board.h     |   63 
 drivers/staging/mt7621-mmc/dbg.c       |  307 ----
 drivers/staging/mt7621-mmc/dbg.h       |  149 --
 drivers/staging/mt7621-mmc/mt6575_sd.h |  488 ------
 drivers/staging/mt7621-mmc/sd.c        | 2392 ---------------------------------
 drivers/xen/events/events_base.c       |    4 
 fs/gfs2/super.c                        |   10 
 net/ipv4/netfilter/arp_tables.c        |    2 
 net/ipv4/netfilter/ip_tables.c         |    2 
 net/ipv6/netfilter/ip6_tables.c        |    2 
 net/netfilter/x_tables.c               |   10 
 tools/perf/util/map.c                  |    7 
 27 files changed, 53 insertions(+), 3500 deletions(-)

Arnaldo Carvalho de Melo (1):
perf map: Tighten snprintf() string precision to pass gcc check on some 32-bit arches

Arnd Bergmann (1):
drm/imx: imx-ldb: fix out of bounds array access warning

Bob Peterson (1):
gfs2: report "already frozen/thawed" errors

Dmitry Osipenko (1):
drm/tegra: dc: Don't set PLL clock to 0Hz

Florian Fainelli (1):
net: phy: broadcom: Only advertise EEE for supported modes

Florian Westphal (1):
netfilter: x_tables: fix compat match/target pad out-of-bound write

Greg Kroah-Hartman (2):
staging: m57621-mmc: delete driver from the tree. Linux 4.19.188

Juergen Gross (1):
xen/events: fix setting irq affinity

Saravana Kannan (1):
driver core: Fix locking bug in deferred_probe_timeout_work_func()

Suzuki K Poulose (2):
KVM: arm64: Hide system instruction access to Trace registers
KVM: arm64: Disable guest access to trace filter controls

Yufen Yu (1):
block: only update parent bi_status when bio fail

Zihao Yu (1):
riscv,entry: fix misaligned base for excp_vect_table

author maintainer
#1 lore raw
Makefile +1 -1
index ceec39b530bb..85f071709a61 100644
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 VERSION = 4
 PATCHLEVEL = 19
-SUBLEVEL = 187
+SUBLEVEL = 188
 EXTRAVERSION =
 NAME = "People's Front"
 
arch/arm64/include/asm/kvm_arm.h +1 -0
index a3b6f58d188c..6d43f7901da2 100644
@@ -198,6 +198,7 @@
 #define CPTR_EL2_DEFAULT	CPTR_EL2_RES1
 
 /* Hyp Debug Configuration Register bits */
+#define MDCR_EL2_TTRF		(1 << 19)
 #define MDCR_EL2_TPMS		(1 << 14)
 #define MDCR_EL2_E2PB_MASK	(UL(0x3))
 #define MDCR_EL2_E2PB_SHIFT	(UL(12))
arch/arm64/kernel/cpufeature.c +0 -1
index 1719d21a171a..122d5e843ab6 100644
@@ -258,7 +258,6 @@ static const struct arm64_ftr_bits ftr_id_aa64dfr0[] = {
 	 * of support.
 	 */
 	S_ARM64_FTR_BITS(FTR_HIDDEN, FTR_NONSTRICT, FTR_EXACT, ID_AA64DFR0_PMUVER_SHIFT, 4, 0),
-	ARM64_FTR_BITS(FTR_HIDDEN, FTR_STRICT, FTR_EXACT, ID_AA64DFR0_TRACEVER_SHIFT, 4, 0),
 	ARM64_FTR_BITS(FTR_HIDDEN, FTR_STRICT, FTR_EXACT, ID_AA64DFR0_DEBUGVER_SHIFT, 4, 0x6),
 	ARM64_FTR_END,
 };
arch/arm64/kvm/debug.c +2 -0
index 4e722d73a3c3..3606f6b89094 100644
@@ -100,6 +100,7 @@ void kvm_arm_reset_debug_ptr(struct kvm_vcpu *vcpu)
  *  - Debug ROM Address (MDCR_EL2_TDRA)
  *  - OS related registers (MDCR_EL2_TDOSA)
  *  - Statistical profiler (MDCR_EL2_TPMS/MDCR_EL2_E2PB)
+ *  - Self-hosted Trace Filter controls (MDCR_EL2_TTRF)
  *
  * Additionally, KVM only traps guest accesses to the debug registers if
  * the guest is not actively using them (see the KVM_ARM64_DEBUG_DIRTY
@@ -123,6 +124,7 @@ void kvm_arm_setup_debug(struct kvm_vcpu *vcpu)
 	vcpu->arch.mdcr_el2 = __this_cpu_read(mdcr_el2) & MDCR_EL2_HPMN_MASK;
 	vcpu->arch.mdcr_el2 |= (MDCR_EL2_TPM |
 				MDCR_EL2_TPMS |
+				MDCR_EL2_TTRF |
 				MDCR_EL2_TPMCR |
 				MDCR_EL2_TDRA |
 				MDCR_EL2_TDOSA);
arch/riscv/kernel/entry.S +1 -0
index a03821b2656a..d9de22686e27 100644
@@ -449,6 +449,7 @@ ENDPROC(__fstate_restore)
 
 
 	.section ".rodata"
+	.align LGREG
 	/* Exception vector table */
 ENTRY(excp_vect_table)
 	RISCV_PTR do_trap_insn_misaligned
block/bio.c +1 -1
index 3d757055305f..fe749404ef93 100644
@@ -314,7 +314,7 @@ static struct bio *__bio_chain_endio(struct bio *bio)
 {
 	struct bio *parent = bio->bi_private;
 
-	if (!parent->bi_status)
+	if (bio->bi_status && !parent->bi_status)
 		parent->bi_status = bio->bi_status;
 	bio_put(bio);
 	return parent;
drivers/base/dd.c +5 -3
index 4ba9231a6be8..26ba7a99b7d5 100644
@@ -254,14 +254,16 @@ int driver_deferred_probe_check_state(struct device *dev)
 
 static void deferred_probe_timeout_work_func(struct work_struct *work)
 {
-	struct device_private *private, *p;
+	struct device_private *p;
 
 	deferred_probe_timeout = 0;
 	driver_deferred_probe_trigger();
 	flush_work(&deferred_probe_work);
 
-	list_for_each_entry_safe(private, p, &deferred_probe_pending_list, deferred_probe)
-		dev_info(private->device, "deferred probe pending");
+	mutex_lock(&deferred_probe_mutex);
+	list_for_each_entry(p, &deferred_probe_pending_list, deferred_probe)
+		dev_info(p->device, "deferred probe pending\n");
+	mutex_unlock(&deferred_probe_mutex);
 }
 static DECLARE_DELAYED_WORK(deferred_probe_timeout_work, deferred_probe_timeout_work_func);
 
drivers/gpu/drm/imx/imx-ldb.c +10 -0
index 221a8cbc57f9..a4dba034dca4 100644
@@ -206,6 +206,11 @@ static void imx_ldb_encoder_enable(struct drm_encoder *encoder)
 	int dual = ldb->ldb_ctrl & LDB_SPLIT_MODE_EN;
 	int mux = drm_of_encoder_active_port_id(imx_ldb_ch->child, encoder);
 
+	if (mux < 0 || mux >= ARRAY_SIZE(ldb->clk_sel)) {
+		dev_warn(ldb->dev, "%s: invalid mux %d\n", __func__, mux);
+		return;
+	}
+
 	drm_panel_prepare(imx_ldb_ch->panel);
 
 	if (dual) {
@@ -264,6 +269,11 @@ imx_ldb_encoder_atomic_mode_set(struct drm_encoder *encoder,
 	int mux = drm_of_encoder_active_port_id(imx_ldb_ch->child, encoder);
 	u32 bus_format = imx_ldb_ch->bus_format;
 
+	if (mux < 0 || mux >= ARRAY_SIZE(ldb->clk_sel)) {
+		dev_warn(ldb->dev, "%s: invalid mux %d\n", __func__, mux);
+		return;
+	}
+
 	if (mode->clock > 170000) {
 		dev_warn(ldb->dev,
 			 "%s: mode exceeds 170 MHz pixel clock\n", __func__);
drivers/gpu/drm/tegra/dc.c +5 -5
index 965088afcfad..03adb4cf325b 100644
@@ -1670,6 +1670,11 @@ static void tegra_dc_commit_state(struct tegra_dc *dc,
 			dev_err(dc->dev,
 				"failed to set clock rate to %lu Hz\n",
 				state->pclk);
+
+		err = clk_set_rate(dc->clk, state->pclk);
+		if (err < 0)
+			dev_err(dc->dev, "failed to set clock %pC to %lu Hz: %d\n",
+				dc->clk, state->pclk, err);
 	}
 
 	DRM_DEBUG_KMS("rate: %lu, div: %u\n", clk_get_rate(dc->clk),
@@ -1680,11 +1685,6 @@ static void tegra_dc_commit_state(struct tegra_dc *dc,
 		value = SHIFT_CLK_DIVIDER(state->div) | PIXEL_CLK_DIVIDER_PCD1;
 		tegra_dc_writel(dc, value, DC_DISP_DISP_CLOCK_CONTROL);
 	}
-
-	err = clk_set_rate(dc->clk, state->pclk);
-	if (err < 0)
-		dev_err(dc->dev, "failed to set clock %pC to %lu Hz: %d\n",
-			dc->clk, state->pclk, err);
 }
 
 static void tegra_dc_stop(struct tegra_dc *dc)
drivers/net/phy/bcm-phy-lib.c +8 -3
index e10e7b54ec4b..7e5892597533 100644
@@ -198,7 +198,7 @@ EXPORT_SYMBOL_GPL(bcm_phy_enable_apd);
 
 int bcm_phy_set_eee(struct phy_device *phydev, bool enable)
 {
-	int val;
+	int val, mask = 0;
 
 	/* Enable EEE at PHY level */
 	val = phy_read_mmd(phydev, MDIO_MMD_AN, BRCM_CL45VEN_EEE_CONTROL);
@@ -217,10 +217,15 @@ int bcm_phy_set_eee(struct phy_device *phydev, bool enable)
 	if (val < 0)
 		return val;
 
+	if (phydev->supported & SUPPORTED_1000baseT_Full)
+		mask |= MDIO_EEE_1000T;
+	if (phydev->supported & SUPPORTED_100baseT_Full)
+		mask |= MDIO_EEE_100TX;
+
 	if (enable)
-		val |= (MDIO_EEE_100TX | MDIO_EEE_1000T);
+		val |= mask;
 	else
-		val &= ~(MDIO_EEE_100TX | MDIO_EEE_1000T);
+		val &= ~mask;
 
 	phy_write_mmd(phydev, MDIO_MMD_AN, BCM_CL45VEN_EEE_ADV, (u32)val);
 
drivers/staging/Kconfig +0 -2
index 1abf76be2aa8..58e8140c1f57 100644
@@ -114,8 +114,6 @@ source "drivers/staging/mt7621-spi/Kconfig"
 
 source "drivers/staging/mt7621-dma/Kconfig"
 
-source "drivers/staging/mt7621-mmc/Kconfig"
-
 source "drivers/staging/mt7621-eth/Kconfig"
 
 source "drivers/staging/mt7621-dts/Kconfig"
drivers/staging/Makefile +0 -1
index ab0cbe8815b1..6f3065569fa0 100644
@@ -47,7 +47,6 @@ obj-$(CONFIG_SOC_MT7621)	+= mt7621-pci/
 obj-$(CONFIG_SOC_MT7621)	+= mt7621-pinctrl/
 obj-$(CONFIG_SOC_MT7621)	+= mt7621-spi/
 obj-$(CONFIG_SOC_MT7621)	+= mt7621-dma/
-obj-$(CONFIG_SOC_MT7621)	+= mt7621-mmc/
 obj-$(CONFIG_SOC_MT7621)	+= mt7621-eth/
 obj-$(CONFIG_SOC_MT7621)	+= mt7621-dts/
 obj-$(CONFIG_STAGING_GASKET_FRAMEWORK)	+= gasket/
drivers/staging/mt7621-mmc/Kconfig deleted +0 -16
deleted file mode 100644
index c6dfe8c637dc..000000000000
@@ -1,16 +0,0 @@
-config MTK_MMC
-	tristate "MTK SD/MMC"
-	depends on !MTD_NAND_RALINK && MMC
-
-config MTK_AEE_KDUMP
-	bool "MTK AEE KDUMP"
-	depends on MTK_MMC
-
-config MTK_MMC_CD_POLL
-	bool "Card Detect with Polling"
-	depends on MTK_MMC
-
-config MTK_MMC_EMMC_8BIT
-	bool "eMMC 8-bit support"
-	depends on MTK_MMC && RALINK_MT7628
-
drivers/staging/mt7621-mmc/Makefile deleted +0 -42

42 lines not on this page · raw message

drivers/staging/mt7621-mmc/TODO deleted +0 -8
deleted file mode 100644
index febb32d37e07..000000000000
@@ -1,8 +0,0 @@
-
-- general code review and clean up
-- ensure device-tree requirements are documented
-- should probably be merged with drivers/mmc/host/mtk-sd.c
-- possibly fix to work with highmem pages so a bounce buffer isn't
-  needed.
-
-Cc: NeilBrown <[email protected]>
drivers/staging/mt7621-mmc/board.h deleted +0 -63

63 lines not on this page · raw message

drivers/staging/mt7621-mmc/dbg.c deleted +0 -307

307 lines not on this page · raw message

drivers/staging/mt7621-mmc/dbg.h deleted +0 -149

149 lines not on this page · raw message

drivers/staging/mt7621-mmc/mt6575_sd.h deleted +0 -488

488 lines not on this page · raw message

drivers/staging/mt7621-mmc/sd.c deleted +0 -2392

1,773 lines not on this page · raw message

drivers/xen/events/events_base.c +2 -2
index 8c577f0ae2bb..b370144682ed 100644

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

fs/gfs2/super.c +6 -4
index 22cd68bd8c9b..3cc2237e5896 100644

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

net/ipv4/netfilter/arp_tables.c +2 -0
index 10d8f95eb771..fba56cd95896 100644

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

net/ipv4/netfilter/ip_tables.c +2 -0
index e77872c93c20..730a40dc829a 100644

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

net/ipv6/netfilter/ip6_tables.c +2 -0
index daf2e9e9193d..dd0c1073dc8e 100644

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

net/netfilter/x_tables.c +2 -8
index c9fe35118b33..5dd6f6ce92e6 100644

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

tools/perf/util/map.c +3 -4
index d3d3601f41cc..769d11575a7b 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.