Changeset 7fff5eab in mainline for uspace/srv/vfs/vfs_mount.c


Ignore:
Timestamp:
2008-01-08T20:38:59Z (17 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
67f63c4
Parents:
752ccee
Message:

Management of the cached VFS node size.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/vfs/vfs_mount.c

    r752ccee r7fff5eab  
    5353};
    5454
    55 static int lookup_root(int fs_handle, int dev_handle, vfs_triplet_t *root)
     55static int lookup_root(int fs_handle, int dev_handle, vfs_triplet_t *root,
     56    size_t *size)
    5657{
    5758        vfs_pair_t altroot = {
     
    6061        };
    6162
    62         return vfs_lookup_internal("/", strlen("/"), root, &altroot);
     63        return vfs_lookup_internal("/", strlen("/"), root, size, &altroot);
    6364}
    6465
     
    161162        int rc;
    162163        vfs_triplet_t mounted_root;
    163         rc = lookup_root(fs_handle, dev_handle, &mounted_root);
     164        size_t mrsz;
     165        rc = lookup_root(fs_handle, dev_handle, &mounted_root, &mrsz);
    164166        if (rc != EOK) {
    165167                free(buf);
     
    167169                return;
    168170        }
    169         vfs_node_t *mr_node = vfs_node_get(&mounted_root);
     171        vfs_node_t *mr_node = vfs_node_get(&mounted_root, mrsz);
    170172        if (!mr_node) {
    171173                free(buf);
     
    178180         */
    179181        vfs_triplet_t mp;
     182        size_t mpsz;
    180183        futex_down(&rootfs_futex);
    181184        if (rootfs.fs_handle) {
     
    184187                 */
    185188                rwlock_writer_lock(&namespace_rwlock);
    186                 rc = vfs_lookup_internal(buf, size, &mp, NULL);
     189                rc = vfs_lookup_internal(buf, size, &mp, &mpsz, NULL);
    187190                if (rc != EOK) {
    188191                        /*
     
    196199                        return;
    197200                }
    198                 mp_node = vfs_node_get(&mp);
     201                mp_node = vfs_node_get(&mp, mpsz);
    199202                if (!mp_node) {
    200203                        rwlock_writer_unlock(&namespace_rwlock);
Note: See TracChangeset for help on using the changeset viewer.