The numbers obtained from the hypervisor really can't ever lead to an
overflow here, only the original calculation going through the order
of the range could have. This avoids the (as Jeremy points outs)
somewhat ugly NULL-based calculation here.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
machine_to_phys_nr = mapping.max_mfn + 1;
} else
machine_to_phys_nr = MACH2PHYS_NR_ENTRIES;
- if (machine_to_phys_mapping + machine_to_phys_nr
- < machine_to_phys_mapping)
- machine_to_phys_nr = (unsigned long *)NULL
- - machine_to_phys_mapping;
+ WARN_ON(machine_to_phys_mapping + (machine_to_phys_nr - 1)
+ < machine_to_phys_mapping);
if (!xen_feature(XENFEAT_auto_translated_physmap))
phys_to_machine_mapping =