diff options
author | 2020-12-07 16:55:28 +0000 | |
---|---|---|
committer | 2020-12-07 16:55:28 +0000 | |
commit | b21c774f9611a2013048bb9dfc02468e6860dad1 (patch) | |
tree | 0edc08a4801a5acf3d04ac257d6e94fc91e554f5 /lib/libkvm/kvm_proc2.c | |
parent | Limit the URL embedded in .cer files to only consist out of isalnum or (diff) | |
download | wireguard-openbsd-b21c774f9611a2013048bb9dfc02468e6860dad1.tar.xz wireguard-openbsd-b21c774f9611a2013048bb9dfc02468e6860dad1.zip |
Convert the per-process thread list into a SMR_TAILQ.
Currently all iterations are done under KERNEL_LOCK() and therefor use
the *_LOCKED() variant.
From and ok claudio@
Diffstat (limited to 'lib/libkvm/kvm_proc2.c')
-rw-r--r-- | lib/libkvm/kvm_proc2.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/libkvm/kvm_proc2.c b/lib/libkvm/kvm_proc2.c index 96f7dc91b92..259fdfe8ec9 100644 --- a/lib/libkvm/kvm_proc2.c +++ b/lib/libkvm/kvm_proc2.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kvm_proc2.c,v 1.31 2019/12/11 12:36:28 sthen Exp $ */ +/* $OpenBSD: kvm_proc2.c,v 1.32 2020/12/07 16:55:28 mpi Exp $ */ /* $NetBSD: kvm_proc.c,v 1.30 1999/03/24 05:50:50 mrg Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -341,8 +341,9 @@ kvm_proclist(kvm_t *kd, int op, int arg, struct process *pr, kp.p_pctcpu = 0; kp.p_stat = (process.ps_flags & PS_ZOMBIE) ? SDEAD : SIDL; - for (p = TAILQ_FIRST(&process.ps_threads); p != NULL; - p = TAILQ_NEXT(&proc, p_thr_link)) { + for (p = SMR_TAILQ_FIRST_LOCKED(&process.ps_threads); + p != NULL; + p = SMR_TAILQ_NEXT_LOCKED(&proc, p_thr_link)) { if (KREAD(kd, (u_long)p, &proc)) { _kvm_err(kd, kd->program, "can't read proc at %lx", @@ -376,8 +377,8 @@ kvm_proclist(kvm_t *kd, int op, int arg, struct process *pr, if (!dothreads) continue; - for (p = TAILQ_FIRST(&process.ps_threads); p != NULL; - p = TAILQ_NEXT(&proc, p_thr_link)) { + for (p = SMR_TAILQ_FIRST_LOCKED(&process.ps_threads); p != NULL; + p = SMR_TAILQ_NEXT_LOCKED(&proc, p_thr_link)) { if (KREAD(kd, (u_long)p, &proc)) { _kvm_err(kd, kd->program, "can't read proc at %lx", |