You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
WARNING: ThreadSanitizer: data race (pid=84571)
Atomic read of size 4 at 0x7b200000bd18 by thread T1:
#0 seqlock_timedwait lib/seqlock.c:204 (libfrr.so.0+0x515d55)
#1 rcu_main lib/frrcu.c:437 (libfrr.so.0+0x349397)
Previous write of size 8 at 0x7b200000bd18 by main thread:
[failed to restore the stack]
I have no idea what to do here. I'm willing to bet that the access by the main thread is in fact the initialization 😞
WARNING: ThreadSanitizer: data race (pid=84571)
Write of size 8 at 0x7b1800000020 by thread T1:
#0 free ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:706 (libtsan.so.2+0x4a3fe)
#1 qfree lib/memory.c:130 (libfrr.so.0+0x3f5b99)
#2 rcu_do lib/frrcu.c:378 (libfrr.so.0+0x348eff)
#3 rcu_main lib/frrcu.c:448 (libfrr.so.0+0x349581)
Previous atomic write of size 8 at 0x7b1800000020 by main thread:
#0 atomlist_add_tail lib/atomlist.c:76 (libfrr.so.0+0x29caf1)
#1 rcu_heads_add_tail lib/frrcu.c:49 (libfrr.so.0+0x347435)
#2 rcu_bump lib/frrcu.c:255 (libfrr.so.0+0x348233)
#3 rcu_bump_maybe lib/frrcu.c:295 (libfrr.so.0+0x348383)
#4 rcu_read_unlock lib/frrcu.c:320 (libfrr.so.0+0x348795)
#5 fd_poll lib/event.c:894 (libfrr.so.0+0x58d1c3)
#6 event_fetch lib/event.c:1855 (libfrr.so.0+0x59759a)
#7 frr_run lib/libfrr.c:1216 (libfrr.so.0+0x3b36be)
#8 main bgpd/bgp_main.c:551 (bgpd+0x49baa2)
Er… the data structure is being freed and that's detected as a race? I'm randomly guessing but maybe it fails to understand that those bytes are no longer referenced from multiple threads at that point?
Description
Version
How to reproduce
I am running configure with
--enable-thread-sanitizer`` and
--enable-undefined-sanitizer`Expected behavior
FRR should not trigger any issues
Actual behavior
FRR triggers issues
Additional context
No response
Checklist
The text was updated successfully, but these errors were encountered: