[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [SPDK] virtio-vhost-user with virtio-scsi: end-to-end s
From: |
Nikos Dragazis |
Subject: |
Re: [Qemu-devel] [SPDK] virtio-vhost-user with virtio-scsi: end-to-end setup |
Date: |
Sat, 6 Oct 2018 18:55:25 +0000 |
Hi Pawel,
Thank you for your quick reply. I appreciate your help.
I’m sorry for the late response. I am glad to tell you that I have a
working demo at last. I have managed to solve my problem.
You were right about the IO channels. Function
spdk_scsi_dev_allocate_io_channels() fails to allocate the IO channel
for the virtio-scsi bdev target and function spdk_vhost_scsi_start()
fails to verify its return value. My actual segfault was due to a race
on the unique virtio-scsi bdev request queue between the creation and
the destruction of the IO channel in the vhost device backend. This led
to the IO channel pointer lun->io_channel being NULL after the
vhost-user negotiation, and the bdev layer segfaulted when accessing it
in response to an IO request.
After discovering this, and spending quite some time debugging it, I
searched the bug tracker and the commit history in case I had missed
something. It seems this was a recently discovered bug, which has
fortunately already been solved:
https://github.com/spdk/spdk/commit/9ddf6438310cc97b346d805a5969af7507e84fde#diff-d361b53e911663e8c6c5890fb046a79b
I had overlooked pulling from the official repo for a while, so I missed
the patch. It works just fine after pulling the newest changes.
So, I’ll make sure to work on the latest commits next time :)
Thanks again,
Nikos
On 21/09/2018 10:31 πμ, Wodkowski, PawelX wrote:
> Hi Nikos,
>
> About SPKD backtrace you got. There is something wrong with IO channel
> allocation.
> SPKD vhost-scsi should check the result of
> spdk_scsi_dev_allocate_io_channels() in
> spdk_vhost_scsi_dev_add_tgt(). But this result is not checked :(
> You can add some check or assert there.
>
> Paweł
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Qemu-devel] [SPDK] virtio-vhost-user with virtio-scsi: end-to-end setup,
Nikos Dragazis <=