iommu.c kernel panic when upgrading to Xenserver 6.5

I found a bug exists on some Intel ICH9 Family chipsets that causes an error:

Image of a computer providing a iommu.c error
Image of a computer providing a iommu.c error

Panic on CPU 0:
Assertion 'rmrr->base_address < rmrr->end_address' Failed at iommu.c:1848
Reboot in five seconds...

The solution to this is simple.

First: Upgrade the system with the unsupported method 🙂
xe host-call-plugin plugin=prepare_host_upgrade.py host-uuid=e6238743-x-x-x-12c391702c0b fn=testUrl args:url=http://yourwebserverhere/xenserver65/

If it returns "true", go for the next step:
xe host-call-plugin plugin=prepare_host_upgrade.py host-uuid=e6238743-x-x-x-12c391702c0b fn=main args:url=http://yourwebserverhere/xenserver65/

This will take a while and return true. These are the steps that the rolling pool plugin uses.

now edit /boot/extlinux.conf and on each "append" line and change "vga=mode-????? —" on labels "upgrade" and "xe" to add "iommu=disable" ("vga=mode-??? iommu=disable —") and reboot. It should complete the network upgrade as normal and work properly after that.