xenpv: do not use low 1MB for Xen mappings on i386

On amd64 we already avoid using memory below 4GB in order to prevent
clashes with MMIO regions, but i386 was allowed to use any hole in
the physical memory map in order to map Xen pages.

Limit this to memory above the 1MB boundary on i386 in order to avoid
clashes with the MMIO holes in that area.

Sponsored by:	Citrix Systems R&D
MFC after:	1 week
This commit is contained in:
royger 2020-05-28 08:18:34 +00:00
parent ffd1464a3e
commit e3d5eb3ef1

View File

@ -54,12 +54,14 @@ __FBSDID("$FreeBSD$");
* prevent clashes with MMIO/ACPI regions.
*
* Since this is not possible on i386 just use any available memory
* chunk and hope we don't clash with anything else.
* chunk above 1MB and hope we don't clash with anything else.
*/
#ifdef __amd64__
#define LOW_MEM_LIMIT 0x100000000ul
#elif defined(__i386__)
#define LOW_MEM_LIMIT 0x100000ul
#else
#define LOW_MEM_LIMIT 0
#error "Unsupported architecture"
#endif
static devclass_t xenpv_devclass;