diff options
author | Brian Behlendorf <[email protected]> | 2010-08-26 10:58:00 -0700 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2010-08-31 08:38:48 -0700 |
commit | bf701a83c5ec192be6d3afe87ebeee45ce9127f4 (patch) | |
tree | 84b1c9b02f92be72eaf8687f55dfa640431a1286 /module/zfs/spa.c | |
parent | 161ce7ce3cfc7ec1cd3c93d27f25a94b7408588f (diff) |
Fix stack inline
Decrease stack usage for various call paths by forcing certain
functions to be inlined. By inlining the functions the overhead
of a new stack frame is removed at the cost of increased code size.
Signed-off-by: Brian Behlendorf <[email protected]>
Diffstat (limited to 'module/zfs/spa.c')
-rw-r--r-- | module/zfs/spa.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/module/zfs/spa.c b/module/zfs/spa.c index d11f93dbe..606138a3e 100644 --- a/module/zfs/spa.c +++ b/module/zfs/spa.c @@ -113,7 +113,7 @@ const zio_taskq_info_t zio_taskqs[ZIO_TYPES][ZIO_TASKQ_TYPES] = { static dsl_syncfunc_t spa_sync_props; static boolean_t spa_has_active_shared_spare(spa_t *spa); -static int spa_load_impl(spa_t *spa, uint64_t, nvlist_t *config, +static inline int spa_load_impl(spa_t *spa, uint64_t, nvlist_t *config, spa_load_state_t state, spa_import_type_t type, boolean_t mosconfig, char **ereport); static void spa_vdev_resilver_done(spa_t *spa); @@ -1790,7 +1790,8 @@ spa_load(spa_t *spa, spa_load_state_t state, spa_import_type_t type, * Load an existing storage pool, using the pool's builtin spa_config as a * source of configuration information. */ -static int +__attribute__((always_inline)) +static inline int spa_load_impl(spa_t *spa, uint64_t pool_guid, nvlist_t *config, spa_load_state_t state, spa_import_type_t type, boolean_t mosconfig, char **ereport) |