Changeset ce8c848 in mainline for uspace/srv
- Timestamp:
- 2010-01-25T22:26:16Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- bb0d3d24
- Parents:
- 64af8f1 (diff), c888102 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Location:
- uspace/srv
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/fs/devfs/devfs.c
r64af8f1 rce8c848 75 75 devfs_mount(callid, &call); 76 76 break; 77 case VFS_OUT_UNMOUNTED: 78 devfs_unmounted(callid, &call); 79 break; 80 case VFS_OUT_UNMOUNT: 81 devfs_unmount(callid, &call); 82 break; 77 83 case VFS_OUT_LOOKUP: 78 84 devfs_lookup(callid, &call); -
uspace/srv/fs/devfs/devfs_ops.c
r64af8f1 rce8c848 434 434 } 435 435 436 void devfs_unmounted(ipc_callid_t rid, ipc_call_t *request) 437 { 438 ipc_answer_0(rid, ENOTSUP); 439 } 440 441 void devfs_unmount(ipc_callid_t rid, ipc_call_t *request) 442 { 443 libfs_unmount(&devfs_libfs_ops, rid, request); 444 } 445 436 446 void devfs_lookup(ipc_callid_t rid, ipc_call_t *request) 437 447 { -
uspace/srv/fs/devfs/devfs_ops.h
r64af8f1 rce8c848 41 41 extern void devfs_mounted(ipc_callid_t, ipc_call_t *); 42 42 extern void devfs_mount(ipc_callid_t, ipc_call_t *); 43 extern void devfs_unmounted(ipc_callid_t, ipc_call_t *); 44 extern void devfs_unmount(ipc_callid_t, ipc_call_t *); 43 45 extern void devfs_lookup(ipc_callid_t, ipc_call_t *); 44 46 extern void devfs_open_node(ipc_callid_t, ipc_call_t *); -
uspace/srv/fs/fat/fat.c
r64af8f1 rce8c848 100 100 fat_mount(callid, &call); 101 101 break; 102 case VFS_OUT_UNMOUNTED: 103 fat_unmounted(callid, &call); 104 break; 105 case VFS_OUT_UNMOUNT: 106 fat_unmount(callid, &call); 107 break; 102 108 case VFS_OUT_LOOKUP: 103 109 fat_lookup(callid, &call); -
uspace/srv/fs/fat/fat.h
r64af8f1 rce8c848 204 204 extern void fat_mounted(ipc_callid_t, ipc_call_t *); 205 205 extern void fat_mount(ipc_callid_t, ipc_call_t *); 206 extern void fat_unmounted(ipc_callid_t, ipc_call_t *); 207 extern void fat_unmount(ipc_callid_t, ipc_call_t *); 206 208 extern void fat_lookup(ipc_callid_t, ipc_call_t *); 207 209 extern void fat_read(ipc_callid_t, ipc_call_t *); -
uspace/srv/fs/fat/fat_ops.c
r64af8f1 rce8c848 1117 1117 } 1118 1118 1119 void fat_unmounted(ipc_callid_t rid, ipc_call_t *request) 1120 { 1121 ipc_answer_0(rid, ENOTSUP); 1122 } 1123 1124 void fat_unmount(ipc_callid_t rid, ipc_call_t *request) 1125 { 1126 libfs_unmount(&fat_libfs_ops, rid, request); 1127 } 1128 1119 1129 void fat_lookup(ipc_callid_t rid, ipc_call_t *request) 1120 1130 { -
uspace/srv/fs/tmpfs/tmpfs.c
r64af8f1 rce8c848 106 106 tmpfs_mount(callid, &call); 107 107 break; 108 case VFS_OUT_UNMOUNTED: 109 tmpfs_unmounted(callid, &call); 110 break; 111 case VFS_OUT_UNMOUNT: 112 tmpfs_unmount(callid, &call); 113 break; 108 114 case VFS_OUT_LOOKUP: 109 115 tmpfs_lookup(callid, &call); -
uspace/srv/fs/tmpfs/tmpfs.h
r64af8f1 rce8c848 83 83 extern void tmpfs_mounted(ipc_callid_t, ipc_call_t *); 84 84 extern void tmpfs_mount(ipc_callid_t, ipc_call_t *); 85 extern void tmpfs_unmounted(ipc_callid_t, ipc_call_t *); 86 extern void tmpfs_unmount(ipc_callid_t, ipc_call_t *); 85 87 extern void tmpfs_lookup(ipc_callid_t, ipc_call_t *); 86 88 extern void tmpfs_read(ipc_callid_t, ipc_call_t *); -
uspace/srv/fs/tmpfs/tmpfs_ops.c
r64af8f1 rce8c848 449 449 } 450 450 451 void tmpfs_unmounted(ipc_callid_t rid, ipc_call_t *request) 452 { 453 ipc_answer_0(rid, ENOTSUP); 454 } 455 456 void tmpfs_unmount(ipc_callid_t rid, ipc_call_t *request) 457 { 458 libfs_unmount(&tmpfs_libfs_ops, rid, request); 459 } 460 451 461 void tmpfs_lookup(ipc_callid_t rid, ipc_call_t *request) 452 462 { -
uspace/srv/vfs/vfs_ops.c
r64af8f1 rce8c848 92 92 } 93 93 94 rc = vfs_lookup_internal(mp, L_ DIRECTORY, &mp_res, NULL);94 rc = vfs_lookup_internal(mp, L_MP, &mp_res, NULL); 95 95 if (rc != EOK) { 96 96 /* The lookup failed for some reason. */ … … 459 459 * Lookup the mounted root and instantiate it. 460 460 */ 461 rc = vfs_lookup_internal(mp, L_ NONE, &mr_res, NULL);461 rc = vfs_lookup_internal(mp, L_ROOT, &mr_res, NULL); 462 462 if (rc != EOK) { 463 463 fibril_rwlock_write_unlock(&namespace_rwlock); … … 521 521 */ 522 522 523 /* 524 * The L_NOCROSS_LAST_MP flag is essential if we really want to 525 * lookup the mount point and not the mounted root. 526 */ 527 rc = vfs_lookup_internal(mp, L_NOCROSS_LAST_MP, &mp_res, NULL); 523 rc = vfs_lookup_internal(mp, L_MP, &mp_res, NULL); 528 524 free(mp); 529 525 if (rc != EOK) { … … 542 538 543 539 phone = vfs_grab_phone(mp_node->fs_handle); 544 rc = async_req_2_0(phone, VFS_OUT_UNMOUNT, mp_node-> fs_handle,545 mp_node-> dev_handle);540 rc = async_req_2_0(phone, VFS_OUT_UNMOUNT, mp_node->dev_handle, 541 mp_node->index); 546 542 vfs_release_phone(phone); 547 543 if (rc != EOK) { … … 595 591 /* 596 592 * Make sure that we are called with exactly one of L_FILE and 597 * L_DIRECTORY. Make sure that the user does not pass L_OPEN or598 * L_ NOCROSS_LAST_MP.593 * L_DIRECTORY. Make sure that the user does not pass L_OPEN, 594 * L_ROOT or L_MP. 599 595 */ 600 596 if (((lflag & (L_FILE | L_DIRECTORY)) == 0) || 601 597 ((lflag & (L_FILE | L_DIRECTORY)) == (L_FILE | L_DIRECTORY)) || 602 (lflag & L_OPEN) || (lflag & L_NOCROSS_LAST_MP)) {598 (lflag & (L_OPEN | L_ROOT | L_MP))) { 603 599 ipc_answer_0(rid, EINVAL); 604 600 return;
Note:
See TracChangeset
for help on using the changeset viewer.