On 10/30/09 09:12, Hannes Reinecke wrote:
Gerd Hoffmann wrote:
http://repo.or.cz/w/qemu/kraxel.git?a=shortlog;h=refs/heads/scsi.v1
It is far from being completed, will continue tomorrow. Should give a
idea of the direction I'm heading to though. Comments welcome.
Yep, this looks good.
More bits available now at:
http://repo.or.cz/w/qemu/kraxel.git/shortlog/refs/heads/scsi.v3
Please have a look at the new interface, this commit:
http://repo.or.cz/w/qemu/kraxel.git/commitdiff/9c825dac540282dd4d5f5f660ca13af617888037
The workflow I have in mind is:
->request_new()
Returns a parsed request, i.e. all fields of req->cmd are filled
already, so the host adapter can easily check whenever it is a read or
write and how many bytes will be transfered.
->request_run()
Execute the command. iovec is passed to the dma_bdrv_*() functions,
which means it should contain guest physical addresses.
When the request is done the complete callback is called. For commands
which complete immediately the callback might be called before
request_run() returns. Or maybe don't call the callback at all then?
We can easily indicate using the return value that we are done already.
->request_del()
Release request when done.
Questions & comments are welcome.
cheers,
Gerd
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html