qemu-devel
[Top][All Lists]
Advanced

[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: Wed, 28 Oct 2009 11:54:31 +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

  Hi,

In order to support SCSI command emulation I had to update /
patch up the existing SCSI disk support. This might be
not to everyones taste, so I'm open to alternative
suggestions.

But I certainly do _not_ want to update the SCSI disk
emulation, as this is really quite tied to the SCSI parallel
interface used by the old lsi53c895a.c.

--verbose please. I'd prefer to fix scsi-disk bugs and/or limitations
instead of working around them.

The problem is I don't have any documentation for the LSI parallel
SCSI controller. So I don't know if and in what shape I/O is passed
down, nor anything else.

[ after briefly checking the code ]

Hmm. Data is passed back+forth between scsi-device and scsi-adapter using a bounce buffer per request and a amazing maze of callbacks ...

That interface needs some serious rework, so we have a chance to kill the memcpy() and use iovecs.

And as the SCSI disk emulation is really
tied into the LSI parallel SCSI controller, any change in the former
is likely to break the latter.

Not really.

And what with me no way of fixing it. Hence I decided on this approach.

From a really quick view fixing up the data xfer code paths doesn't look too bad. Think I'll give it a try.

Plus it doesn't do scatter-gather list handling,

Which should be fixed anyway.

Quite. But as I said, the LSI parallel SCSI controller is going to
suffer.

Don't think so. Even if scsi-disk *supports* scatter lists, lsi isn't forced to actually use that. I think we'll need a bounce-buffer mode anyway for usb-msd because it streams the scsi data in tons of small packets over usb ...

cheers,
  Gerd





reply via email to

[Prev in Thread] Current Thread [Next in Thread]