]> git.ipfire.org Git - thirdparty/knot-dns.git/commitdiff
Invoke rcu_register_thread() before its first call to rcu_read_lock()
author秦龙飞 <qinlongfei.1@bytedance.com>
Tue, 28 Mar 2023 05:47:59 +0000 (13:47 +0800)
committerDaniel Salzman <daniel.salzman@nic.cz>
Wed, 29 Mar 2023 13:38:27 +0000 (15:38 +0200)
src/knot/common/stats.c

index d2948c772d73bf76e9eebb30db62068c2ab9a794..12d2a9a2d668720d8f9c447d3cccd3752be2f424 100644 (file)
@@ -247,6 +247,7 @@ static void dump_stats(server_t *server)
 
 static void *dumper(void *data)
 {
+       rcu_register_thread();
        while (true) {
                assert(stats.timer > 0);
                sleep(stats.timer);
@@ -257,7 +258,7 @@ static void *dumper(void *data)
                rcu_read_unlock();
                pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
        }
-
+       rcu_unregister_thread();
        return NULL;
 }