logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

g_read_data, g_write_data — read/write data from/to GEOM consumer

Authors

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

Debian                                           March 30, 2020                                        G_DATA(9)

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.

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.

Name

       g_read_data, g_write_data — read/write data from/to GEOM consumer

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.

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)

Synopsis

#include<geom/geom.h>void*g_read_data(structg_consumer*cp, off_toffset, off_tlength, int*error);

       intg_write_data(structg_consumer*cp, off_toffset, void*ptr, off_tlength);

See Also