summaryrefslogtreecommitdiffstats
path: root/usr.bin/ssh/ssh.c
diff options
context:
space:
mode:
authordlg <dlg@openbsd.org>2016-06-03 03:59:43 +0000
committerdlg <dlg@openbsd.org>2016-06-03 03:59:43 +0000
commit55c556fb60abfdd302561e2752f191adf800076f (patch)
tree5d2c02a0004b36e17a7a839ec6b98c60c028bb40 /usr.bin/ssh/ssh.c
parentAdd 'sshd' to the test ID as I'm about to add a similar set for ssh. (diff)
downloadwireguard-openbsd-55c556fb60abfdd302561e2752f191adf800076f.tar.xz
wireguard-openbsd-55c556fb60abfdd302561e2752f191adf800076f.zip
defer the freeing of art tables and nodes to a task.
this will allow us to sleep in srp_finalize before freeing the memory. the defer is done by putting the tables and nodes on a list which is serviced by a task. the task removes all the entries from the list and pool_puts them. the art_tables gc code uses at_parent as its list entry, and the art_node gc code uses a union with the an_dst pointer. both at_parent and an_dst are only used when theyre active as part of an art data structure, and are not used in lookups. once the art is done with them we can reuse these pointers safely. ok mpi@
Diffstat (limited to 'usr.bin/ssh/ssh.c')
0 files changed, 0 insertions, 0 deletions