Changes in uspace/srv/vfs/vfs.h [76a67ce:ffa2c8ef] in mainline


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/vfs/vfs.h

    r76a67ce rffa2c8ef  
    3838#include <fibril_synch.h>
    3939#include <sys/types.h>
    40 #include <loc.h>
     40#include <devmap.h>
    4141#include <bool.h>
    4242#include <ipc/vfs.h>
    43 #include <task.h>
    4443
    4544#ifndef dprintf
     
    5453        vfs_info_t vfs_info;
    5554        fs_handle_t fs_handle;
    56         async_sess_t *sess;
     55        async_sess_t session;
    5756} fs_info_t;
    5857
     
    6261#define VFS_PAIR \
    6362        fs_handle_t fs_handle; \
    64         service_id_t service_id;
     63        devmap_handle_t devmap_handle;
    6564
    6665/**
     
    6867 * doesn't contain any state. For a stateful structure, see vfs_node_t.
    6968 *
    70  * @note        fs_handle, service_id and index are meant to be returned in one
     69 * @note        fs_handle, devmap_handle and index are meant to be returned in one
    7170 *              IPC reply.
    7271 */
     
    146145extern fibril_mutex_t nodes_mutex;
    147146
    148 extern fibril_condvar_t fs_list_cv;
    149 extern fibril_mutex_t fs_list_lock;
    150 extern list_t fs_list;          /**< List of registered file systems. */
    151 
    152 extern fibril_mutex_t fs_mntlist_lock;
    153 extern list_t fs_mntlist;       /**< List of mounted file systems. */
     147extern fibril_condvar_t fs_head_cv;
     148extern fibril_mutex_t fs_head_lock;
     149extern link_t fs_head;          /**< List of registered file systems. */
    154150
    155151extern vfs_pair_t rootfs;       /**< Root file system. */
     
    162158} plb_entry_t;
    163159
    164 extern fibril_mutex_t plb_mutex;/**< Mutex protecting plb and plb_entries. */
     160extern fibril_mutex_t plb_mutex;/**< Mutex protecting plb and plb_head. */
    165161extern uint8_t *plb;            /**< Path Lookup Buffer */
    166 extern list_t plb_entries;      /**< List of active PLB entries. */
     162extern link_t plb_head;         /**< List of active PLB entries. */
     163
     164#define MAX_MNTOPTS_LEN         256
    167165
    168166/** Holding this rwlock prevents changes in file system namespace. */
    169167extern fibril_rwlock_t namespace_rwlock;
    170168
    171 extern async_exch_t *vfs_exchange_grab(fs_handle_t);
    172 extern void vfs_exchange_release(async_exch_t *);
    173 
    174 extern fs_handle_t fs_name_to_handle(unsigned int instance, char *, bool);
     169extern int vfs_grab_phone(fs_handle_t);
     170extern void vfs_release_phone(fs_handle_t, int);
     171
     172extern fs_handle_t fs_name_to_handle(char *, bool);
    175173extern vfs_info_t *fs_handle_to_info(fs_handle_t);
    176174
    177175extern int vfs_lookup_internal(char *, int, vfs_lookup_res_t *,
    178176    vfs_pair_t *, ...);
     177extern int vfs_open_node_internal(vfs_lookup_res_t *);
     178extern int vfs_close_internal(vfs_file_t *);
    179179
    180180extern bool vfs_nodes_init(void);
     
    182182extern void vfs_node_put(vfs_node_t *);
    183183extern void vfs_node_forget(vfs_node_t *);
    184 extern unsigned vfs_nodes_refcount_sum_get(fs_handle_t, service_id_t);
     184extern unsigned vfs_nodes_refcount_sum_get(fs_handle_t, devmap_handle_t);
    185185
    186186
     
    189189extern void *vfs_client_data_create(void);
    190190extern void vfs_client_data_destroy(void *);
    191 
    192 extern void vfs_pass_handle(task_id_t, task_id_t, int);
    193 extern int vfs_wait_handle_internal(void);
    194191
    195192extern vfs_file_t *vfs_file_get(int);
     
    201198extern void vfs_node_addref(vfs_node_t *);
    202199extern void vfs_node_delref(vfs_node_t *);
    203 extern int vfs_open_node_remote(vfs_node_t *);
    204200
    205201extern void vfs_register(ipc_callid_t, ipc_call_t *);
     
    207203extern void vfs_unmount(ipc_callid_t, ipc_call_t *);
    208204extern void vfs_open(ipc_callid_t, ipc_call_t *);
     205extern void vfs_open_node(ipc_callid_t, ipc_call_t *);
    209206extern void vfs_sync(ipc_callid_t, ipc_call_t *);
    210207extern void vfs_dup(ipc_callid_t, ipc_call_t *);
     
    219216extern void vfs_unlink(ipc_callid_t, ipc_call_t *);
    220217extern void vfs_rename(ipc_callid_t, ipc_call_t *);
    221 extern void vfs_wait_handle(ipc_callid_t, ipc_call_t *);
    222 extern void vfs_get_mtab(ipc_callid_t, ipc_call_t *);
    223218
    224219#endif
Note: See TracChangeset for help on using the changeset viewer.