diff options
-rw-r--r-- | patches/Add_localversion_for_-RT_release.patch | 2 | ||||
-rw-r--r-- | patches/net-bridge-mcast-Associate-the-seqcount-with-its-pro.patch | 63 | ||||
-rw-r--r-- | patches/series | 1 |
3 files changed, 1 insertions, 65 deletions
diff --git a/patches/Add_localversion_for_-RT_release.patch b/patches/Add_localversion_for_-RT_release.patch index 7b3d2414e699..e58a29adc4af 100644 --- a/patches/Add_localversion_for_-RT_release.patch +++ b/patches/Add_localversion_for_-RT_release.patch @@ -15,4 +15,4 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> --- /dev/null +++ b/localversion-rt @@ -0,0 +1 @@ -+-rt6 ++-rt7 diff --git a/patches/net-bridge-mcast-Associate-the-seqcount-with-its-pro.patch b/patches/net-bridge-mcast-Associate-the-seqcount-with-its-pro.patch deleted file mode 100644 index 5e1cafca2269..000000000000 --- a/patches/net-bridge-mcast-Associate-the-seqcount-with-its-pro.patch +++ /dev/null @@ -1,63 +0,0 @@ -From: Thomas Gleixner <tglx@linutronix.de> -Date: Sun, 26 Sep 2021 17:10:45 +0200 -Subject: [PATCH] net: bridge: mcast: Associate the seqcount with its - protecting lock. - -The sequence count bridge_mcast_querier::seq is protected by -net_bridge::multicast_lock but seqcount_init() does not associate the -seqcount with the lock. This leads to a warning on PREEMPT_RT because -preemption is still enabled. - -Let seqcount_init() associate the seqcount with lock that protects the -write section. Remove lockdep_assert_held_once() because lockdep already checks -whether the associated lock is held. - -Fixes: 67b746f94ff39 ("net: bridge: mcast: make sure querier port/address updates are consistent") -Reported-by: Mike Galbraith <efault@gmx.de> -Signed-off-by: Thomas Gleixner <tglx@linutronix.de> -Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> -Tested-by: Mike Galbraith <efault@gmx.de> -https://lkml.kernel.org/r/20210928141049.593833-1-bigeasy@linutronix.de ---- - net/bridge/br_multicast.c | 6 ++---- - net/bridge/br_private.h | 2 +- - 2 files changed, 3 insertions(+), 5 deletions(-) - ---- a/net/bridge/br_multicast.c -+++ b/net/bridge/br_multicast.c -@@ -1677,8 +1677,6 @@ static void br_multicast_update_querier( - int ifindex, - struct br_ip *saddr) - { -- lockdep_assert_held_once(&brmctx->br->multicast_lock); -- - write_seqcount_begin(&querier->seq); - querier->port_ifidx = ifindex; - memcpy(&querier->addr, saddr, sizeof(*saddr)); -@@ -3867,13 +3865,13 @@ void br_multicast_ctx_init(struct net_br - - brmctx->ip4_other_query.delay_time = 0; - brmctx->ip4_querier.port_ifidx = 0; -- seqcount_init(&brmctx->ip4_querier.seq); -+ seqcount_spinlock_init(&brmctx->ip4_querier.seq, &br->multicast_lock); - brmctx->multicast_igmp_version = 2; - #if IS_ENABLED(CONFIG_IPV6) - brmctx->multicast_mld_version = 1; - brmctx->ip6_other_query.delay_time = 0; - brmctx->ip6_querier.port_ifidx = 0; -- seqcount_init(&brmctx->ip6_querier.seq); -+ seqcount_spinlock_init(&brmctx->ip6_querier.seq, &br->multicast_lock); - #endif - - timer_setup(&brmctx->ip4_mc_router_timer, ---- a/net/bridge/br_private.h -+++ b/net/bridge/br_private.h -@@ -82,7 +82,7 @@ struct bridge_mcast_other_query { - struct bridge_mcast_querier { - struct br_ip addr; - int port_ifidx; -- seqcount_t seq; -+ seqcount_spinlock_t seq; - }; - - /* IGMP/MLD statistics */ diff --git a/patches/series b/patches/series index 557ba08810c2..053976565ffc 100644 --- a/patches/series +++ b/patches/series @@ -34,7 +34,6 @@ kthread-Move-prio-affinite-change-into-the-newly-cre.patch genirq-Move-prio-assignment-into-the-newly-created-t.patch genirq-Disable-irqfixup-poll-on-PREEMPT_RT.patch lockdep-Let-lock_is_held_type-detect-recursive-read-.patch -net-bridge-mcast-Associate-the-seqcount-with-its-pro.patch # KCOV (akpm) 0001_documentation_kcov_include_types_h_in_the_example.patch |