- for (iov = vbio->iov; iov < &vbio->iov[vbio->nvecs]; iov++) {
- iov->iov_base = mic_addr_in_host(aper_va, iov->iov_base);
- }
- ret = vfs_writev(vbio->file, vbio->iov, vbio->nvecs, &pos);
+ for (iov = vbio->iov; iov < &vbio->iov[vbio->nvecs]; iov++) {
+ iov->iov_base = mic_addr_in_host(aper_va, iov->iov_base);
+ }
+ iov_iter_init(&iter, WRITE, vbio->iov, vbio->nvecs, iov_length(vbio->iov, vbio->nvecs));
+ ret = vfs_iter_write(vbio->file, &iter, &pos, 0);