Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/kern_physio.c
Show First 20 Lines • Show All 132 Lines • ▼ Show 20 Lines | if (racct_enable) { | ||||
PROC_UNLOCK(curproc); | PROC_UNLOCK(curproc); | ||||
} | } | ||||
#endif /* RACCT */ | #endif /* RACCT */ | ||||
while (uio->uio_iov[i].iov_len) { | while (uio->uio_iov[i].iov_len) { | ||||
g_reset_bio(bp); | g_reset_bio(bp); | ||||
if (uio->uio_rw == UIO_READ) { | if (uio->uio_rw == UIO_READ) { | ||||
bp->bio_cmd = BIO_READ; | bp->bio_cmd = BIO_READ; | ||||
curthread->td_ru.ru_inblock++; | RU_ATOMIC_INC(curthread->td_ru.ru_inblock); | ||||
} else { | } else { | ||||
bp->bio_cmd = BIO_WRITE; | bp->bio_cmd = BIO_WRITE; | ||||
curthread->td_ru.ru_oublock++; | RU_ATOMIC_INC(curthread->td_ru.ru_oublock); | ||||
} | } | ||||
bp->bio_offset = uio->uio_offset; | bp->bio_offset = uio->uio_offset; | ||||
base = uio->uio_iov[i].iov_base; | base = uio->uio_iov[i].iov_base; | ||||
bp->bio_length = uio->uio_iov[i].iov_len; | bp->bio_length = uio->uio_iov[i].iov_len; | ||||
if (bp->bio_length > dev->si_iosize_max) | if (bp->bio_length > dev->si_iosize_max) | ||||
bp->bio_length = dev->si_iosize_max; | bp->bio_length = dev->si_iosize_max; | ||||
if (bp->bio_length > maxphys) | if (bp->bio_length > maxphys) | ||||
bp->bio_length = maxphys; | bp->bio_length = maxphys; | ||||
▲ Show 20 Lines • Show All 61 Lines • Show Last 20 Lines |