xnvme_file

Enums

Structs

Functions

xnvme_file_close

int xnvme_file_close(struct xnvme_dev *fh)

Close the file encapsulated by the given xnvme_dev handle.

Parameters
Returns

On success, 0 is returned. On error, negative errno is returned.

xnvme_file_get_cmd_ctx

struct xnvme_cmd_ctx xnvme_file_get_cmd_ctx(struct xnvme_dev *fh)

Returns a synchronous command-context for the given file-handle.

Note

For asynchronous I/O, see the xnvme_queue interface and xnvme_cmd_ctx_from_queue

xnvme_file_open

struct xnvme_dev *xnvme_file_open(const char *pathname, struct xnvme_opts *opts)

Open the file identified by pathname for I/O operation.

Parameters
  • pathname – Path to the file

  • Opts – Options for opening files, see #XNVME_OPTS

Returns

On success, an initialized struct xnvme_dev is returned. On error, NULL is returned.

xnvme_file_pread

int xnvme_file_pread(struct xnvme_cmd_ctx *ctx, void *buf, size_t count, off_t offset)

Perform a stateless read to the file or device encapsulated by ‘ctx’.

Retrieve a synchronous context using xnvme_cmd_ctx_from_dev and an asynchronous context using xnvme_cmd_ctx_from_queue.

Note

Unlike, the pread() syscall, then this function does not return the number of bytes written. To retrieve that information, then inspect the completion-result: ‘ctx->cpl.result’.

Parameters
  • ctx – Pointer to command context (xnvme_cmd_ctx)

  • buf – Pointer to data-payload

  • count – The number of bytes to read

  • offset – The offset, in bytes, to start reading from

Returns

On success, 0 is returned. On error, negative errno is returned.

xnvme_file_pwrite

int xnvme_file_pwrite(struct xnvme_cmd_ctx *ctx, void *buf, size_t count, off_t offset)

Perform a stateless write to the file or device encapsulated by ‘ctx’.

Retrieve a synchronous context using xnvme_cmd_ctx_from_dev and an asynchronous context using xnvme_cmd_ctx_from_queue

Note

Unlike, the pwrite() syscall, then this function does not return the number of bytes read. To retrieve that information, then inspect the completion-result: ‘ctx->cpl.result’.

Parameters
  • ctx – Pointer to command context (xnvme_cmd_ctx)

  • buf – Pointer to data-payload

  • count – The number of bytes to write

  • offset – The offset, in bytes, to start writing to

Returns

On success, 0 is returned. On error, negative errno is returned.

xnvme_file_sync

int xnvme_file_sync(struct xnvme_dev *fh)

Force a sync of the file or device encapsulated by ‘fh’.

This will attempt to flush any system caches containing data destined for the given device

Parameters
Returns

On success, 0 is returned. On error, negative errno is returned.