fp_rwuio Kernel Service

Purpose

Performs read and write on an open file with arguments passed in a uio structure.

Syntax

#include <sys/types.h>
#include <sys/errno.h>

int fp_rwuio
(
fp,  rw,  uiop,  ext)
struct file *fp;
enum uio_rw rw;
struct uio *uiop;
ext_t ext;

Parameters

Item Description
fp Points to a file structure returned by the fp_open or fp_opendev kernel service.
rw Indicates whether this is a read operation or a write operation. It has a value of UIO_READ or UIO_WRITE.
uiop Points to a uio structure, which contains information such as where to move data and how much to move.
ext Specifies an extension argument required by some device drivers. Its content, form, and use are determined by the individual driver.

Description

The fp_rwuio kernel service is not the preferred interface for read and write operations. The fp_rwuio kernel service should only be used if the calling routine has been passed a uio structure. If the calling routine has not been passed a uio structure, it should not attempt to construct one and call the fp_rwuio kernel service with it. Rather, it should pass the requisite uio components to the fp_read or fp_write kernel services.

Execution Environment

The fp_rwuio kernel service can be called from the process environment only.

Return Values

Item Description
0 Indicates a successful operation.

If an error occurs, one of the values from the /usr/include/sys/errno.h file is returned.