Rev 4301 | Rev 4305 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4301 | Rev 4302 | ||
---|---|---|---|
Line 318... | Line 318... | ||
318 | free(mp); |
318 | free(mp); |
319 | free(fs_name); |
319 | free(fs_name); |
320 | return; |
320 | return; |
321 | } |
321 | } |
322 | fs_name[size] = '\0'; |
322 | fs_name[size] = '\0'; |
- | 323 | ||
- | 324 | /* |
|
- | 325 | * Wait for IPC_M_PING so that we can return an error if we don't know |
|
- | 326 | * fs_name. |
|
- | 327 | */ |
|
- | 328 | ipc_call_t data; |
|
- | 329 | callid = async_get_call(&data); |
|
- | 330 | if (IPC_GET_METHOD(data) != IPC_M_PING) { |
|
- | 331 | ipc_answer_0(callid, ENOTSUP); |
|
- | 332 | ipc_answer_0(rid, ENOTSUP); |
|
- | 333 | free(mp); |
|
- | 334 | free(fs_name); |
|
- | 335 | return; |
|
323 | 336 | } |
|
- | 337 | ||
324 | /* |
338 | /* |
325 | * Check if we know a file system with the same name as is in fs_name. |
339 | * Check if we know a file system with the same name as is in fs_name. |
326 | * This will also give us its file system handle. |
340 | * This will also give us its file system handle. |
327 | */ |
341 | */ |
328 | fs_handle_t fs_handle = fs_name_to_handle(fs_name, true); |
342 | fs_handle_t fs_handle = fs_name_to_handle(fs_name, true); |
329 | if (!fs_handle) { |
343 | if (!fs_handle) { |
330 | if (flags & IPC_FLAG_BLOCKING) { |
344 | if (flags & IPC_FLAG_BLOCKING) { |
- | 345 | pending_req_t *pr; |
|
- | 346 | ||
331 | /* Blocking mount, add to pending list */ |
347 | /* Blocking mount, add to pending list */ |
332 | pending_req_t *pr = (pending_req_t *) malloc(sizeof(pending_req_t)); |
348 | pr = (pending_req_t *) malloc(sizeof(pending_req_t)); |
333 | if (!pr) { |
349 | if (!pr) { |
334 | ipc_answer_0(callid, ENOMEM); |
350 | ipc_answer_0(callid, ENOMEM); |
335 | ipc_answer_0(rid, ENOMEM); |
351 | ipc_answer_0(rid, ENOMEM); |
336 | free(mp); |
352 | free(mp); |
337 | free(fs_name); |
353 | free(fs_name); |