Subversion Repositories HelenOS

Rev

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

Rev 4508 Rev 4584
Line 135... Line 135...
135
   
135
   
136
    futex_down(&vfs_phone_futex);
136
    futex_down(&vfs_phone_futex);
137
    async_serialize_start();
137
    async_serialize_start();
138
    vfs_connect();
138
    vfs_connect();
139
   
139
   
140
    req = async_send_2(vfs_phone, VFS_MOUNT, dev_handle, flags, NULL);
140
    req = async_send_2(vfs_phone, VFS_IN_MOUNT, dev_handle, flags, NULL);
141
    rc = ipc_data_write_start(vfs_phone, (void *) mpa, mpa_size);
141
    rc = ipc_data_write_start(vfs_phone, (void *) mpa, mpa_size);
142
    if (rc != EOK) {
142
    if (rc != EOK) {
143
        async_wait_for(req, NULL);
143
        async_wait_for(req, NULL);
144
        async_serialize_end();
144
        async_serialize_end();
145
        futex_up(&vfs_phone_futex);
145
        futex_up(&vfs_phone_futex);
Line 196... Line 196...
196
   
196
   
197
    futex_down(&vfs_phone_futex);
197
    futex_down(&vfs_phone_futex);
198
    async_serialize_start();
198
    async_serialize_start();
199
    vfs_connect();
199
    vfs_connect();
200
   
200
   
201
    req = async_send_3(vfs_phone, VFS_OPEN, lflag, oflag, 0, &answer);
201
    req = async_send_3(vfs_phone, VFS_IN_OPEN, lflag, oflag, 0, &answer);
202
    rc = ipc_data_write_start(vfs_phone, pa, pa_size);
202
    rc = ipc_data_write_start(vfs_phone, pa, pa_size);
203
    if (rc != EOK) {
203
    if (rc != EOK) {
204
        async_wait_for(req, NULL);
204
        async_wait_for(req, NULL);
205
        async_serialize_end();
205
        async_serialize_end();
206
        futex_up(&vfs_phone_futex);
206
        futex_up(&vfs_phone_futex);
Line 228... Line 228...
228
    futex_down(&vfs_phone_futex);
228
    futex_down(&vfs_phone_futex);
229
    async_serialize_start();
229
    async_serialize_start();
230
    vfs_connect();
230
    vfs_connect();
231
   
231
   
232
    ipc_call_t answer;
232
    ipc_call_t answer;
233
    aid_t req = async_send_4(vfs_phone, VFS_OPEN_NODE, node->fs_handle,
233
    aid_t req = async_send_4(vfs_phone, VFS_IN_OPEN_NODE, node->fs_handle,
234
        node->dev_handle, node->index, oflag, &answer);
234
        node->dev_handle, node->index, oflag, &answer);
235
   
235
   
236
    ipcarg_t rc;
236
    ipcarg_t rc;
237
    async_wait_for(req, &rc);
237
    async_wait_for(req, &rc);
238
    async_serialize_end();
238
    async_serialize_end();
Line 250... Line 250...
250
   
250
   
251
    futex_down(&vfs_phone_futex);
251
    futex_down(&vfs_phone_futex);
252
    async_serialize_start();
252
    async_serialize_start();
253
    vfs_connect();
253
    vfs_connect();
254
   
254
   
255
    rc = async_req_1_0(vfs_phone, VFS_CLOSE, fildes);
255
    rc = async_req_1_0(vfs_phone, VFS_IN_CLOSE, fildes);
256
   
256
   
257
    async_serialize_end();
257
    async_serialize_end();
258
    futex_up(&vfs_phone_futex);
258
    futex_up(&vfs_phone_futex);
259
   
259
   
260
    return (int)rc;
260
    return (int)rc;
Line 268... Line 268...
268
 
268
 
269
    futex_down(&vfs_phone_futex);
269
    futex_down(&vfs_phone_futex);
270
    async_serialize_start();
270
    async_serialize_start();
271
    vfs_connect();
271
    vfs_connect();
272
   
272
   
273
    req = async_send_1(vfs_phone, VFS_READ, fildes, &answer);
273
    req = async_send_1(vfs_phone, VFS_IN_READ, fildes, &answer);
274
    rc = ipc_data_read_start(vfs_phone, (void *)buf, nbyte);
274
    rc = ipc_data_read_start(vfs_phone, (void *)buf, nbyte);
275
    if (rc != EOK) {
275
    if (rc != EOK) {
276
        async_wait_for(req, NULL);
276
        async_wait_for(req, NULL);
277
        async_serialize_end();
277
        async_serialize_end();
278
        futex_up(&vfs_phone_futex);
278
        futex_up(&vfs_phone_futex);
Line 295... Line 295...
295
 
295
 
296
    futex_down(&vfs_phone_futex);
296
    futex_down(&vfs_phone_futex);
297
    async_serialize_start();
297
    async_serialize_start();
298
    vfs_connect();
298
    vfs_connect();
299
   
299
   
300
    req = async_send_1(vfs_phone, VFS_WRITE, fildes, &answer);
300
    req = async_send_1(vfs_phone, VFS_IN_WRITE, fildes, &answer);
301
    rc = ipc_data_write_start(vfs_phone, (void *)buf, nbyte);
301
    rc = ipc_data_write_start(vfs_phone, (void *)buf, nbyte);
302
    if (rc != EOK) {
302
    if (rc != EOK) {
303
        async_wait_for(req, NULL);
303
        async_wait_for(req, NULL);
304
        async_serialize_end();
304
        async_serialize_end();
305
        futex_up(&vfs_phone_futex);
305
        futex_up(&vfs_phone_futex);
Line 319... Line 319...
319
    futex_down(&vfs_phone_futex);
319
    futex_down(&vfs_phone_futex);
320
    async_serialize_start();
320
    async_serialize_start();
321
    vfs_connect();
321
    vfs_connect();
322
   
322
   
323
    ipcarg_t device;
323
    ipcarg_t device;
324
    ipcarg_t rc = async_req_1_1(vfs_phone, VFS_DEVICE, fildes, &device);
324
    ipcarg_t rc = async_req_1_1(vfs_phone, VFS_IN_DEVICE, fildes, &device);
325
   
325
   
326
    async_serialize_end();
326
    async_serialize_end();
327
    futex_up(&vfs_phone_futex);
327
    futex_up(&vfs_phone_futex);
328
   
328
   
329
    if (rc != EOK)
329
    if (rc != EOK)
Line 339... Line 339...
339
    vfs_connect();
339
    vfs_connect();
340
   
340
   
341
    ipcarg_t fs_handle;
341
    ipcarg_t fs_handle;
342
    ipcarg_t dev_handle;
342
    ipcarg_t dev_handle;
343
    ipcarg_t index;
343
    ipcarg_t index;
344
    ipcarg_t rc = async_req_1_3(vfs_phone, VFS_NODE, fildes, &fs_handle,
344
    ipcarg_t rc = async_req_1_3(vfs_phone, VFS_IN_NODE, fildes, &fs_handle,
345
        &dev_handle, &index);
345
        &dev_handle, &index);
346
   
346
   
347
    async_serialize_end();
347
    async_serialize_end();
348
    futex_up(&vfs_phone_futex);
348
    futex_up(&vfs_phone_futex);
349
   
349
   
Line 360... Line 360...
360
{
360
{
361
    futex_down(&vfs_phone_futex);
361
    futex_down(&vfs_phone_futex);
362
    async_serialize_start();
362
    async_serialize_start();
363
    vfs_connect();
363
    vfs_connect();
364
   
364
   
365
    ipcarg_t rc = async_req_1_0(vfs_phone, VFS_SYNC, fildes);
365
    ipcarg_t rc = async_req_1_0(vfs_phone, VFS_IN_SYNC, fildes);
366
   
366
   
367
    async_serialize_end();
367
    async_serialize_end();
368
    futex_up(&vfs_phone_futex);
368
    futex_up(&vfs_phone_futex);
369
   
369
   
370
    return (int) rc;
370
    return (int) rc;
Line 377... Line 377...
377
    futex_down(&vfs_phone_futex);
377
    futex_down(&vfs_phone_futex);
378
    async_serialize_start();
378
    async_serialize_start();
379
    vfs_connect();
379
    vfs_connect();
380
   
380
   
381
    ipcarg_t newoffs;
381
    ipcarg_t newoffs;
382
    rc = async_req_3_1(vfs_phone, VFS_SEEK, fildes, offset, whence,
382
    rc = async_req_3_1(vfs_phone, VFS_IN_SEEK, fildes, offset, whence,
383
        &newoffs);
383
        &newoffs);
384
 
384
 
385
    async_serialize_end();
385
    async_serialize_end();
386
    futex_up(&vfs_phone_futex);
386
    futex_up(&vfs_phone_futex);
387
 
387
 
Line 397... Line 397...
397
   
397
   
398
    futex_down(&vfs_phone_futex);
398
    futex_down(&vfs_phone_futex);
399
    async_serialize_start();
399
    async_serialize_start();
400
    vfs_connect();
400
    vfs_connect();
401
   
401
   
402
    rc = async_req_2_0(vfs_phone, VFS_TRUNCATE, fildes, length);
402
    rc = async_req_2_0(vfs_phone, VFS_IN_TRUNCATE, fildes, length);
403
    async_serialize_end();
403
    async_serialize_end();
404
    futex_up(&vfs_phone_futex);
404
    futex_up(&vfs_phone_futex);
405
    return (int) rc;
405
    return (int) rc;
406
}
406
}
407
 
407
 
Line 450... Line 450...
450
   
450
   
451
    futex_down(&vfs_phone_futex);
451
    futex_down(&vfs_phone_futex);
452
    async_serialize_start();
452
    async_serialize_start();
453
    vfs_connect();
453
    vfs_connect();
454
   
454
   
455
    req = async_send_1(vfs_phone, VFS_MKDIR, mode, NULL);
455
    req = async_send_1(vfs_phone, VFS_IN_MKDIR, mode, NULL);
456
    rc = ipc_data_write_start(vfs_phone, pa, pa_size);
456
    rc = ipc_data_write_start(vfs_phone, pa, pa_size);
457
    if (rc != EOK) {
457
    if (rc != EOK) {
458
        async_wait_for(req, NULL);
458
        async_wait_for(req, NULL);
459
        async_serialize_end();
459
        async_serialize_end();
460
        futex_up(&vfs_phone_futex);
460
        futex_up(&vfs_phone_futex);
Line 480... Line 480...
480
 
480
 
481
    futex_down(&vfs_phone_futex);
481
    futex_down(&vfs_phone_futex);
482
    async_serialize_start();
482
    async_serialize_start();
483
    vfs_connect();
483
    vfs_connect();
484
   
484
   
485
    req = async_send_0(vfs_phone, VFS_UNLINK, NULL);
485
    req = async_send_0(vfs_phone, VFS_IN_UNLINK, NULL);
486
    rc = ipc_data_write_start(vfs_phone, pa, pa_size);
486
    rc = ipc_data_write_start(vfs_phone, pa, pa_size);
487
    if (rc != EOK) {
487
    if (rc != EOK) {
488
        async_wait_for(req, NULL);
488
        async_wait_for(req, NULL);
489
        async_serialize_end();
489
        async_serialize_end();
490
        futex_up(&vfs_phone_futex);
490
        futex_up(&vfs_phone_futex);
Line 527... Line 527...
527
 
527
 
528
    futex_down(&vfs_phone_futex);
528
    futex_down(&vfs_phone_futex);
529
    async_serialize_start();
529
    async_serialize_start();
530
    vfs_connect();
530
    vfs_connect();
531
   
531
   
532
    req = async_send_0(vfs_phone, VFS_RENAME, NULL);
532
    req = async_send_0(vfs_phone, VFS_IN_RENAME, NULL);
533
    rc = ipc_data_write_start(vfs_phone, olda, olda_size);
533
    rc = ipc_data_write_start(vfs_phone, olda, olda_size);
534
    if (rc != EOK) {
534
    if (rc != EOK) {
535
        async_wait_for(req, NULL);
535
        async_wait_for(req, NULL);
536
        async_serialize_end();
536
        async_serialize_end();
537
        futex_up(&vfs_phone_futex);
537
        futex_up(&vfs_phone_futex);