aboutsummaryrefslogtreecommitdiffstats
path: root/include/sys/kmem.h
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2012-09-07 14:24:17 -0700
committerBrian Behlendorf <[email protected]>2012-09-07 14:27:03 -0700
commitcb5c2acebb86da5b50f099b39209d22845eda8c7 (patch)
treee4452589d3accd24b4664b33f227ab59bba7f5f1 /include/sys/kmem.h
parentac8ca67a88bdb8be08456785116a8824fba735df (diff)
Add KMC_NOEMERGENCY slab flag
Provide a flag to disable the use of emergency objects for a specific kmem cache. There may be instances where under no circumstances should you kmalloc() an emergency object. For example, when you cache contains very large objects (>128k). Signed-off-by: Brian Behlendorf <[email protected]>
Diffstat (limited to 'include/sys/kmem.h')
-rw-r--r--include/sys/kmem.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/sys/kmem.h b/include/sys/kmem.h
index 116d6db0d..0149e754c 100644
--- a/include/sys/kmem.h
+++ b/include/sys/kmem.h
@@ -340,6 +340,7 @@ enum {
KMC_BIT_KMEM = 5, /* Use kmem cache */
KMC_BIT_VMEM = 6, /* Use vmem cache */
KMC_BIT_OFFSLAB = 7, /* Objects not on slab */
+ KMC_BIT_NOEMERGENCY = 8, /* Disable emergency objects */
KMC_BIT_GROWING = 15, /* Growing in progress */
KMC_BIT_REAPING = 16, /* Reaping in progress */
KMC_BIT_DESTROY = 17, /* Destroy in progress */
@@ -365,6 +366,7 @@ typedef enum kmem_cbrc {
#define KMC_KMEM (1 << KMC_BIT_KMEM)
#define KMC_VMEM (1 << KMC_BIT_VMEM)
#define KMC_OFFSLAB (1 << KMC_BIT_OFFSLAB)
+#define KMC_NOEMERGENCY (1 << KMC_BIT_NOEMERGENCY)
#define KMC_GROWING (1 << KMC_BIT_GROWING)
#define KMC_REAPING (1 << KMC_BIT_REAPING)
#define KMC_DESTROY (1 << KMC_BIT_DESTROY)