diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -400,12 +400,6 @@ */ uma_zone_t buf_zone; -/* - * Single global constant for BUF_WMESG, to avoid getting multiple references. - * buf_wmesg is referred from macros. - */ -const char *buf_wmesg = BUF_WMESG; - static int sysctl_runningspace(SYSCTL_HANDLER_ARGS) { @@ -1184,6 +1178,12 @@ return (v); } +/* + * Single global constant for BUF_WMESG, to avoid getting multiple + * references. + */ +static const char buf_wmesg[] = "bufwait"; + /* Initialize the buffer subsystem. Called before use of any buffers. */ void bufinit(void) @@ -1214,7 +1214,7 @@ bp->b_xflags = 0; bp->b_data = bp->b_kvabase = unmapped_buf; LIST_INIT(&bp->b_dep); - BUF_LOCKINIT(bp); + BUF_LOCKINIT(bp, buf_wmesg); bq_insert(&bqempty, bp, false); } diff --git a/sys/sys/buf.h b/sys/sys/buf.h --- a/sys/sys/buf.h +++ b/sys/sys/buf.h @@ -292,16 +292,14 @@ /* * Buffer locking */ -extern const char *buf_wmesg; /* Default buffer lock message */ -#define BUF_WMESG "bufwait" #include /* XXX for curthread */ #include /* * Initialize a lock. */ -#define BUF_LOCKINIT(bp) \ - lockinit(&(bp)->b_lock, PRIBIO + 4, buf_wmesg, 0, LK_NEW) +#define BUF_LOCKINIT(bp, wmesg) \ + lockinit(&(bp)->b_lock, PRIBIO + 4, wmesg, 0, LK_NEW) /* * * Get a lock sleeping non-interruptably until it becomes available. diff --git a/sys/vm/vm_pager.c b/sys/vm/vm_pager.c --- a/sys/vm/vm_pager.c +++ b/sys/vm/vm_pager.c @@ -489,6 +489,8 @@ BUF_UNLOCK(bp); } +static const char pbuf_wmesg[] = "pbufwait"; + static int pbuf_init(void *mem, int size, int flags) { @@ -498,7 +500,7 @@ if (bp->b_kvabase == NULL) return (ENOMEM); bp->b_kvasize = ptoa(PBUF_PAGES); - BUF_LOCKINIT(bp); + BUF_LOCKINIT(bp, pbuf_wmesg); LIST_INIT(&bp->b_dep); bp->b_rcred = bp->b_wcred = NOCRED; bp->b_xflags = 0;