Searched hist:"309 bba39" (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/drivers/vhost/ |
H A D | vringh.c | 309bba39 Fri Jun 24 02:56:56 CDT 2022 Stefano Garzarella <sgarzare@redhat.com> vringh: iterate on iotlb_translate to handle large translations
iotlb_translate() can return -ENOBUFS if the bio_vec is not big enough to contain all the ranges for translation. This can happen for example if the VMM maps a large bounce buffer, without using hugepages, that requires more than 16 ranges to translate the addresses.
To handle this case, let's extend iotlb_translate() to also return the number of bytes successfully translated. In copy_from_iotlb()/copy_to_iotlb() loops by calling iotlb_translate() several times until we complete the translation.
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com> Message-Id: <20220624075656.13997-1-sgarzare@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
|