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

FreeBSD Manual Pages

  
 
  

home | help
G_DATA(9)		   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 re-
       turned 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.

       [EINTEGRITY]	  Corrupted  data  was detected	while reading from 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	14.3			March 30, 2020			     G_DATA(9)

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

home | help