Red Hat Bugzilla – Bug 1430418
Backport "net/Qdisc: use a seqlock instead seqcount" upstream RT patch
Last modified: 2018-04-10 05:09:31 EDT
Description of problem: Upstream patch improves determinism by using a better synchronization primitive when checking for contention on a network qdisc. Present from around 4.8-rt1. Patch description: "The seqcount disables preemption on -RT while it is held which can't remove. Also we don't want the reader to spin for ages if the writer is scheduled out. The seqlock on the other hand will serialize / sleep on the lock while writer is active."
moving to the RT team
Created attachment 1350616 [details] net/Qdisc: use a seqlock instead seqcount From: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Date: Wed, 14 Sep 2016 17:36:35 +0200 Subject: [PATCH] net/Qdisc: use a seqlock instead seqcount Bugzilla: 1430418 1511589 1511558 The seqcount disables preemption on -RT while it is held which can't remove. Also we don't want the reader to spin for ages if the writer is scheduled out. The seqlock on the other hand will serialize / sleep on the lock while writer is active. Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com> --- include/linux/seqlock.h | 9 +++++++++ include/net/gen_stats.h | 9 +++++---- include/net/net_seq_lock.h | 15 +++++++++++++++ include/net/sch_generic.h | 23 +++++++++++++++++++---- net/core/gen_estimator.c | 6 +++--- net/core/gen_stats.c | 8 ++++---- net/sched/sch_api.c | 2 +- net/sched/sch_generic.c | 12 ++++++++++++ 8 files changed, 68 insertions(+), 16 deletions(-)
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2018:0676