Thread (38 messages) 38 messages, 2 authors, 2017-04-01

Re: [PATCH v2 2/5] net/virtio: add interrupt configure for vdev

From: Yuanhan Liu <hidden>
Date: 2017-03-29 07:32:42

On Wed, Mar 29, 2017 at 03:27:28PM +0800, Tan, Jianfeng wrote:

On 3/29/2017 3:09 PM, Yuanhan Liu wrote:
quoted
On Wed, Mar 29, 2017 at 03:03:16PM +0800, Tan, Jianfeng wrote:
quoted
On 3/29/2017 2:27 PM, Yuanhan Liu wrote:
quoted
On Tue, Mar 28, 2017 at 08:21:53AM +0000, Jianfeng Tan wrote:
quoted
For virtio PCI devices, interrupt should be configured before setting
VIRTIO_CONFIG_STATUS_DRIVER_OK so that QEMU can properly set eventfds
in the host.

For virtio virtual devices, VIRTIO_CONFIG_STATUS_DRIVER_OK should be
set firstly, so that intr_handle is initialized in
virtio_user_start_device().
I'm wondering why can't you let virtio-user follow virtio-pci?
It's because that virtio-user not only counts on virtio_user_start_device()
to allocate intr_handle, it also needs the information in this function to
initialize this struct. For virtio-pci, similar information is from
rte_intr_enable/rte_intr_efd_enable.

Or do you mean we can move calling virtio_user_start_device() ahead? I can
hardly find other place instead of DRIVER_OK.
For example, virtio_user_dev_init()?
But in that way, there is only one chance to negotiate features with the
backend. What if we change the configuration through
rte_eth_dev_configure()?
Then there will be a reset; everything should be reset properly in the
device.

	--yliu
Yes, we can just put callfd/kickfd creation and intr_handle initialization
into virtio_user_dev_init(), and its destructor into
virtio_user_dev_uninit(). It sounds like a feasible way to go.

Thanks,
Jianfeng
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help