Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
G_DATA(9)	       FreeBSD Kernel Developer's Manual	     G_DATA(9)

NAME
     g_read_data, g_write_data -- read/write data from/to GEOM consumer

SYNOPSIS
     #include <geom/geom.h>

     void *
     g_read_data(struct	g_consumer *cp,	off_t offset, off_t length,
	 int *error);

     int
     g_write_data(struct g_consumer *cp, off_t offset, void *ptr,
	 off_t length);

DESCRIPTION
     The g_read_data() function	reads length bytes of data from	the provider
     attached to consumer cp, starting at offset offset.  The buffer returned
     from g_read_data()	is allocated with g_malloc(), so it should be freed by
     the caller	with g_free() after use.  If the operation fails, an error
     value will	be stored in the error argument	if it is not NULL.

     The g_write_data()	function writes	length bytes of	data from the buffer
     pointed to	by ptr to the provider attached	to consumer cp,	starting at
     offset offset.

RESTRICTIONS/CONDITIONS
     The length	argument should	be a multiple of the provider's	sectorsize and
     less than or equal	to DFLTPHYS (DFLTPHYS is defined in <sys/param.h>).

     The topology lock must not	be held.

RETURN VALUES
     The g_read_data() function	returns	a pointer to a data buffer or NULL if
     an	error occurred.	 In that case an error value is	stored in the error
     argument unless it	is NULL.

     The g_write_data()	function returns 0 if successful; otherwise an error
     code is returned.

ERRORS
     Possible errors:

     [EIO]		An I/O error occurred while reading from or writing to
			the consumer.

SEE ALSO
     geom(4), DECLARE_GEOM_CLASS(9), g_access(9), g_attach(9), g_bio(9),
     g_consumer(9), g_event(9),	g_geom(9), g_provider(9),
     g_provider_by_name(9), g_wither_geom(9)

AUTHORS
     This manual page was written by Pawel Jakub Dawidek <pjd@FreeBSD.org>.

FreeBSD	11.1		       January 16, 2004			  FreeBSD 11.1

NAME | SYNOPSIS | DESCRIPTION | RESTRICTIONS/CONDITIONS | RETURN VALUES | ERRORS | SEE ALSO | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=g_data&sektion=9&manpath=FreeBSD+11.0-RELEASE+and+Ports>

home | help