Re: [PATCH] Do not name control queue for virtio-net
From: "Michael S. Tsirkin" <mst@redhat.com>
Date: 2022-09-22 09:16:18
Also in:
bpf, lkml, virtualization
On Sun, Sep 18, 2022 at 05:00:20PM +0800, Junbo wrote:
hi Michael
in virtio-net.c
/* Parameters for control virtqueue, if any */
if (vi->has_cvq) {
callbacks[total_vqs - 1] = NULL;
names[total_vqs - 1] = "control";
}
I think the Author who write the code maybe want to name the control queue to
'virtioX-control',That would be me I suspect ;)
but it never worked, we can see the name still be 'virtioX-config' in /proc/interrupts,
Nope, what you see in /proc/interrupts are the interrupts, not the queue name.
for example 43: 0 0 0 0 0 0 0 0 PCI-MSI-edge virtio0-config 44: 64 0 0 0 0 0 1845 0 PCI-MSI-edge virtio0-input.0 45: 1 0 0 0 0 0 0 0 PCI-MSI-edge virtio0-output.0 Because in function vp_request_msix_vectors, it just allocate 'xxxx-config' to every virtio devices, even the virtio device do not need it.
Oh yes, we can fix that. The result will be this line disappearing for devices without a config interrupt. Not for net though, that generally uses a config interrupt for things like link state detection.
in /proc/ interrupts, we can see that each virtio device's first interrupt always named 'virtioX-config'. So I think it's better to not explicitly give the "control" here, it's useless...
it's used for debugging.