Changeset 3dd148d in mainline for uspace/srv/fs/mfs/mfs_ops.c


Ignore:
Timestamp:
2013-07-29T15:15:49Z (11 years ago)
Author:
Manuele Conti <conti.ma@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
736b07b
Parents:
a1c95da
Message:

Change stafs function operation to allow correct error handling.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/fs/mfs/mfs_ops.c

    ra1c95da r3dd148d  
    6464static int mfs_check_sanity(struct mfs_sb_info *sbi);
    6565static bool is_power_of_two(uint32_t n);
    66 static uint32_t mfs_size_block(service_id_t service_id);
    67 static uint64_t mfs_total_block_count(service_id_t service_id);
    68 static uint64_t mfs_free_block_count(service_id_t service_id);
     66static int mfs_size_block(service_id_t service_id, uint32_t *size);
     67static int mfs_total_block_count(service_id_t service_id, uint64_t *count);
     68static int mfs_free_block_count(service_id_t service_id, uint64_t *count);
    6969
    7070static hash_table_t open_nodes;
     
    11351135}
    11361136
    1137 static uint32_t
    1138 mfs_size_block(service_id_t service_id)
    1139 {
    1140         uint32_t block_size;
    1141 
     1137static int
     1138mfs_size_block(service_id_t service_id, uint32_t *size)
     1139{
    11421140        struct mfs_instance *inst;
    1143         int rc = mfs_instance_get(service_id, &inst);
     1141        int rc;
     1142
     1143        rc = mfs_instance_get(service_id, &inst);
    11441144        if (rc != EOK)
    11451145                return rc;
     1146
    11461147        if (NULL == inst)
    11471148                return ENOENT;
    11481149       
    1149         block_size = inst->sbi->block_size;
    1150 
    1151         return block_size;
    1152 }
    1153 
    1154 static uint64_t
    1155 mfs_total_block_count(service_id_t service_id)
    1156 {
    1157         uint64_t block_total;
     1150        *size = inst->sbi->block_size;
     1151
     1152        return EOK;
     1153}
     1154
     1155static int
     1156mfs_total_block_count(service_id_t service_id, uint64_t *count)
     1157{
     1158        struct mfs_instance *inst;
     1159        int rc;
    11581160       
    1159         struct mfs_instance *inst;
    1160         int rc = mfs_instance_get(service_id, &inst);
     1161        rc = mfs_instance_get(service_id, &inst);
    11611162        if (rc != EOK)
    11621163                return rc;
     
    11651166                return ENOENT;
    11661167       
    1167         block_total = (uint64_t) MFS_BMAP_SIZE_BITS(inst->sbi, BMAP_ZONE);
    1168 
    1169         return block_total;
    1170 }
    1171 
    1172 static uint64_t
    1173 mfs_free_block_count(service_id_t service_id)
     1168        *count = (uint64_t) MFS_BMAP_SIZE_BITS(inst->sbi, BMAP_ZONE);
     1169
     1170        return EOK;
     1171}
     1172
     1173static int
     1174mfs_free_block_count(service_id_t service_id, uint64_t *count)
    11741175{
    11751176        uint32_t block_free;
     
    11841185
    11851186        mfs_count_free_zones(inst, &block_free);
    1186 
    1187         return (uint64_t)block_free;
     1187        *count = block_free;
     1188
     1189        return EOK;
    11881190}
    11891191
Note: See TracChangeset for help on using the changeset viewer.