- if (bp->b_blkno >= MAXSEC || (uio->uio_offset & 0177) != 0)
- return (ENXIO);
- if (rw == UIO_WRITE) {
- error = uiomove(bp->b_un.b_addr, i, UIO_WRITE, uio);
+ if (bp->b_blkno >= MAXSEC || (uio->uio_offset & 0177) != 0) {
+ error = ENXIO;
+ break;
+ }
+ if (uio->uio_rw == UIO_WRITE) {
+ error = uiomove(bp->b_un.b_addr, i, uio);