Ignore:
File:
1 edited

Legend:

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

    r1d6dd2a r4f30222  
    3636#include <adt/hash_table.h>
    3737#include <adt/hash.h>
    38 #include <str.h>
    3938#include "mfs.h"
    4039
     
    4241static bool check_magic_number(uint16_t magic, bool *native,
    4342    mfs_version_t *version, bool *longfilenames);
    44 static errno_t mfs_node_core_get(fs_node_t **rfn, struct mfs_instance *inst,
     43static int mfs_node_core_get(fs_node_t **rfn, struct mfs_instance *inst,
    4544    fs_index_t index);
    46 static errno_t mfs_node_put(fs_node_t *fsnode);
    47 static errno_t mfs_node_open(fs_node_t *fsnode);
     45static int mfs_node_put(fs_node_t *fsnode);
     46static int mfs_node_open(fs_node_t *fsnode);
    4847static fs_index_t mfs_index_get(fs_node_t *fsnode);
    4948static unsigned mfs_lnkcnt_get(fs_node_t *fsnode);
    5049static bool mfs_is_directory(fs_node_t *fsnode);
    5150static bool mfs_is_file(fs_node_t *fsnode);
    52 static errno_t mfs_has_children(bool *has_children, fs_node_t *fsnode);
    53 static errno_t mfs_root_get(fs_node_t **rfn, service_id_t service_id);
     51static int mfs_has_children(bool *has_children, fs_node_t *fsnode);
     52static int mfs_root_get(fs_node_t **rfn, service_id_t service_id);
    5453static service_id_t mfs_service_get(fs_node_t *fsnode);
    5554static aoff64_t mfs_size_get(fs_node_t *node);
    56 static errno_t mfs_match(fs_node_t **rfn, fs_node_t *pfn, const char *component);
    57 static errno_t mfs_create_node(fs_node_t **rfn, service_id_t service_id, int flags);
    58 static errno_t mfs_link(fs_node_t *pfn, fs_node_t *cfn, const char *name);
    59 static errno_t mfs_unlink(fs_node_t *, fs_node_t *, const char *name);
    60 static errno_t mfs_destroy_node(fs_node_t *fn);
    61 static errno_t mfs_node_get(fs_node_t **rfn, service_id_t service_id,
     55static int mfs_match(fs_node_t **rfn, fs_node_t *pfn, const char *component);
     56static int mfs_create_node(fs_node_t **rfn, service_id_t service_id, int flags);
     57static int mfs_link(fs_node_t *pfn, fs_node_t *cfn, const char *name);
     58static int mfs_unlink(fs_node_t *, fs_node_t *, const char *name);
     59static int mfs_destroy_node(fs_node_t *fn);
     60static int mfs_node_get(fs_node_t **rfn, service_id_t service_id,
    6261    fs_index_t index);
    63 static errno_t mfs_instance_get(service_id_t service_id,
     62static int mfs_instance_get(service_id_t service_id,
    6463    struct mfs_instance **instance);
    65 static errno_t mfs_check_sanity(struct mfs_sb_info *sbi);
     64static int mfs_check_sanity(struct mfs_sb_info *sbi);
    6665static bool is_power_of_two(uint32_t n);
    67 static errno_t mfs_size_block(service_id_t service_id, uint32_t *size);
    68 static errno_t mfs_total_block_count(service_id_t service_id, uint64_t *count);
    69 static errno_t mfs_free_block_count(service_id_t service_id, uint64_t *count);
     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);
    7069
    7170static hash_table_t open_nodes;
     
    132131};
    133132
    134 errno_t
     133int
    135134mfs_global_init(void)
    136135{
     
    143142/** Read the superblock.
    144143 */
    145 static errno_t mfs_read_sb(service_id_t service_id, struct mfs_sb_info **rsbi)
     144static int mfs_read_sb(service_id_t service_id, struct mfs_sb_info **rsbi)
    146145{
    147146        struct mfs_superblock *sb = NULL;
     
    152151        mfs_version_t version;
    153152        uint16_t magic;
    154         errno_t rc;
     153        int rc;
    155154
    156155        /* Allocate space for generic MFS superblock */
     
    278277
    279278
    280 static errno_t mfs_fsprobe(service_id_t service_id, vfs_fs_probe_info_t *info)
     279static int mfs_fsprobe(service_id_t service_id, vfs_fs_probe_info_t *info)
    281280{
    282281        struct mfs_sb_info *sbi = NULL;
    283         errno_t rc;
     282        int rc;
    284283
    285284        /* Initialize libblock */
     
    295294}
    296295
    297 static errno_t
     296static int
    298297mfs_mounted(service_id_t service_id, const char *opts, fs_index_t *index,
    299298    aoff64_t *size)
     
    302301        struct mfs_sb_info *sbi = NULL;
    303302        struct mfs_instance *instance = NULL;
    304         errno_t rc;
     303        int rc;
    305304
    306305        /* Check for option enabling write through. */
     
    366365}
    367366
    368 static errno_t
     367static int
    369368mfs_unmounted(service_id_t service_id)
    370369{
     
    373372        mfsdebug("%s()\n", __FUNCTION__);
    374373
    375         errno_t r = mfs_instance_get(service_id, &inst);
     374        int r = mfs_instance_get(service_id, &inst);
    376375        if (r != EOK)
    377376                return r;
     
    397396}
    398397
    399 static errno_t
     398static int
    400399mfs_create_node(fs_node_t **rfn, service_id_t service_id, int flags)
    401400{
    402         errno_t r;
     401        int r;
    403402        struct mfs_instance *inst;
    404403        struct mfs_node *mnode;
     
    484483}
    485484
    486 static errno_t
     485static int
    487486mfs_match(fs_node_t **rfn, fs_node_t *pfn, const char *component)
    488487{
     
    490489        struct mfs_ino_info *ino_i = mnode->ino_i;
    491490        struct mfs_dentry_info d_info;
    492         errno_t r;
     491        int r;
    493492
    494493        if (!S_ISDIR(ino_i->i_mode))
     
    531530}
    532531
    533 static errno_t
     532static int
    534533mfs_node_get(fs_node_t **rfn, service_id_t service_id,
    535534    fs_index_t index)
    536535{
    537         errno_t rc;
     536        int rc;
    538537        struct mfs_instance *instance;
    539538
     
    545544}
    546545
    547 static errno_t
     546static int
    548547mfs_node_put(fs_node_t *fsnode)
    549548{
    550         errno_t rc = EOK;
     549        int rc = EOK;
    551550        struct mfs_node *mnode = fsnode->data;
    552551
     
    569568}
    570569
    571 static errno_t
     570static int
    572571mfs_node_open(fs_node_t *fsnode)
    573572{
     
    602601}
    603602
    604 static errno_t
     603static int
    605604mfs_node_core_get(fs_node_t **rfn, struct mfs_instance *inst,
    606605    fs_index_t index)
     
    608607        fs_node_t *node = NULL;
    609608        struct mfs_node *mnode = NULL;
    610         errno_t rc;
     609        int rc;
    611610
    612611        fibril_mutex_lock(&open_nodes_lock);
     
    689688}
    690689
    691 static errno_t
     690static int
    692691mfs_root_get(fs_node_t **rfn, service_id_t service_id)
    693692{
    694         errno_t rc = mfs_node_get(rfn, service_id, MFS_ROOT_INO);
     693        int rc = mfs_node_get(rfn, service_id, MFS_ROOT_INO);
    695694        return rc;
    696695}
    697696
    698 static errno_t
     697static int
    699698mfs_link(fs_node_t *pfn, fs_node_t *cfn, const char *name)
    700699{
     
    707706                return ENAMETOOLONG;
    708707
    709         errno_t r = mfs_insert_dentry(parent, name, child->ino_i->index);
     708        int r = mfs_insert_dentry(parent, name, child->ino_i->index);
    710709        if (r != EOK)
    711710                return r;
     
    737736exit:
    738737        if (destroy_dentry) {
    739                 errno_t r2 = mfs_remove_dentry(parent, name);
     738                int r2 = mfs_remove_dentry(parent, name);
    740739                if (r2 != EOK)
    741740                        r = r2;
     
    747746}
    748747
    749 static errno_t
     748static int
    750749mfs_unlink(fs_node_t *pfn, fs_node_t *cfn, const char *name)
    751750{
     
    753752        struct mfs_node *child = cfn->data;
    754753        bool has_children;
    755         errno_t r;
     754        int r;
    756755
    757756        if (!parent)
     
    788787}
    789788
    790 static errno_t
     789static int
    791790mfs_has_children(bool *has_children, fs_node_t *fsnode)
    792791{
    793792        struct mfs_node *mnode = fsnode->data;
    794793        struct mfs_sb_info *sbi = mnode->instance->sbi;
    795         errno_t r;
     794        int r;
    796795
    797796        *has_children = false;
     
    820819}
    821820
    822 static errno_t
     821static int
    823822mfs_read(service_id_t service_id, fs_index_t index, aoff64_t pos,
    824823    size_t *rbytes)
    825824{
    826         errno_t rc;
     825        int rc;
    827826        fs_node_t *fn = NULL;
    828827
     
    927926out_error:
    928927        ;
    929         errno_t tmp = mfs_node_put(fn);
     928        int tmp = mfs_node_put(fn);
    930929        async_answer_0(callid, tmp != EOK ? tmp : rc);
    931930        return tmp != EOK ? tmp : rc;
    932931}
    933932
    934 static errno_t
     933static int
    935934mfs_write(service_id_t service_id, fs_index_t index, aoff64_t pos,
    936935    size_t *wbytes, aoff64_t *nsize)
    937936{
    938937        fs_node_t *fn;
    939         errno_t r;
     938        int r;
    940939        int flags = BLOCK_FLAGS_NONE;
    941940
     
    10161015}
    10171016
    1018 static errno_t
     1017static int
    10191018mfs_destroy(service_id_t service_id, fs_index_t index)
    10201019{
    10211020        fs_node_t *fn = NULL;
    1022         errno_t r;
     1021        int r;
    10231022
    10241023        r = mfs_node_get(&fn, service_id, index);
     
    10321031}
    10331032
    1034 static errno_t
     1033static int
    10351034mfs_destroy_node(fs_node_t *fn)
    10361035{
    10371036        struct mfs_node *mnode = fn->data;
    10381037        bool has_children;
    1039         errno_t r;
     1038        int r;
    10401039
    10411040        mfsdebug("mfs_destroy_node %d\n", mnode->ino_i->index);
     
    10601059}
    10611060
    1062 static errno_t
     1061static int
    10631062mfs_truncate(service_id_t service_id, fs_index_t index, aoff64_t size)
    10641063{
    10651064        fs_node_t *fn;
    1066         errno_t r;
     1065        int r;
    10671066
    10681067        r = mfs_node_get(&fn, service_id, index);
     
    10841083}
    10851084
    1086 static errno_t
     1085static int
    10871086mfs_instance_get(service_id_t service_id, struct mfs_instance **instance)
    10881087{
    10891088        void *data;
    1090         errno_t rc;
     1089        int rc;
    10911090
    10921091        rc = fs_instance_get(service_id, &data);
     
    11361135 * @return EOK on success, ENOTSUP otherwise.
    11371136 */
    1138 static errno_t
     1137static int
    11391138mfs_check_sanity(struct mfs_sb_info *sbi)
    11401139{
     
    11531152}
    11541153
    1155 static errno_t
     1154static int
    11561155mfs_close(service_id_t service_id, fs_index_t index)
    11571156{
     
    11591158}
    11601159
    1161 static errno_t
     1160static int
    11621161mfs_sync(service_id_t service_id, fs_index_t index)
    11631162{
    11641163        fs_node_t *fn = NULL;
    1165         errno_t rc = mfs_node_get(&fn, service_id, index);
     1164        int rc = mfs_node_get(&fn, service_id, index);
    11661165        if (rc != EOK)
    11671166                return rc;
     
    11901189}
    11911190
    1192 static errno_t
     1191static int
    11931192mfs_size_block(service_id_t service_id, uint32_t *size)
    11941193{
    11951194        struct mfs_instance *inst;
    1196         errno_t rc;
     1195        int rc;
    11971196
    11981197        rc = mfs_instance_get(service_id, &inst);
     
    12081207}
    12091208
    1210 static errno_t
     1209static int
    12111210mfs_total_block_count(service_id_t service_id, uint64_t *count)
    12121211{
    12131212        struct mfs_instance *inst;
    1214         errno_t rc;
     1213        int rc;
    12151214       
    12161215        rc = mfs_instance_get(service_id, &inst);
     
    12261225}
    12271226
    1228 static errno_t
     1227static int
    12291228mfs_free_block_count(service_id_t service_id, uint64_t *count)
    12301229{
     
    12321231       
    12331232        struct mfs_instance *inst;
    1234         errno_t rc = mfs_instance_get(service_id, &inst);
     1233        int rc = mfs_instance_get(service_id, &inst);
    12351234        if (rc != EOK)
    12361235                return rc;
Note: See TracChangeset for help on using the changeset viewer.