|
@@ -799,10 +799,10 @@ bool __set_phys_to_machine(unsigned long pfn, unsigned long mfn)
|
|
|
{
|
|
|
unsigned topidx, mididx, idx;
|
|
|
|
|
|
- if (unlikely(xen_feature(XENFEAT_auto_translated_physmap))) {
|
|
|
- BUG_ON(pfn != mfn && mfn != INVALID_P2M_ENTRY);
|
|
|
+ /* don't track P2M changes in autotranslate guests */
|
|
|
+ if (unlikely(xen_feature(XENFEAT_auto_translated_physmap)))
|
|
|
return true;
|
|
|
- }
|
|
|
+
|
|
|
if (unlikely(pfn >= MAX_P2M_PFN)) {
|
|
|
BUG_ON(mfn != INVALID_P2M_ENTRY);
|
|
|
return true;
|