On Fri, 12 Nov 1999 16:30:23 +1100, Keith Owens <kaos@ocs.com.au>
said:
>> Umm, why do you need this at all? The caller is either file IO --- in
>> which case you just do the map_user_kiobuf and pass that to the kiovec
>> IO routine --- or it is kernel-originated IO, in which case you create a
>> kiobuf of your own and just stuff it full of references to the kernel
>> pages you want to read or write.
> User I/O: sys_write->sd_raw_fops.write->sd_raw_write->sd_raw_rw
> Kernel I/O: vmdump->sd_raw_fops.write->sd_raw_write->sd_raw_rw
That's the wrong way to do it.
We need a new file_operations entry, rw_kiovec. So it looks like
sys_write->block_rw_kiovec->sd_raw_write->sd_raw_rw
and vmdump->make_dump_kiovec->sd_raw_write->sd_raw_rw
The kiobuf management should _all_ be done at the level where we are
originating the block IO, not in the per-device operations.
--Stephen
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/