shithub: riscv

Download patch

ref: f2cfee358f329519e913a20142d96b1e0029633c
parent: c6ec2041ad9bb2dbb6b710c7efdbf2fc8de4f5ba
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Sun Oct 22 09:21:23 EDT 2023

ndb/dns: implement concurrent garbage collection

Get rid of the blocking in getactivity()/putactivity(),
and instead split garbage collection over 2 phases (mark bit)
so that dnageall() runs the mark phase only for the current mark
bit and sweep for the previous mark (which then becomes
the current mark after the collection). Note that dnageall()
only runs once the previous phase (previous mark) has no
more active procs.

Also, fix the ageing period controller and make it
more agressive once dnvars.names is twice the target
so we can actually sustain being hammered with new
domain name queries.