src/xcalls/x_open.c File Reference

x_open implementation. More...

#include <fcntl.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <stdlib.h>
#include <misc/debug.h>
#include <core/tx.h>
#include <core/config.h>
#include <core/koa.h>
#include <core/buffer.h>
#include <core/txdesc.h>
#include <core/stats.h>
#include <libc/syscalls.h>
#include <xcalls/xcalls.h>

Go to the source code of this file.

Classes

struct  x_open_undo_args_s

Typedefs

typedef x_open_undo_args_s x_open_undo_args_t

Functions

int XCALL_DEF() x_open (const char *pathname, int flags, mode_t mode, int *result)
 Opens a file.


Detailed Description

x_open implementation.

Definition in file x_open.c.


Function Documentation

int XCALL_DEF() x_open ( const char *  pathname,
int  flags,
mode_t  mode,
int *  result 
)

Opens a file.

Execution : in-place

Asynchronous failures : abort

Parameters:
[in] pathname 
[out] result Where to store any asynchronous failures.
Returns:
The new file descriptor, or -1 if a synchronous failure occurred (in which case, errno is set appropriately).

Definition at line 69 of file x_open.c.

References x_open_undo_args_s::fd, x_open_undo_args_s::koa, txc_buffer_linear_malloc(), txc_g_koamgr, TXC_INTERNALERROR, txc_koa_alias_cache_lookup_inode(), txc_koa_attach_fd(), txc_koa_create(), TXC_KOA_CREATE_UNDO_ACTION_ORDER, txc_koa_detach_fd(), txc_koa_get_sentinel(), TXC_KOA_IS_FILE, txc_koa_lock_alias_cache(), txc_koa_lock_fd(), txc_koa_lock_fds_refby_koa(), txc_koa_path2inode(), txc_koa_unlock_alias_cache(), txc_koa_unlock_fd(), txc_koa_unlock_fds_refby_koa(), TXC_R_BUSYSENTINEL, TXC_R_SUCCESS, txc_sentinel_tryacquire(), txc_stats_txstat_increment, txc_tx_abort_transaction(), txc_tx_get_txd(), txc_tx_get_xactstate(), txc_tx_register_undo_action(), and x_open().


Generated on Wed Dec 9 20:32:41 2009 for xCalls by  doxygen 1.4.7