[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 0/4] megaraid_sas HBA emulation
From: |
Gerd Hoffmann |
Subject: |
Re: [Qemu-devel] [PATCH 0/4] megaraid_sas HBA emulation |
Date: |
Tue, 03 Nov 2009 22:03:25 +0100 |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.4pre) Gecko/20091014 Fedora/3.0-2.8.b4.fc11 Lightning/1.0pre Thunderbird/3.0b4 |
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
- Re: [Qemu-devel] [PATCH 0/4] megaraid_sas HBA emulation,
Gerd Hoffmann <=