• Si-Wei Liu's avatar
    vhost-vdpa: clean iotlb map during reset for older userspace · bc91df5c
    Si-Wei Liu authored
    Using .compat_reset op from the previous patch, the buggy .reset
    behaviour can be kept as-is on older userspace apps, which don't ack the
    IOTLB_PERSIST backend feature. As this compatibility quirk is limited to
    those drivers that used to be buggy in the past, it won't affect change
    the behaviour or affect ABI on the setups with API compliant driver.
    
    The separation of .compat_reset from the regular .reset allows
    vhost-vdpa able to know which driver had broken behaviour before, so it
    can apply the corresponding compatibility quirk to the individual driver
    whenever needed.  Compared to overloading the existing .reset with
    flags, .compat_reset won't cause any extra burden to the implementation
    of every compliant driver.
    
    [mst: squashed in two fixup commits]
    
    Message-Id: <1697880319-4937-6-git-send-email-si-wei.liu@oracle.com>
    Message-Id: <1698102863-21122-1-git-send-email-si-wei.liu@oracle.com>
    Reported-by: default avatarDragos Tatulea <dtatulea@nvidia.com>
    Tested-by: default avatarDragos Tatulea <dtatulea@nvidia.com>
    Message-Id: <1698275594-19204-1-git-send-email-si-wei.liu@oracle.com>
    Reported-by: default avatarLei Yang <leiyang@redhat.com>
    Signed-off-by: default avatarSi-Wei Liu <si-wei.liu@oracle.com>
    Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    Tested-by: default avatarLei Yang <leiyang@redhat.com>
    bc91df5c
vdpa.c 38.2 KB