• Stefano Garzarella's avatar
    vhost: fix range used in translate_desc() · 98047313
    Stefano Garzarella authored
    vhost_iotlb_itree_first() requires `start` and `last` parameters
    to search for a mapping that overlaps the range.
    
    In translate_desc() we cyclically call vhost_iotlb_itree_first(),
    incrementing `addr` by the amount already translated, so rightly
    we move the `start` parameter passed to vhost_iotlb_itree_first(),
    but we should hold the `last` parameter constant.
    
    Let's fix it by saving the `last` parameter value before incrementing
    `addr` in the loop.
    
    Fixes: a9709d68 ("vhost: convert pre sorted vhost memory array to interval tree")
    Acked-by: default avatarJason Wang <jasowang@redhat.com>
    Signed-off-by: default avatarStefano Garzarella <sgarzare@redhat.com>
    Message-Id: <20221109102503.18816-3-sgarzare@redhat.com>
    Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    98047313
vhost.c 62.9 KB