From: Sasha Levin Date: Mon, 27 Sep 2021 05:00:29 +0000 (-0400) Subject: Drop net-dsa-hellcreek-be-compatible-with-masters-which-u.patch X-Git-Tag: v5.4.150~34 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e8e7418d823d242fb54f8dca9942151bd823e348;p=thirdparty%2Fkernel%2Fstable-queue.git Drop net-dsa-hellcreek-be-compatible-with-masters-which-u.patch Signed-off-by: Sasha Levin --- diff --git a/queue-5.14/net-dsa-hellcreek-be-compatible-with-masters-which-u.patch b/queue-5.14/net-dsa-hellcreek-be-compatible-with-masters-which-u.patch deleted file mode 100644 index dfdbbf3da6e..00000000000 --- a/queue-5.14/net-dsa-hellcreek-be-compatible-with-masters-which-u.patch +++ /dev/null @@ -1,83 +0,0 @@ -From 5a8fa1511bcf9d6bcf04245ccdb61b4d788c0212 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Fri, 17 Sep 2021 16:34:34 +0300 -Subject: net: dsa: hellcreek: be compatible with masters which unregister on - shutdown - -From: Vladimir Oltean - -[ Upstream commit 46baae56e1001a771a5d132aa883cb5605013ae2 ] - -Since commit 2f1e8ea726e9 ("net: dsa: link interfaces with the DSA -master to get rid of lockdep warnings"), DSA gained a requirement which -it did not fulfill, which is to unlink itself from the DSA master at -shutdown time. - -Since the hellcreek driver was introduced after the bad commit, it has -never worked with DSA masters which decide to unregister their -net_device on shutdown, effectively hanging the reboot process. - -Hellcreek is a platform device driver, so we probably cannot have the -oddities of ->shutdown and ->remove getting both called for the exact -same struct device. But to be in line with the pattern from the other -device drivers which are on slow buses, implement the same "if this then -not that" pattern of either running the ->shutdown or the ->remove hook. -The driver's current ->remove implementation makes that very easy -because it already zeroes out its device_drvdata on ->remove. - -Fixes: e4b27ebc780f ("net: dsa: Add DSA driver for Hirschmann Hellcreek switches") -Link: https://lore.kernel.org/netdev/20210909095324.12978-1-LinoSanfilippo@gmx.de/ -Reported-by: Lino Sanfilippo -Signed-off-by: Vladimir Oltean -Reviewed-by: Florian Fainelli -Acked-by: Kurt Kanzenbach -Signed-off-by: David S. Miller -Signed-off-by: Sasha Levin ---- - drivers/net/dsa/hirschmann/hellcreek.c | 16 ++++++++++++++++ - 1 file changed, 16 insertions(+) - -diff --git a/drivers/net/dsa/hirschmann/hellcreek.c b/drivers/net/dsa/hirschmann/hellcreek.c -index 7062db6a083c..a0f5ec4f4e58 100644 ---- a/drivers/net/dsa/hirschmann/hellcreek.c -+++ b/drivers/net/dsa/hirschmann/hellcreek.c -@@ -1915,6 +1915,9 @@ static int hellcreek_remove(struct platform_device *pdev) - { - struct hellcreek *hellcreek = platform_get_drvdata(pdev); - -+ if (!hellcreek) -+ return 0; -+ - hellcreek_hwtstamp_free(hellcreek); - hellcreek_ptp_free(hellcreek); - dsa_unregister_switch(hellcreek->ds); -@@ -1923,6 +1926,18 @@ static int hellcreek_remove(struct platform_device *pdev) - return 0; - } - -+static void hellcreek_shutdown(struct platform_device *pdev) -+{ -+ struct hellcreek *hellcreek = platform_get_drvdata(pdev); -+ -+ if (!hellcreek) -+ return; -+ -+ dsa_switch_shutdown(hellcreek->ds); -+ -+ platform_set_drvdata(pdev, NULL); -+} -+ - static const struct hellcreek_platform_data de1soc_r1_pdata = { - .name = "r4c30", - .num_ports = 4, -@@ -1945,6 +1960,7 @@ MODULE_DEVICE_TABLE(of, hellcreek_of_match); - static struct platform_driver hellcreek_driver = { - .probe = hellcreek_probe, - .remove = hellcreek_remove, -+ .shutdown = hellcreek_shutdown, - .driver = { - .name = "hellcreek", - .of_match_table = hellcreek_of_match, --- -2.33.0 - diff --git a/queue-5.14/series b/queue-5.14/series index 339eb244b46..105893ffe42 100644 --- a/queue-5.14/series +++ b/queue-5.14/series @@ -52,7 +52,6 @@ afs-fix-updating-of-i_blocks-on-file-dir-extension.patch platform-x86-intel-punit_ipc-drop-wrong-use-of-acpi_.patch regulator-max14577-revert-regulator-max14577-add-pro.patch nlm-fix-svcxdr_encode_owner.patch -net-dsa-hellcreek-be-compatible-with-masters-which-u.patch net-dsa-microchip-ksz8863-be-compatible-with-masters.patch net-dsa-xrs700x-be-compatible-with-masters-which-unr.patch virtio-net-fix-pages-leaking-when-building-skb-in-bi.patch