[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] virtio-scsi and request splitting
From: |
Peter Lieven |
Subject: |
Re: [Qemu-block] virtio-scsi and request splitting |
Date: |
Fri, 2 Jun 2017 08:22:11 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 |
Am 01.06.2017 um 18:54 schrieb Paolo Bonzini:
>
> On 01/06/2017 16:25, Peter Lieven wrote:
>>> DEFINE_PROP_UINT32("max_sectors", VirtIOSCSI,
>>> parent_obj.conf.max_sectors,
>>> 0xFFFF),
>>>
>>> We could increase it now that we have support for max_xfer_len
>>> passthrough.
>> 0xFFFF * 512 is 32MB - 512 byte. This should not limit 1M requests?!
> Yeah, I cannot do math apparently. Someone needs to debug the guest and
> see where the strange 504K limit comes from.
Okay, here comes the root cause. The kernel honours the max_sectors limit
of 1024 sectors (=512KB), but in virtio-blk we have request merging enabled
per default. If I disable it I get the same strange pattern 516096 + 516096 +
16384
Byte. If I increase the limit to 2048 sectors, 1M requests go through for
virtio-blk
and virtio-scsi.
But whats strange is that the kernel properly splits 1M requests into 2* 512KB
for
IDE, but fails to do so for virtio-blk and virtio-scsi.
Side question: What is needed (Qemu Version and Guest Kernel) to get the
max_requests limit
in the kernel based on max_xfer_len?
My testing is with Qemu 2.9.0 and Debian 8 (3.16 kernel)
Thanks,
Peter
- [Qemu-block] virtio-scsi and request splitting, Peter Lieven, 2017/06/01
- Re: [Qemu-block] virtio-scsi and request splitting, Paolo Bonzini, 2017/06/01
- Re: [Qemu-block] virtio-scsi and request splitting, Peter Lieven, 2017/06/01
- Re: [Qemu-block] virtio-scsi and request splitting, Paolo Bonzini, 2017/06/01
- Re: [Qemu-block] virtio-scsi and request splitting, Peter Lieven, 2017/06/01
- Re: [Qemu-block] virtio-scsi and request splitting, Paolo Bonzini, 2017/06/01
- Re: [Qemu-block] virtio-scsi and request splitting, Peter Lieven, 2017/06/01
- Re: [Qemu-block] virtio-scsi and request splitting, Paolo Bonzini, 2017/06/01
- Re: [Qemu-block] virtio-scsi and request splitting,
Peter Lieven <=