Re: [virtio-dev] Re: [PATCH v2 0/4] virtio: Clean up scatterlists and use the DMA API

Andy Lutomirski
2014-08-28T21:16:43Z

On Thu, Aug 28, 2014 at 12:18 PM, Christian Borntraeger
<borntraeger@de.ibm.com> wrote:
> On 28/08/14 21:03, Andy Lutomirski wrote:
>> [removed virtio-dev -- I'm sick of bounces]
>>
>> On Thu, Aug 28, 2014 at 11:55 AM, Paolo Bonzini <pbonzini@redhat.com> wrote:
>>> Il 28/08/2014 20:29, Christian Borntraeger ha scritto:
>>>>>>>> block seems to work, with net a simple ping works, iperf causes this:
>>>>>>
>>>>>> I neither see the bug, nor can I reproduce it on x86_64 on KVM. I
>>>>>> doubt that dma vs. non-dma is relevant. I tried -net user a -net tap
>>>>>> with iperf running in both directions. I also tried switching
>>>>>> virtio_pci into non-DMA-API mode. No errors.
>>>>>>
>>>>>> Is there any chance that you could instrument that BUG_ON to print n,
>>>>>> i, in_sgs, out_sgs, total_sg, total_in, and total_out? I assume this
>>>>>> is some oddity with patch 1, but I'm mystified.
>>>> Yes, its triggered by patch 1.
>>>
>>> What version of QEMU? Can you two cat the "features" file in the
>>> virtio-net device's sysfs directory?
>>
>> With vhost=on:
>>
>> # cat /sys/class/net/eth0/device/features
>> 0000011000000001111101010001110000000000000000000000000000000000
> >
>> Without vhost=on:
>>
>> # cat /sys/class/net/eth0/device/features
>> 0000011000000001111101010001110000000000000000000000000000000000
>>
>> Instrumenting the code says that indirect=1.
>>
>> --Andy
>>
>
> I have
>
> 1100011111111111111101010001110000000000000000000000000000000000
>

I still can't reproduce it, but I think I see the problem. I'm going
to rearrange the patch series so that patch 1 is at the end in case it
causes additional issues.

v3 coming soon.

--Andy

--
Andy Lutomirski
AMA Capital Management, LLC