Module Name: src Committed By: matt Date: Thu Feb 17 18:44:54 UTC 2011
Modified Files: src/sys/kern: subr_pcu.c src/sys/sys: pcu.h Log Message: Add a bool to pcu_state_save which indicates whether the PCU is going to be released after the save is done. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/kern/subr_pcu.c cvs rdiff -u -r1.1 -r1.2 src/sys/sys/pcu.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/subr_pcu.c diff -u src/sys/kern/subr_pcu.c:1.1 src/sys/kern/subr_pcu.c:1.2 --- src/sys/kern/subr_pcu.c:1.1 Thu Feb 17 18:32:29 2011 +++ src/sys/kern/subr_pcu.c Thu Feb 17 18:44:54 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: subr_pcu.c,v 1.1 2011/02/17 18:32:29 rmind Exp $ */ +/* $NetBSD: subr_pcu.c,v 1.2 2011/02/17 18:44:54 matt Exp $ */ /*- * Copyright (c) 2011 The NetBSD Foundation, Inc. @@ -57,7 +57,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: subr_pcu.c,v 1.1 2011/02/17 18:32:29 rmind Exp $"); +__KERNEL_RCSID(0, "$NetBSD: subr_pcu.c,v 1.2 2011/02/17 18:44:54 matt Exp $"); #include <sys/param.h> #include <sys/cpu.h> @@ -98,7 +98,7 @@ return; } if (flags & PCU_SAVE) { - pcu->pcu_state_save(l); + pcu->pcu_state_save(l, (flags & PCU_RELEASE) != 0); } if (flags & PCU_RELEASE) { ci->ci_pcu_curlwp[id] = NULL; @@ -131,7 +131,7 @@ KASSERT(ci->ci_pcu_curlwp[id] == l); if (flags & PCU_SAVE) { - pcu->pcu_state_save(l); + pcu->pcu_state_save(l, (flags & PCU_RELEASE) != 0); } if (flags & PCU_RELEASE) { ci->ci_pcu_curlwp[id] = NULL; Index: src/sys/sys/pcu.h diff -u src/sys/sys/pcu.h:1.1 src/sys/sys/pcu.h:1.2 --- src/sys/sys/pcu.h:1.1 Thu Feb 17 18:32:29 2011 +++ src/sys/sys/pcu.h Thu Feb 17 18:44:54 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pcu.h,v 1.1 2011/02/17 18:32:29 rmind Exp $ */ +/* $NetBSD: pcu.h,v 1.2 2011/02/17 18:44:54 matt Exp $ */ /*- * Copyright (c) 2011 The NetBSD Foundation, Inc. @@ -45,7 +45,7 @@ typedef struct { u_int pcu_id; - void (*pcu_state_save)(lwp_t *); + void (*pcu_state_save)(lwp_t *, bool); void (*pcu_state_load)(lwp_t *, bool); } pcu_ops_t;