kern_mtxpool.c (93818) | kern_mtxpool.c (116182) |
---|---|
1/*- 2 * Copyright (c) 2001 Matthew Dillon. All Rights Reserved. Copyright 3 * terms are as specified in the COPYRIGHT file at the base of the source 4 * tree. 5 * 6 * Mutex pool routines. These routines are designed to be used as short 7 * term leaf mutexes (e.g. the last mutex you might aquire other then 8 * calling msleep()). They operate using a shared pool. A mutex is chosen --- 7 unchanged lines hidden (view full) --- 16 * mutexes to interlock destructor ops. 17 * - no initialization/destructor overhead 18 * - can be used with msleep. 19 * 20 * Disadvantages: 21 * - should generally only be used as leaf mutexes 22 * - pool/pool dependancy ordering cannot be depended on. 23 * - possible L1 cache mastersip contention between cpus | 1/*- 2 * Copyright (c) 2001 Matthew Dillon. All Rights Reserved. Copyright 3 * terms are as specified in the COPYRIGHT file at the base of the source 4 * tree. 5 * 6 * Mutex pool routines. These routines are designed to be used as short 7 * term leaf mutexes (e.g. the last mutex you might aquire other then 8 * calling msleep()). They operate using a shared pool. A mutex is chosen --- 7 unchanged lines hidden (view full) --- 16 * mutexes to interlock destructor ops. 17 * - no initialization/destructor overhead 18 * - can be used with msleep. 19 * 20 * Disadvantages: 21 * - should generally only be used as leaf mutexes 22 * - pool/pool dependancy ordering cannot be depended on. 23 * - possible L1 cache mastersip contention between cpus |
24 * 25 * $FreeBSD: head/sys/kern/kern_mtxpool.c 93818 2002-04-04 21:03:38Z jhb $ | |
26 */ 27 | 24 */ 25 |
26#include <sys/cdefs.h> 27__FBSDID("$FreeBSD: head/sys/kern/kern_mtxpool.c 116182 2003-06-11 00:56:59Z obrien $"); 28 |
|
28#include <sys/param.h> 29#include <sys/proc.h> 30#include <sys/kernel.h> 31#include <sys/ktr.h> 32#include <sys/lock.h> 33#include <sys/malloc.h> 34#include <sys/mutex.h> 35#include <sys/systm.h> --- 80 unchanged lines hidden --- | 29#include <sys/param.h> 30#include <sys/proc.h> 31#include <sys/kernel.h> 32#include <sys/ktr.h> 33#include <sys/lock.h> 34#include <sys/malloc.h> 35#include <sys/mutex.h> 36#include <sys/systm.h> --- 80 unchanged lines hidden --- |