[dpdk-dev] [PATCH 0/8] net/virtio: fix queue reconfigure issue
Yuanhan Liu
yuanhan.liu at linux.intel.com
Thu Nov 3 17:09:52 CET 2016
This patchset fixes an issue (virtio/vhost become broken when queue setup
is done 2 or more times, check patch 2 for great details) reported by Ilya
at the late stage of last release. I sensed it would be some amounts of
code work, that I delayed it to this release. However, I failed to make
the fix in the early stage of this release, that we come to the same
situation again: we are being at the late stage of v16.11 :(
However, honestly, I don't want to miss it again in this release, as it
is hard to backport such fix to a stable release. It's not a bug can
be fixed by few lines of code. The virtio init logic is quite wrong that
I need change quite many places to fix it. Meanwhile, I have done my best
to keep the change being as minimal as possible.
Besides that, judging that v16.11 would be a LTS and it's such an severe
bug that should be fixed ASAP (at least, we should make it work in a LTS
release), I then tried hard today to make this patchset, with the hope we
could fix this severe issue at this release.
The issue is decribed in length in patch 4 "net/virtio: allocate queue
at init stage".
Again, it's not a bug can be fixed by one patch, that you see no one
"fix" tag in none of those patches. All below patches work together
to fix this issue.
Thanks.
--yliu
---
Yuanhan Liu (8):
net/virtio: revert "virtio: fix restart"
net/virtio: simplify queue memzone name
net/virtio: simplify queue allocation
net/virtio: allocate queue at init stage
net/virtio: initiate vring at init stage
net/virtio: move queue configure code to proper place
net/virtio: complete init stage at the right place
net/virtio: remove started field
drivers/net/virtio/virtio_ethdev.c | 182 ++++++++++++++++-----------
drivers/net/virtio/virtio_ethdev.h | 10 --
drivers/net/virtio/virtio_pci.h | 3 +-
drivers/net/virtio/virtio_rxtx.c | 247 ++++++++++++++-----------------------
drivers/net/virtio/virtqueue.h | 7 ++
5 files changed, 208 insertions(+), 241 deletions(-)
--
1.9.0
More information about the dev
mailing list