+11
−20
Loading
The current check is incorrect; it only checks if the beginning or end of a region is within an existing region. This doesn't account for userspace specifying a region that begins before and ends after an existing region. Change the logic to a range intersection check against gfns and uaddrs for each region. Remove mshv_partition_region_by_uaddr() as it is no longer used. Fixes: 621191d7 ("Drivers: hv: Introduce mshv_root module to expose /dev/mshv to VMMs") Reported-by:Michael Kelley <mhklinux@outlook.com> Closes: https://lore.kernel.org/linux-hyperv/SN6PR02MB41575BE0406D3AB22E1D7DB5D4C2A@SN6PR02MB4157.namprd02.prod.outlook.com/ Signed-off-by:
Nuno Das Neves <nunodasneves@linux.microsoft.com> Reviewed-by:
Michael Kelley <mhklinux@outlook.com> Signed-off-by:
Wei Liu <wei.liu@kernel.org>