• Jacob Keller's avatar
    vhost: use struct_size and size_add to compute flex array sizes · e4be66e5
    Jacob Keller authored
    The vhost_get_avail_size and vhost_get_used_size functions compute the size
    of structures with flexible array members with an additional 2 bytes if the
    VIRTIO_RING_F_EVENT_IDX feature flag is set. Convert these functions to use
    struct_size() and size_add() instead of coding the calculation by hand.
    
    This ensures that the calculations will saturate at SIZE_MAX rather than
    overflowing.
    Signed-off-by: default avatarJacob Keller <jacob.e.keller@intel.com>
    Cc: "Michael S. Tsirkin" <mst@redhat.com>
    Cc: Jason Wang <jasowang@redhat.com>
    Cc: virtualization@lists.linux-foundation.org
    Cc: kvm@vger.kernel.org
    Message-Id: <20230227214127.3678392-1-jacob.e.keller@intel.com>
    Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    e4be66e5
vhost.c 62.9 KB