Changeset View
Changeset View
Standalone View
Standalone View
sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c
Show First 20 Lines • Show All 79 Lines • ▼ Show 20 Lines | |||||
} | } | ||||
static void | static void | ||||
zvol_write(void *arg) | zvol_write(void *arg) | ||||
{ | { | ||||
zv_request_t *zvr = arg; | zv_request_t *zvr = arg; | ||||
struct bio *bio = zvr->bio; | struct bio *bio = zvr->bio; | ||||
int error = 0; | int error = 0; | ||||
uio_t uio; | zfs_uio_t uio; | ||||
uio_bvec_init(&uio, bio); | zfs_uio_bvec_init(&uio, bio); | ||||
zvol_state_t *zv = zvr->zv; | zvol_state_t *zv = zvr->zv; | ||||
ASSERT3P(zv, !=, NULL); | ASSERT3P(zv, !=, NULL); | ||||
ASSERT3U(zv->zv_open_count, >, 0); | ASSERT3U(zv->zv_open_count, >, 0); | ||||
ASSERT3P(zv->zv_zilog, !=, NULL); | ASSERT3P(zv->zv_zilog, !=, NULL); | ||||
/* bio marked as FLUSH need to flush before write */ | /* bio marked as FLUSH need to flush before write */ | ||||
if (bio_is_flush(bio)) | if (bio_is_flush(bio)) | ||||
▲ Show 20 Lines • Show All 143 Lines • ▼ Show 20 Lines | |||||
} | } | ||||
static void | static void | ||||
zvol_read(void *arg) | zvol_read(void *arg) | ||||
{ | { | ||||
zv_request_t *zvr = arg; | zv_request_t *zvr = arg; | ||||
struct bio *bio = zvr->bio; | struct bio *bio = zvr->bio; | ||||
int error = 0; | int error = 0; | ||||
uio_t uio; | zfs_uio_t uio; | ||||
uio_bvec_init(&uio, bio); | zfs_uio_bvec_init(&uio, bio); | ||||
zvol_state_t *zv = zvr->zv; | zvol_state_t *zv = zvr->zv; | ||||
ASSERT3P(zv, !=, NULL); | ASSERT3P(zv, !=, NULL); | ||||
ASSERT3U(zv->zv_open_count, >, 0); | ASSERT3U(zv->zv_open_count, >, 0); | ||||
struct request_queue *q = zv->zv_zso->zvo_queue; | struct request_queue *q = zv->zv_zso->zvo_queue; | ||||
struct gendisk *disk = zv->zv_zso->zvo_disk; | struct gendisk *disk = zv->zv_zso->zvo_disk; | ||||
ssize_t start_resid = uio.uio_resid; | ssize_t start_resid = uio.uio_resid; | ||||
▲ Show 20 Lines • Show All 838 Lines • Show Last 20 Lines |