In commit 32489d40ba3d8, we annotated qdisc_run_end with __no_thread_safety_analysis
due to conditional unlocking. But now changing it now to __conditional_unlocking which is more
appropriate here.
Here in qdisc_run_begin we have a conditional locking, therefore marking it as __conditional_locking
as well.
/home/himanshu/clang-thread-safety-analysis/include/net/sch_generic.h:170:2: warning: mutex 'qdisc->seqlock' is not held on every path through here [-Wthread-safety-analysis]
raw_write_seqcount_begin(&qdisc->running);
^
/home/himanshu/clang-thread-safety-analysis/include/net/sch_generic.h:161:8: note: mutex acquired here
if (!spin_trylock(&qdisc->seqlock))
^
In commit 32489d40ba3d8, we annotated
qdisc_run_end
with__no_thread_safety_analysis
due to conditional unlocking. But now changing it now to__conditional_unlocking
which is more appropriate here. Here inqdisc_run_begin
we have a conditional locking, therefore marking it as__conditional_locking
as well.https://elixir.bootlin.com/linux/v5.2-rc2/source/include/net/sch_generic.h#L170