Changeset 35e81e2 in mainline for uspace/srv/vfs/vfs_ops.c


Ignore:
Timestamp:
2017-03-19T19:57:10Z (7 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
55a7fee
Parents:
3bbd921
Message:

Streamline vfs_op_statfs()

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/vfs/vfs_ops.c

    r3bbd921 r35e81e2  
    671671int vfs_op_statfs(int fd)
    672672{
    673         ipc_callid_t callid;
    674        
    675         if (!async_data_read_receive(&callid, NULL)) {
    676                 async_answer_0(callid, EINVAL);
    677                 return EINVAL;
    678         }
    679 
    680673        vfs_file_t *file = vfs_file_get(fd);
    681         if (!file) {
    682                 async_answer_0(callid, EBADF);
    683                 return EBADF;
    684         }
     674        if (!file)
     675                return EBADF;
    685676
    686677        vfs_node_t *node = file->node;
    687678
    688679        async_exch_t *exch = vfs_exchange_grab(node->fs_handle);
    689                                                                
    690         aid_t msg;
    691         msg = async_send_3(exch, VFS_OUT_STATFS, node->service_id,
    692         node->index, false, NULL);
    693         async_forward_fast(callid, exch, 0, 0, 0, IPC_FF_ROUTE_FROM_ME);
    694 
     680        int rc = async_data_read_forward_fast(exch, VFS_OUT_STATFS,
     681            node->service_id, node->index, false, 0, NULL);
    695682        vfs_exchange_release(exch);
    696683
    697         sysarg_t rv;
    698         async_wait_for(msg, &rv);
    699 
    700684        vfs_file_put(file);
    701         return rv;
     685        return rc;
    702686}
    703687
Note: See TracChangeset for help on using the changeset viewer.