Subversion Repositories HelenOS

Rev

Rev 4519 | Rev 4555 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4519 Rev 4551
Line 161... Line 161...
161
    int phone = vfs_grab_phone(root->fs_handle);
161
    int phone = vfs_grab_phone(root->fs_handle);
162
    aid_t req = async_send_5(phone, VFS_LOOKUP, (ipcarg_t) first,
162
    aid_t req = async_send_5(phone, VFS_LOOKUP, (ipcarg_t) first,
163
        (ipcarg_t) (first + len - 1) % PLB_SIZE,
163
        (ipcarg_t) (first + len - 1) % PLB_SIZE,
164
        (ipcarg_t) root->dev_handle, (ipcarg_t) lflag, (ipcarg_t) index,
164
        (ipcarg_t) root->dev_handle, (ipcarg_t) lflag, (ipcarg_t) index,
165
        &answer);
165
        &answer);
166
    vfs_release_phone(phone);
-
 
167
   
166
   
168
    ipcarg_t rc;
167
    ipcarg_t rc;
169
    async_wait_for(req, &rc);
168
    async_wait_for(req, &rc);
-
 
169
    vfs_release_phone(phone);
170
   
170
   
171
    futex_down(&plb_futex);
171
    futex_down(&plb_futex);
172
    list_remove(&entry.plb_link);
172
    list_remove(&entry.plb_link);
173
    /*
173
    /*
174
     * Erasing the path from PLB will come handy for debugging purposes.
174
     * Erasing the path from PLB will come handy for debugging purposes.
Line 206... Line 206...
206
    ipc_call_t answer;
206
    ipc_call_t answer;
207
    aid_t req = async_send_2(phone, VFS_OPEN_NODE,
207
    aid_t req = async_send_2(phone, VFS_OPEN_NODE,
208
        (ipcarg_t) result->triplet.dev_handle,
208
        (ipcarg_t) result->triplet.dev_handle,
209
        (ipcarg_t) result->triplet.index, &answer);
209
        (ipcarg_t) result->triplet.index, &answer);
210
   
210
   
211
    vfs_release_phone(phone);
-
 
212
   
211
   
213
    ipcarg_t rc;
212
    ipcarg_t rc;
214
    async_wait_for(req, &rc);
213
    async_wait_for(req, &rc);
-
 
214
    vfs_release_phone(phone);
215
   
215
   
216
    if (rc == EOK) {
216
    if (rc == EOK) {
217
        result->size = (size_t) IPC_GET_ARG1(answer);
217
        result->size = (size_t) IPC_GET_ARG1(answer);
218
        result->lnkcnt = (unsigned) IPC_GET_ARG2(answer);
218
        result->lnkcnt = (unsigned) IPC_GET_ARG2(answer);
219
        if (IPC_GET_ARG3(answer) & L_FILE)
219
        if (IPC_GET_ARG3(answer) & L_FILE)