Re: [PATCH 1/2] virtio-balloon: initialize all vq callbacks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/18/2019 01:19 PM, Michael S. Tsirkin wrote:
On Wed, Dec 18, 2019 at 11:18:45AM +0800, Wei Wang wrote:
On 12/18/2019 03:06 AM, Daniel Verkamp wrote:
Ensure that elements of the array that correspond to unavailable
features are set to NULL; previously, they would be left uninitialized.

Since the corresponding names array elements were explicitly set to
NULL, the uninitialized callback pointers would not actually be
dereferenced; however, the uninitialized callbacks elements would still
be read in vp_find_vqs_msix() and used to calculate the number of MSI-X
vectors required.
With your 2nd patch:
if (names[i] && callbacks[i])
     ++nvectors;

It seems this patch isn't necessary as names[i] is already NULL, isn't it?

Best,
Wei
Right but passing uninitialized values isn't nice even if
the function called happens to ignore them.

Hmm.. then please make one more change:

 if (virtio_has_feature(vb->vdev, VIRTIO_BALLOON_F_FREE_PAGE_HINT)) {
                 names[VIRTIO_BALLOON_VQ_FREE_PAGE] = "free_page_vq";
-                callbacks[VIRTIO_BALLOON_VQ_FREE_PAGE] = NULL;
 }

And I think all the commit description isn't accurate then, it seems to be a coding style improvement,
instead of affecting "calculate the number of MSI-X vectors required".

Best,
Wei


_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization



[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux