Module Name: src Committed By: riastradh Date: Mon Jul 17 12:54:29 UTC 2023
Modified Files: src/sys/kern: kern_condvar.c kern_mutex.c kern_rwlock.c kern_synch.c sys_lwp.c sys_select.c src/sys/sys: syncobj.h Log Message: kern: New struct syncobj::sobj_name member for diagnostics. XXX potential kernel ABI change -- not sure any modules actually use struct syncobj but it's hard to rule that out because sys/syncobj.h leaks into sys/lwp.h To generate a diff of this commit: cvs rdiff -u -r1.54 -r1.55 src/sys/kern/kern_condvar.c cvs rdiff -u -r1.107 -r1.108 src/sys/kern/kern_mutex.c cvs rdiff -u -r1.70 -r1.71 src/sys/kern/kern_rwlock.c cvs rdiff -u -r1.357 -r1.358 src/sys/kern/kern_synch.c cvs rdiff -u -r1.83 -r1.84 src/sys/kern/sys_lwp.c cvs rdiff -u -r1.60 -r1.61 src/sys/kern/sys_select.c cvs rdiff -u -r1.13 -r1.14 src/sys/sys/syncobj.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/kern/kern_condvar.c diff -u src/sys/kern/kern_condvar.c:1.54 src/sys/kern/kern_condvar.c:1.55 --- src/sys/kern/kern_condvar.c:1.54 Wed Jun 29 22:27:01 2022 +++ src/sys/kern/kern_condvar.c Mon Jul 17 12:54:29 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_condvar.c,v 1.54 2022/06/29 22:27:01 riastradh Exp $ */ +/* $NetBSD: kern_condvar.c,v 1.55 2023/07/17 12:54:29 riastradh Exp $ */ /*- * Copyright (c) 2006, 2007, 2008, 2019, 2020 The NetBSD Foundation, Inc. @@ -34,7 +34,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_condvar.c,v 1.54 2022/06/29 22:27:01 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_condvar.c,v 1.55 2023/07/17 12:54:29 riastradh Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -70,6 +70,7 @@ static inline void cv_wakeup_one(kcondva static inline void cv_wakeup_all(kcondvar_t *); syncobj_t cv_syncobj = { + .sobj_name = "cv", .sobj_flag = SOBJ_SLEEPQ_SORTED, .sobj_unsleep = cv_unsleep, .sobj_changepri = sleepq_changepri, Index: src/sys/kern/kern_mutex.c diff -u src/sys/kern/kern_mutex.c:1.107 src/sys/kern/kern_mutex.c:1.108 --- src/sys/kern/kern_mutex.c:1.107 Mon May 1 12:18:08 2023 +++ src/sys/kern/kern_mutex.c Mon Jul 17 12:54:29 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_mutex.c,v 1.107 2023/05/01 12:18:08 riastradh Exp $ */ +/* $NetBSD: kern_mutex.c,v 1.108 2023/07/17 12:54:29 riastradh Exp $ */ /*- * Copyright (c) 2002, 2006, 2007, 2008, 2019 The NetBSD Foundation, Inc. @@ -40,7 +40,7 @@ #define __MUTEX_PRIVATE #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_mutex.c,v 1.107 2023/05/01 12:18:08 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_mutex.c,v 1.108 2023/07/17 12:54:29 riastradh Exp $"); #include <sys/param.h> #include <sys/atomic.h> @@ -296,6 +296,7 @@ lockops_t mutex_adaptive_lockops = { }; syncobj_t mutex_syncobj = { + .sobj_name = "mutex", .sobj_flag = SOBJ_SLEEPQ_SORTED, .sobj_unsleep = turnstile_unsleep, .sobj_changepri = turnstile_changepri, Index: src/sys/kern/kern_rwlock.c diff -u src/sys/kern/kern_rwlock.c:1.70 src/sys/kern/kern_rwlock.c:1.71 --- src/sys/kern/kern_rwlock.c:1.70 Fri Feb 24 11:11:10 2023 +++ src/sys/kern/kern_rwlock.c Mon Jul 17 12:54:29 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_rwlock.c,v 1.70 2023/02/24 11:11:10 riastradh Exp $ */ +/* $NetBSD: kern_rwlock.c,v 1.71 2023/07/17 12:54:29 riastradh Exp $ */ /*- * Copyright (c) 2002, 2006, 2007, 2008, 2009, 2019, 2020 @@ -45,7 +45,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.70 2023/02/24 11:11:10 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.71 2023/07/17 12:54:29 riastradh Exp $"); #include "opt_lockdebug.h" @@ -121,6 +121,7 @@ lockops_t rwlock_lockops = { }; syncobj_t rw_syncobj = { + .sobj_name = "rw", .sobj_flag = SOBJ_SLEEPQ_SORTED, .sobj_unsleep = turnstile_unsleep, .sobj_changepri = turnstile_changepri, Index: src/sys/kern/kern_synch.c diff -u src/sys/kern/kern_synch.c:1.357 src/sys/kern/kern_synch.c:1.358 --- src/sys/kern/kern_synch.c:1.357 Thu Jul 13 13:33:55 2023 +++ src/sys/kern/kern_synch.c Mon Jul 17 12:54:29 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_synch.c,v 1.357 2023/07/13 13:33:55 riastradh Exp $ */ +/* $NetBSD: kern_synch.c,v 1.358 2023/07/17 12:54:29 riastradh Exp $ */ /*- * Copyright (c) 1999, 2000, 2004, 2006, 2007, 2008, 2009, 2019, 2020 @@ -69,7 +69,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_synch.c,v 1.357 2023/07/13 13:33:55 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_synch.c,v 1.358 2023/07/17 12:54:29 riastradh Exp $"); #include "opt_kstack.h" #include "opt_ddb.h" @@ -113,6 +113,7 @@ static void sched_changepri(struct lwp * static void sched_lendpri(struct lwp *, pri_t); syncobj_t sleep_syncobj = { + .sobj_name = "sleep", .sobj_flag = SOBJ_SLEEPQ_SORTED, .sobj_unsleep = sleepq_unsleep, .sobj_changepri = sleepq_changepri, @@ -121,6 +122,7 @@ syncobj_t sleep_syncobj = { }; syncobj_t sched_syncobj = { + .sobj_name = "sched", .sobj_flag = SOBJ_SLEEPQ_SORTED, .sobj_unsleep = sched_unsleep, .sobj_changepri = sched_changepri, @@ -129,6 +131,7 @@ syncobj_t sched_syncobj = { }; syncobj_t kpause_syncobj = { + .sobj_name = "kpause", .sobj_flag = SOBJ_SLEEPQ_NULL, .sobj_unsleep = sleepq_unsleep, .sobj_changepri = sleepq_changepri, Index: src/sys/kern/sys_lwp.c diff -u src/sys/kern/sys_lwp.c:1.83 src/sys/kern/sys_lwp.c:1.84 --- src/sys/kern/sys_lwp.c:1.83 Wed Jun 29 22:27:01 2022 +++ src/sys/kern/sys_lwp.c Mon Jul 17 12:54:29 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: sys_lwp.c,v 1.83 2022/06/29 22:27:01 riastradh Exp $ */ +/* $NetBSD: sys_lwp.c,v 1.84 2023/07/17 12:54:29 riastradh Exp $ */ /*- * Copyright (c) 2001, 2006, 2007, 2008, 2019, 2020 The NetBSD Foundation, Inc. @@ -35,7 +35,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: sys_lwp.c,v 1.83 2022/06/29 22:27:01 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sys_lwp.c,v 1.84 2023/07/17 12:54:29 riastradh Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -58,6 +58,7 @@ __KERNEL_RCSID(0, "$NetBSD: sys_lwp.c,v static const stack_t lwp_ss_init = SS_INIT; syncobj_t lwp_park_syncobj = { + .sobj_name = "lwp_park", .sobj_flag = SOBJ_SLEEPQ_NULL, .sobj_unsleep = sleepq_unsleep, .sobj_changepri = sleepq_changepri, Index: src/sys/kern/sys_select.c diff -u src/sys/kern/sys_select.c:1.60 src/sys/kern/sys_select.c:1.61 --- src/sys/kern/sys_select.c:1.60 Wed Jun 29 22:27:01 2022 +++ src/sys/kern/sys_select.c Mon Jul 17 12:54:29 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: sys_select.c,v 1.60 2022/06/29 22:27:01 riastradh Exp $ */ +/* $NetBSD: sys_select.c,v 1.61 2023/07/17 12:54:29 riastradh Exp $ */ /*- * Copyright (c) 2007, 2008, 2009, 2010, 2019, 2020 The NetBSD Foundation, Inc. @@ -84,7 +84,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: sys_select.c,v 1.60 2022/06/29 22:27:01 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sys_select.c,v 1.61 2023/07/17 12:54:29 riastradh Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -143,6 +143,7 @@ static const int sel_flag[] = { * enqueue LWPs at all, unless subject to a collision. */ syncobj_t select_sobj = { + .sobj_name = "select", .sobj_flag = SOBJ_SLEEPQ_LIFO, .sobj_unsleep = sleepq_unsleep, .sobj_changepri = sleepq_changepri, Index: src/sys/sys/syncobj.h diff -u src/sys/sys/syncobj.h:1.13 src/sys/sys/syncobj.h:1.14 --- src/sys/sys/syncobj.h:1.13 Thu Mar 26 21:15:14 2020 +++ src/sys/sys/syncobj.h Mon Jul 17 12:54:29 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: syncobj.h,v 1.13 2020/03/26 21:15:14 ad Exp $ */ +/* $NetBSD: syncobj.h,v 1.14 2023/07/17 12:54:29 riastradh Exp $ */ /*- * Copyright (c) 2007, 2008, 2020 The NetBSD Foundation, Inc. @@ -42,6 +42,7 @@ typedef volatile const void *wchan_t; * Synchronisation object operations set. */ typedef struct syncobj { + char sobj_name[16]; u_int sobj_flag; void (*sobj_unsleep)(struct lwp *, bool); void (*sobj_changepri)(struct lwp *, pri_t);