qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [sneak preview] major scsi overhaul


From: Hannes Reinecke
Subject: Re: [Qemu-devel] [sneak preview] major scsi overhaul
Date: Thu, 26 Nov 2009 16:50:26 +0100
User-agent: Thunderbird 2.0.0.19 (X11/20081227)

Gerd Hoffmann wrote:
> On 11/26/09 15:27, Hannes Reinecke wrote:
>> Gerd Hoffmann wrote:
>>> sd_done() tries to figure how many sectors it actually got for serious
>>> errors.  I don't feel signaling "medium error" for the first sector
>>> behind our limit just because we'd like to have smaller requests.
> 
>> scsi_end_request is being called with the number of bytes _actually
>> processed_,
>> which might be less than the number of bytes requested.
>> And the remainder will be retried by the upper layers.
> 
> The "number of bytes _actually processed_" must come from somewhere. And
> that somewhere is sd_done() in case of scsi-disks.  See my point now?
> 
Ah. Now. I concur.

So indeed, this approach would only work if we signal some sense code
back to the host.
I, OTOH, don't have any qualms with returning HARDWARE_ERROR,
0x26/0x08(TOO MANY SEGMENT DESCRIPTORS) resp 0x26h/0x0B (INLINE DATA LENGTH 
EXCEEDED).
Feels only fair to notify the guest it has done something wrong.

The alternative would be to split the I/O into smaller sections.
But this really feels a bit like an overkill.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke                   zSeries & Storage
address@hidden                        +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)




reply via email to

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