From: Greg Kroah-Hartman Date: Thu, 17 Nov 2016 12:02:16 +0000 (+0100) Subject: remove queue-4.8/batman-adv-fix-splat-on-disabling-an-interface.patch X-Git-Tag: v4.4.33~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2e1eb0caa4614c9432590fab3f7c4f61c7ca0a7f;p=thirdparty%2Fkernel%2Fstable-queue.git remove queue-4.8/batman-adv-fix-splat-on-disabling-an-interface.patch --- diff --git a/queue-4.8/batman-adv-fix-splat-on-disabling-an-interface.patch b/queue-4.8/batman-adv-fix-splat-on-disabling-an-interface.patch deleted file mode 100644 index 392e5139e86..00000000000 --- a/queue-4.8/batman-adv-fix-splat-on-disabling-an-interface.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 9799c50372b23ed774791bdb87d700f1286ee8a9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Linus=20L=C3=BCssing?= -Date: Thu, 6 Oct 2016 01:43:08 +0200 -Subject: batman-adv: fix splat on disabling an interface -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -From: Linus Lüssing - -commit 9799c50372b23ed774791bdb87d700f1286ee8a9 upstream. - -As long as there is still a reference for a hard interface held, there might -still be a forwarding packet relying on its attributes. - -Therefore avoid setting hard_iface->soft_iface to NULL when disabling a hard -interface. - -This fixes the following, potential splat: - - batman_adv: bat0: Interface deactivated: eth1 - batman_adv: bat0: Removing interface: eth1 - cgroup: new mount options do not match the existing superblock, will be ignored - batman_adv: bat0: Interface deactivated: eth3 - batman_adv: bat0: Removing interface: eth3 - ------------[ cut here ]------------ - WARNING: CPU: 3 PID: 1986 at ./net/batman-adv/bat_iv_ogm.c:549 batadv_iv_send_outstanding_bat_ogm_packet+0x145/0x643 [batman_adv] - Modules linked in: batman_adv(O-) <...> - CPU: 3 PID: 1986 Comm: kworker/u8:2 Tainted: G W O 4.6.0-rc6+ #1 - Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.7.5-20140531_083030-gandalf 04/01/2014 - Workqueue: bat_events batadv_iv_send_outstanding_bat_ogm_packet [batman_adv] - 0000000000000000 ffff88001d93bca0 ffffffff8126c26b 0000000000000000 - 0000000000000000 ffff88001d93bcf0 ffffffff81051615 ffff88001f19f818 - 000002251d93bd68 0000000000000046 ffff88001dc04a00 ffff88001becbe48 - Call Trace: - [] dump_stack+0x67/0x90 - [] __warn+0xc7/0xe5 - [] warn_slowpath_null+0x18/0x1a - [] batadv_iv_send_outstanding_bat_ogm_packet+0x145/0x643 [batman_adv] - [] ? __lock_is_held+0x32/0x54 - [] process_one_work+0x2a8/0x4f5 - [] ? process_one_work+0x15c/0x4f5 - [] worker_thread+0x1d5/0x2c0 - [] ? process_scheduled_works+0x2e/0x2e - [] ? process_scheduled_works+0x2e/0x2e - [] kthread+0xc0/0xc8 - [] ret_from_fork+0x22/0x40 - [] ? __init_kthread_worker+0x55/0x55 - ---[ end trace 647f9f325123dc05 ]--- - -What happened here is, that there was still a forw_packet (here: a BATMAN IV -OGM) in the queue of eth3 with the forw_packet->if_incoming set to eth1 and the -forw_packet->if_outgoing set to eth3. - -When eth3 is to be deactivated and removed, then this thread waits for the -forw_packet queued on eth3 to finish. Because eth1 was deactivated and removed -earlier and by that had forw_packet->if_incoming->soft_iface, set to NULL, the -splat when trying to send/flush the OGM on eth3 occures. - -Fixes: c6c8fea29769 ("net: Add batman-adv meshing protocol") -Signed-off-by: Linus Lüssing -[sven@narfation.org: Reduced size of Oops message] -Signed-off-by: Sven Eckelmann -Signed-off-by: Simon Wunderlich -Signed-off-by: Greg Kroah-Hartman - ---- - net/batman-adv/hard-interface.c | 1 - - 1 file changed, 1 deletion(-) - ---- a/net/batman-adv/hard-interface.c -+++ b/net/batman-adv/hard-interface.c -@@ -617,7 +617,6 @@ void batadv_hardif_disable_interface(str - batadv_softif_destroy_sysfs(hard_iface->soft_iface); - } - -- hard_iface->soft_iface = NULL; - batadv_hardif_put(hard_iface); - - out: diff --git a/queue-4.8/series b/queue-4.8/series index 3ec236ff8f8..8a25dc2a171 100644 --- a/queue-4.8/series +++ b/queue-4.8/series @@ -75,7 +75,6 @@ acpi-apei-fix-incorrect-return-value-of-ghes_proc.patch acpi-pci-irq-assign-isa-irq-directly-during-early-boot-stages.patch acpi-pci-pci_link-penalize-sci-correctly.patch acpi-pci-pci_link-include-pirq_penalty_pci_using-for-isa-irqs.patch -batman-adv-fix-splat-on-disabling-an-interface.patch batman-adv-modify-neigh_list-only-with-rcu-list-functions.patch gpio-mvebu-use-irq_domain_add_linear.patch gpio-of-fix-gpio-drivers-with-multiple-gpio_chip-for-a-single-node.patch