svn commit: r299658 - head/sys/dev/pci
Bjoern A. Zeeb
bz at FreeBSD.org
Fri May 13 11:18:29 UTC 2016
Author: bz
Date: Fri May 13 11:18:27 2016
New Revision: 299658
URL: https://svnweb.freebsd.org/changeset/base/299658
Log:
When using IOPORT with pci_host_generic we are missing setting the rman_end()
which leads to end being before start and thus a signed extended very large
number of size later on, which kva_alloc() will fail upon and we will panic.
Add the missing call.
Debugged with: andrew
Reviewed by: br, andrew
Sponsored by: DARPA/AFRL
Found: while using virtio with gem5
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D6337
Modified:
head/sys/dev/pci/pci_host_generic.c
Modified: head/sys/dev/pci/pci_host_generic.c
==============================================================================
--- head/sys/dev/pci/pci_host_generic.c Fri May 13 11:15:33 2016 (r299657)
+++ head/sys/dev/pci/pci_host_generic.c Fri May 13 11:18:27 2016 (r299658)
@@ -613,6 +613,7 @@ generic_pcie_activate_resource(device_t
}
if (found) {
rman_set_start(r, rman_get_start(r) + phys_base);
+ rman_set_end(r, rman_get_end(r) + phys_base);
BUS_ACTIVATE_RESOURCE(device_get_parent(dev), child,
type, rid, r);
} else {
More information about the svn-src-all
mailing list