Changes in uspace/srv/vfs/vfs.h [ffa2c8ef:76a67ce] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/vfs/vfs.h
rffa2c8ef r76a67ce 38 38 #include <fibril_synch.h> 39 39 #include <sys/types.h> 40 #include < devmap.h>40 #include <loc.h> 41 41 #include <bool.h> 42 42 #include <ipc/vfs.h> 43 #include <task.h> 43 44 44 45 #ifndef dprintf … … 53 54 vfs_info_t vfs_info; 54 55 fs_handle_t fs_handle; 55 async_sess_t session;56 async_sess_t *sess; 56 57 } fs_info_t; 57 58 … … 61 62 #define VFS_PAIR \ 62 63 fs_handle_t fs_handle; \ 63 devmap_handle_t devmap_handle;64 service_id_t service_id; 64 65 65 66 /** … … 67 68 * doesn't contain any state. For a stateful structure, see vfs_node_t. 68 69 * 69 * @note fs_handle, devmap_handleand index are meant to be returned in one70 * @note fs_handle, service_id and index are meant to be returned in one 70 71 * IPC reply. 71 72 */ … … 145 146 extern fibril_mutex_t nodes_mutex; 146 147 147 extern fibril_condvar_t fs_head_cv; 148 extern fibril_mutex_t fs_head_lock; 149 extern link_t fs_head; /**< List of registered file systems. */ 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. */ 150 154 151 155 extern vfs_pair_t rootfs; /**< Root file system. */ … … 158 162 } plb_entry_t; 159 163 160 extern fibril_mutex_t plb_mutex;/**< Mutex protecting plb and plb_ head. */164 extern fibril_mutex_t plb_mutex;/**< Mutex protecting plb and plb_entries. */ 161 165 extern uint8_t *plb; /**< Path Lookup Buffer */ 162 extern link_t plb_head; /**< List of active PLB entries. */ 163 164 #define MAX_MNTOPTS_LEN 256 166 extern list_t plb_entries; /**< List of active PLB entries. */ 165 167 166 168 /** Holding this rwlock prevents changes in file system namespace. */ 167 169 extern fibril_rwlock_t namespace_rwlock; 168 170 169 extern int vfs_grab_phone(fs_handle_t);170 extern void vfs_ release_phone(fs_handle_t, int);171 172 extern fs_handle_t fs_name_to_handle( char *, bool);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); 173 175 extern vfs_info_t *fs_handle_to_info(fs_handle_t); 174 176 175 177 extern int vfs_lookup_internal(char *, int, vfs_lookup_res_t *, 176 178 vfs_pair_t *, ...); 177 extern int vfs_open_node_internal(vfs_lookup_res_t *);178 extern int vfs_close_internal(vfs_file_t *);179 179 180 180 extern bool vfs_nodes_init(void); … … 182 182 extern void vfs_node_put(vfs_node_t *); 183 183 extern void vfs_node_forget(vfs_node_t *); 184 extern unsigned vfs_nodes_refcount_sum_get(fs_handle_t, devmap_handle_t);184 extern unsigned vfs_nodes_refcount_sum_get(fs_handle_t, service_id_t); 185 185 186 186 … … 189 189 extern void *vfs_client_data_create(void); 190 190 extern 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); 191 194 192 195 extern vfs_file_t *vfs_file_get(int); … … 198 201 extern void vfs_node_addref(vfs_node_t *); 199 202 extern void vfs_node_delref(vfs_node_t *); 203 extern int vfs_open_node_remote(vfs_node_t *); 200 204 201 205 extern void vfs_register(ipc_callid_t, ipc_call_t *); … … 203 207 extern void vfs_unmount(ipc_callid_t, ipc_call_t *); 204 208 extern void vfs_open(ipc_callid_t, ipc_call_t *); 205 extern void vfs_open_node(ipc_callid_t, ipc_call_t *);206 209 extern void vfs_sync(ipc_callid_t, ipc_call_t *); 207 210 extern void vfs_dup(ipc_callid_t, ipc_call_t *); … … 216 219 extern void vfs_unlink(ipc_callid_t, ipc_call_t *); 217 220 extern 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 *); 218 223 219 224 #endif
Note:
See TracChangeset
for help on using the changeset viewer.