diff options
author | George Wilson <[email protected]> | 2013-05-06 10:14:52 -0700 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2013-05-06 12:39:34 -0700 |
commit | 55d85d5a8c45c4559a4a0e675c37b0c3afb19c2f (patch) | |
tree | de4e1e0564aa00bb1dcb8b91c15e9655f7f36248 /include/sys/space_map.h | |
parent | 5853fe790d1df58c5dd85ea52c5e165b6d43013c (diff) |
Illumos #3329, #3330, #3331, #3335
3329 spa_sync() spends 10-20% of its time in spa_free_sync_cb()
3330 space_seg_t should have its own kmem_cache
3331 deferred frees should happen after sync_pass 1
3335 make SYNC_PASS_* constants tunable
Reviewed by: Adam Leventhal <[email protected]>
Reviewed by: Matt Ahrens <[email protected]>
Reviewed by: Christopher Siden <[email protected]>
Reviewed by: Eric Schrock <[email protected]>
Reviewed by: Richard Lowe <[email protected]>
Reviewed by: Dan McDonald <[email protected]>
Approved by: Eric Schrock <[email protected]>
References:
illumos/illumos-gate@01f55e48fb4d524eaf70687728aa51b7762e2e97
https://www.illumos.org/issues/3329
https://www.illumos.org/issues/3330
https://www.illumos.org/issues/3331
https://www.illumos.org/issues/3335
Ported-by: Brian Behlendorf <[email protected]>
Diffstat (limited to 'include/sys/space_map.h')
-rw-r--r-- | include/sys/space_map.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/sys/space_map.h b/include/sys/space_map.h index 332299724..cbe75afd1 100644 --- a/include/sys/space_map.h +++ b/include/sys/space_map.h @@ -23,6 +23,10 @@ * Use is subject to license terms. */ +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + #ifndef _SYS_SPACE_MAP_H #define _SYS_SPACE_MAP_H @@ -136,6 +140,8 @@ struct space_map_ops { typedef void space_map_func_t(space_map_t *sm, uint64_t start, uint64_t size); +extern void space_map_init(void); +extern void space_map_fini(void); extern void space_map_create(space_map_t *sm, uint64_t start, uint64_t size, uint8_t shift, kmutex_t *lp); extern void space_map_destroy(space_map_t *sm); |