On 07/03/2017 09:47, Jason Wang wrote: > We don't destroy region cache during reset which can make the maps > of previous driver leaked to a buggy or malicious driver that don't > set vring address before starting to use the device.
I'm still not sure as to how this can happen. Reset does clear desc/used/avail, which should then be checked before accessing the caches. Paolo > Fix this by > destroy the region cache during reset and validate it before trying to > use them. While at it, also validate address_space_cache_init() during > virtio_init_region_cache() to make sure we have a correct region > cache.