diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-12-31 10:56:05 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2015-01-27 06:54:22 +0100 |
commit | cf36b70e8dd8755e7dac6eb516169f586e78566d (patch) | |
tree | 97200818ec5dfeaa4e137a572fcbb4db746842b1 /cpukit/libfs/src/imfs/imfs_initsupp.c | |
parent | user/conf.t: Fix typo (diff) | |
download | rtems-cf36b70e8dd8755e7dac6eb516169f586e78566d.tar.bz2 |
IMFS: Replace node union with individual struct
This reduces the average node size.
Add and use IMFS_GENERIC_INITIALIZER().
Diffstat (limited to 'cpukit/libfs/src/imfs/imfs_initsupp.c')
-rw-r--r-- | cpukit/libfs/src/imfs/imfs_initsupp.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/cpukit/libfs/src/imfs/imfs_initsupp.c b/cpukit/libfs/src/imfs/imfs_initsupp.c index 3c103abe6d..5f857d1594 100644 --- a/cpukit/libfs/src/imfs/imfs_initsupp.c +++ b/cpukit/libfs/src/imfs/imfs_initsupp.c @@ -124,9 +124,7 @@ void IMFS_node_destroy( IMFS_jnode_t *node ) { IMFS_assert( node->reference_count == 0 ); - node = (*node->control->node_destroy)( node ); - - free( node ); + (*node->control->node_destroy)( node ); } void IMFS_node_free( const rtems_filesystem_location_info_t *loc ) @@ -142,7 +140,7 @@ void IMFS_node_free( const rtems_filesystem_location_info_t *loc ) static IMFS_jnode_t *IMFS_node_initialize_enosys( IMFS_jnode_t *node, - const IMFS_types_union *info + void *arg ) { errno = ENOSYS; @@ -152,7 +150,7 @@ static IMFS_jnode_t *IMFS_node_initialize_enosys( IMFS_jnode_t *IMFS_node_initialize_default( IMFS_jnode_t *node, - const IMFS_types_union *info + void *arg ) { return node; @@ -165,14 +163,14 @@ IMFS_jnode_t *IMFS_node_remove_default( return node; } -IMFS_jnode_t *IMFS_node_destroy_default( IMFS_jnode_t *node ) +void IMFS_node_destroy_default( IMFS_jnode_t *node ) { - return node; + free( node ); } const IMFS_node_control IMFS_node_control_enosys = { - .imfs_type = IMFS_INVALID_NODE, .handlers = &rtems_filesystem_handlers_default, + .node_size = sizeof(IMFS_jnode_t), .node_initialize = IMFS_node_initialize_enosys, .node_remove = IMFS_node_remove_default, .node_destroy = IMFS_node_destroy_default |