From 6cd55a95feeb4f4954cc23dbd8f426a2af762c39 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sun, 22 Oct 2023 15:45:03 +0200 Subject: [PATCH] 6.1-stable patches added patches: net-devlink-move-netdev-notifier-block-to-dest-namespace-during-reload.patch serial-8250-omap-convert-to-modern-pm-ops.patch serial-8250-omap-move-uart_write-inside-pm-section.patch --- ...lock-to-dest-namespace-during-reload.patch | 42 ++++++++++ ...l-8250-omap-convert-to-modern-pm-ops.patch | 80 +++++++++++++++++++ ...ap-move-uart_write-inside-pm-section.patch | 58 ++++++++++++++ queue-6.1/series | 3 + 4 files changed, 183 insertions(+) create mode 100644 queue-6.1/net-devlink-move-netdev-notifier-block-to-dest-namespace-during-reload.patch create mode 100644 queue-6.1/serial-8250-omap-convert-to-modern-pm-ops.patch create mode 100644 queue-6.1/serial-8250-omap-move-uart_write-inside-pm-section.patch diff --git a/queue-6.1/net-devlink-move-netdev-notifier-block-to-dest-namespace-during-reload.patch b/queue-6.1/net-devlink-move-netdev-notifier-block-to-dest-namespace-during-reload.patch new file mode 100644 index 00000000000..76bbb7c80c4 --- /dev/null +++ b/queue-6.1/net-devlink-move-netdev-notifier-block-to-dest-namespace-during-reload.patch @@ -0,0 +1,42 @@ +From 15feb56e30efea95992f5c572cee753db205eb7b Mon Sep 17 00:00:00 2001 +From: Jiri Pirko +Date: Tue, 8 Nov 2022 14:22:07 +0100 +Subject: net: devlink: move netdev notifier block to dest namespace during reload + +From: Jiri Pirko + +commit 15feb56e30efea95992f5c572cee753db205eb7b upstream. + +The notifier block tracking netdev changes in devlink is registered +during devlink_alloc() per-net, it is then unregistered +in devlink_free(). When devlink moves from net namespace to another one, +the notifier block needs to move along. + +Fix this by adding forgotten call to move the block. + +Reported-by: Ido Schimmel +Fixes: 02a68a47eade ("net: devlink: track netdev with devlink_port assigned") +Reviewed-by: Ido Schimmel +Tested-by: Ido Schimmel +Signed-off-by: Jiri Pirko +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + net/devlink/leftover.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +--- a/net/devlink/leftover.c ++++ b/net/devlink/leftover.c +@@ -4507,8 +4507,11 @@ static int devlink_reload(struct devlink + if (err) + return err; + +- if (dest_net && !net_eq(dest_net, curr_net)) ++ if (dest_net && !net_eq(dest_net, curr_net)) { ++ move_netdevice_notifier_net(curr_net, dest_net, ++ &devlink->netdevice_nb); + write_pnet(&devlink->_net, dest_net); ++ } + + err = devlink->ops->reload_up(devlink, action, limit, actions_performed, extack); + devlink_reload_failed_set(devlink, !!err); diff --git a/queue-6.1/serial-8250-omap-convert-to-modern-pm-ops.patch b/queue-6.1/serial-8250-omap-convert-to-modern-pm-ops.patch new file mode 100644 index 00000000000..5f82523a006 --- /dev/null +++ b/queue-6.1/serial-8250-omap-convert-to-modern-pm-ops.patch @@ -0,0 +1,80 @@ +From ae62c49c0ceff20dc7c1fad4a5b8f91d64b4f628 Mon Sep 17 00:00:00 2001 +From: Arnd Bergmann +Date: Wed, 17 May 2023 22:20:07 +0200 +Subject: serial: 8250: omap: convert to modern PM ops + +From: Arnd Bergmann + +commit ae62c49c0ceff20dc7c1fad4a5b8f91d64b4f628 upstream. + +The new uart_write() function is only called from suspend/resume code, causing +a build warning when those are left out: + +drivers/tty/serial/8250/8250_omap.c:169:13: error: 'uart_write' defined but not used [-Werror=unused-function] + +Remove the #ifdefs and use the modern pm_ops/pm_sleep_ops and their wrappers +to let the compiler see where it's used but still drop the dead code. + +Fixes: 398cecc24846 ("serial: 8250: omap: Fix imprecise external abort for omap_8250_pm()") +Signed-off-by: Arnd Bergmann +Reviewed-by: Tony Lindgren +Link: https://lore.kernel.org/r/20230517202012.634386-1-arnd@kernel.org +Signed-off-by: Greg Kroah-Hartman +--- + drivers/tty/serial/8250/8250_omap.c | 17 +++++------------ + 1 file changed, 5 insertions(+), 12 deletions(-) + +--- a/drivers/tty/serial/8250/8250_omap.c ++++ b/drivers/tty/serial/8250/8250_omap.c +@@ -1487,7 +1487,6 @@ static int omap8250_remove(struct platfo + return 0; + } + +-#ifdef CONFIG_PM_SLEEP + static int omap8250_prepare(struct device *dev) + { + struct omap8250_priv *priv = dev_get_drvdata(dev); +@@ -1547,12 +1546,7 @@ static int omap8250_resume(struct device + + return 0; + } +-#else +-#define omap8250_prepare NULL +-#define omap8250_complete NULL +-#endif + +-#ifdef CONFIG_PM + static int omap8250_lost_context(struct uart_8250_port *up) + { + u32 val; +@@ -1664,7 +1658,6 @@ static int omap8250_runtime_resume(struc + schedule_work(&priv->qos_work); + return 0; + } +-#endif + + #ifdef CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP + static int __init omap8250_console_fixup(void) +@@ -1707,17 +1700,17 @@ console_initcall(omap8250_console_fixup) + #endif + + static const struct dev_pm_ops omap8250_dev_pm_ops = { +- SET_SYSTEM_SLEEP_PM_OPS(omap8250_suspend, omap8250_resume) +- SET_RUNTIME_PM_OPS(omap8250_runtime_suspend, ++ SYSTEM_SLEEP_PM_OPS(omap8250_suspend, omap8250_resume) ++ RUNTIME_PM_OPS(omap8250_runtime_suspend, + omap8250_runtime_resume, NULL) +- .prepare = omap8250_prepare, +- .complete = omap8250_complete, ++ .prepare = pm_sleep_ptr(omap8250_prepare), ++ .complete = pm_sleep_ptr(omap8250_complete), + }; + + static struct platform_driver omap8250_platform_driver = { + .driver = { + .name = "omap8250", +- .pm = &omap8250_dev_pm_ops, ++ .pm = pm_ptr(&omap8250_dev_pm_ops), + .of_match_table = omap8250_dt_ids, + }, + .probe = omap8250_probe, diff --git a/queue-6.1/serial-8250-omap-move-uart_write-inside-pm-section.patch b/queue-6.1/serial-8250-omap-move-uart_write-inside-pm-section.patch new file mode 100644 index 00000000000..dcc4df3a30c --- /dev/null +++ b/queue-6.1/serial-8250-omap-move-uart_write-inside-pm-section.patch @@ -0,0 +1,58 @@ +From c53aab20762255ee03e65dd66b3cba3887ad39d1 Mon Sep 17 00:00:00 2001 +From: Geert Uytterhoeven +Date: Mon, 15 May 2023 08:57:06 +0200 +Subject: serial: 8250: omap: Move uart_write() inside PM section +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Geert Uytterhoeven + +commit c53aab20762255ee03e65dd66b3cba3887ad39d1 upstream. + +If CONFIG_PM is not set (e.g. m68k/allmodconfig): + + drivers/tty/serial/8250/8250_omap.c:169:13: error: ‘uart_write’ defined but not used [-Werror=unused-function] + 169 | static void uart_write(struct omap8250_priv *priv, u32 reg, u32 val) + | ^~~~~~~~~~ + +Fix tis by moving uart_write() inside the existing section protected +by #ifdef CONFIG_PM. + +Reported-by: noreply@ellerman.id.au +Link: http://kisskb.ellerman.id.au/kisskb/buildresult/14925095/ +Fixes: 398cecc24846e867 ("serial: 8250: omap: Fix imprecise external abort for omap_8250_pm()") +Signed-off-by: Geert Uytterhoeven +Reviewed-by: Tony Lindgren +Link: https://lore.kernel.org/r/20230515065706.1723477-1-geert@linux-m68k.org +Signed-off-by: Greg Kroah-Hartman +--- + drivers/tty/serial/8250/8250_omap.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +--- a/drivers/tty/serial/8250/8250_omap.c ++++ b/drivers/tty/serial/8250/8250_omap.c +@@ -159,11 +159,6 @@ static u32 uart_read(struct omap8250_pri + return readl(priv->membase + (reg << OMAP_UART_REGSHIFT)); + } + +-static void uart_write(struct omap8250_priv *priv, u32 reg, u32 val) +-{ +- writel(val, priv->membase + (reg << OMAP_UART_REGSHIFT)); +-} +- + /* + * Called on runtime PM resume path from omap8250_restore_regs(), and + * omap8250_set_mctrl(). +@@ -1573,6 +1568,11 @@ static int omap8250_lost_context(struct + return 0; + } + ++static void uart_write(struct omap8250_priv *priv, u32 reg, u32 val) ++{ ++ writel(val, priv->membase + (reg << OMAP_UART_REGSHIFT)); ++} ++ + /* TODO: in future, this should happen via API in drivers/reset/ */ + static int omap8250_soft_reset(struct device *dev) + { diff --git a/queue-6.1/series b/queue-6.1/series index a6247e928dc..92c0b01be4c 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -197,3 +197,6 @@ asoc-pxa-fix-a-memory-leak-in-probe.patch drm-bridge-ti-sn65dsi86-associate-dsi-device-lifetim.patch drm-panel-move-aux-b116xw03-out-of-panel-edp-back-to.patch net-make-sure-we-never-create-ifindex-0.patch +net-devlink-move-netdev-notifier-block-to-dest-namespace-during-reload.patch +serial-8250-omap-move-uart_write-inside-pm-section.patch +serial-8250-omap-convert-to-modern-pm-ops.patch -- 2.47.3