diff options
Diffstat (limited to 'arch/x86/xen/p2m.c')
-rw-r--r-- | arch/x86/xen/p2m.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/x86/xen/p2m.c b/arch/x86/xen/p2m.c index ddc81a06edb9..df4e36775339 100644 --- a/arch/x86/xen/p2m.c +++ b/arch/x86/xen/p2m.c | |||
@@ -365,6 +365,10 @@ bool __set_phys_to_machine(unsigned long pfn, unsigned long mfn) | |||
365 | { | 365 | { |
366 | unsigned topidx, mididx, idx; | 366 | unsigned topidx, mididx, idx; |
367 | 367 | ||
368 | if (unlikely(xen_feature(XENFEAT_auto_translated_physmap))) { | ||
369 | BUG_ON(pfn != mfn && mfn != INVALID_P2M_ENTRY); | ||
370 | return true; | ||
371 | } | ||
368 | if (unlikely(pfn >= MAX_P2M_PFN)) { | 372 | if (unlikely(pfn >= MAX_P2M_PFN)) { |
369 | BUG_ON(mfn != INVALID_P2M_ENTRY); | 373 | BUG_ON(mfn != INVALID_P2M_ENTRY); |
370 | return true; | 374 | return true; |
@@ -384,11 +388,6 @@ bool __set_phys_to_machine(unsigned long pfn, unsigned long mfn) | |||
384 | 388 | ||
385 | bool set_phys_to_machine(unsigned long pfn, unsigned long mfn) | 389 | bool set_phys_to_machine(unsigned long pfn, unsigned long mfn) |
386 | { | 390 | { |
387 | if (unlikely(xen_feature(XENFEAT_auto_translated_physmap))) { | ||
388 | BUG_ON(pfn != mfn && mfn != INVALID_P2M_ENTRY); | ||
389 | return true; | ||
390 | } | ||
391 | |||
392 | if (unlikely(!__set_phys_to_machine(pfn, mfn))) { | 391 | if (unlikely(!__set_phys_to_machine(pfn, mfn))) { |
393 | if (!alloc_p2m(pfn)) | 392 | if (!alloc_p2m(pfn)) |
394 | return false; | 393 | return false; |