Ondřej Surý and Mark Andrews
0279cc76a7
Update STALE and ANCIENT header attributes atomically
...
The ThreadSanitizer found a data race when updating the stale header.
Instead of trying to acquire the write lock and failing occasionally
which would skew the statistics, the dns_rdatasetheader_t.attributes
field has been promoted to use stdatomics. Updating the attributes in
the mark_header_ancient() and mark_header_stale() now uses the cmpxchg
to update the attributes forfeiting the need to hold the write lock on
the tree. Please note that mark_header_ancient() still needs to hold
the lock because .dirty is being updated in the same go.
(cherry picked from commit 81d4230e60 )
2020-07-08 12:01:46 +10:00
..
2020-07-01 09:57:44 +02:00
2020-06-25 18:57:06 -07:00
2020-07-01 10:55:30 +02:00
2020-07-01 09:57:44 +02:00
2020-02-14 05:35:29 +00:00
2020-05-25 17:04:04 -07:00
2020-06-18 10:25:50 +02:00
2020-03-04 10:48:59 +01:00
2020-02-14 05:35:29 +00:00
2020-02-14 08:45:59 +00:00
2020-02-14 08:45:59 +00:00
2020-05-25 17:04:04 -07:00
2020-07-06 10:30:25 +10:00
2020-02-14 05:35:29 +00:00
2020-05-25 17:03:59 -07:00
2020-05-25 17:03:59 -07:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-05-25 17:03:59 -07:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-02-21 07:05:31 +00:00
2020-03-11 08:55:12 +00:00
2020-06-29 22:30:01 +00:00
2020-02-21 07:05:31 +00:00
2020-04-28 15:24:07 +02:00
2020-07-01 09:57:44 +02:00
2020-05-01 06:54:26 +02:00
2020-03-11 08:55:12 +00:00
2020-03-11 08:55:12 +00:00
2020-02-14 08:45:59 +00:00
2020-02-14 05:35:29 +00:00
2020-05-25 17:03:59 -07:00
2020-02-14 08:45:59 +00:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-02-14 08:45:59 +00:00
2020-03-11 08:55:12 +00:00
2020-03-17 15:33:24 -07:00
2020-03-17 15:33:24 -07:00
2020-02-14 05:35:29 +00:00
2020-03-11 08:55:12 +00:00
2020-03-11 08:55:12 +00:00
2020-04-28 15:24:07 +02:00
2020-02-14 05:35:29 +00:00
2020-02-14 08:45:59 +00:00
2020-02-14 08:45:59 +00:00
2020-03-09 16:25:35 +01:00
2020-03-11 08:55:12 +00:00
2020-02-14 05:35:29 +00:00
2020-07-01 09:57:44 +02:00
2020-06-11 16:09:43 +10:00
2020-05-25 17:04:04 -07:00
2020-02-14 05:35:29 +00:00
2020-02-14 08:45:59 +00:00
2020-05-11 09:49:54 +02:00
2020-03-12 00:38:37 -07:00
2020-06-04 16:06:07 +02:00
2020-05-25 17:04:04 -07:00
2020-06-05 10:50:58 +10:00
2020-02-16 18:07:27 +01:00
2020-02-14 08:45:59 +00:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-03-11 08:55:12 +00:00
2020-05-01 06:54:26 +02:00
2020-05-01 14:30:04 +02:00
2020-05-01 16:25:56 +02:00
2020-05-01 14:30:04 +02:00
2020-02-14 05:35:29 +00:00
2020-02-14 08:45:59 +00:00
2020-03-11 08:55:12 +00:00
2020-05-01 06:54:27 +02:00
2020-05-01 08:00:52 +02:00
2020-05-01 06:54:26 +02:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-03-12 00:38:37 -07:00
2020-07-08 12:01:46 +10:00
2020-03-11 08:55:12 +00:00
2020-06-25 18:57:06 -07:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-03-12 00:38:37 -07:00
2020-02-14 08:45:59 +00:00
2020-07-01 12:55:12 +02:00
2020-06-04 16:06:07 +02:00
2020-02-17 14:43:46 -08:00
2020-05-25 17:03:59 -07:00
2020-02-14 05:35:29 +00:00
2020-02-21 07:05:31 +00:00
2020-05-25 17:04:04 -07:00
2020-05-25 17:04:04 -07:00
2020-02-14 05:35:29 +00:00
2020-02-14 08:45:59 +00:00
2020-06-29 12:03:01 +02:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-04-03 10:04:24 +02:00
2020-02-14 08:45:59 +00:00
2020-02-14 05:35:29 +00:00
2020-02-14 05:35:29 +00:00
2020-05-25 17:03:59 -07:00
2020-03-11 08:55:12 +00:00
2020-05-25 17:04:04 -07:00
2020-02-14 08:45:59 +00:00
2020-05-25 17:04:04 -07:00
2020-06-25 22:42:43 +10:00
2020-05-25 17:04:04 -07:00
2020-05-25 17:04:04 -07:00
2020-02-14 08:45:59 +00:00
2020-06-29 08:09:40 +02:00
2020-02-14 05:35:29 +00:00
2020-06-11 16:09:43 +10:00
2020-02-14 08:45:59 +00:00