The kvm_iommu_map_pages function in virt/kvm/iommu.c in the Linux kernel through 3.16.1 miscalculates the number of pages during the handling of a mapping failure, which allows guest OS users to (1) cause a denial of service (host OS memory corruption) or possibly have unspecified other impact by triggering a large gfn value or (2) cause a denial of service (host OS memory consumption) by triggering a small gfn value that leads to permanently pinned pages.
git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git%3Ba=commit%3Bh=350b8bdd689cd2ab2c67c8a86a0be86cfa0751a7
lists.opensuse.org/opensuse-security-announce/2015-03/msg00010.html
lists.opensuse.org/opensuse-security-announce/2015-03/msg00025.html
lists.opensuse.org/opensuse-security-announce/2015-04/msg00015.html
secunia.com/advisories/60830
www.securityfocus.com/bid/69489
www.ubuntu.com/usn/USN-2356-1
www.ubuntu.com/usn/USN-2357-1
www.ubuntu.com/usn/USN-2358-1
www.ubuntu.com/usn/USN-2359-1
bugzilla.redhat.com/show_bug.cgi?id=1131951
exchange.xforce.ibmcloud.com/vulnerabilities/95689
github.com/torvalds/linux/commit/350b8bdd689cd2ab2c67c8a86a0be86cfa0751a7