diff options
author | Peter Grehan <grehan@FreeBSD.org> | 2014-01-09 07:17:21 +0000 |
---|---|---|
committer | Peter Grehan <grehan@FreeBSD.org> | 2014-01-09 07:17:21 +0000 |
commit | d68f0bd6185977245a3442d08b0046aef7b50fb9 (patch) | |
tree | af8fbd786d537ccb6e53d26db95cf1853ce6c407 /usr.sbin | |
parent | add611fd4c7c19534db49c14f02ced1705f5819f (diff) | |
download | src-d68f0bd6185977245a3442d08b0046aef7b50fb9.tar.gz src-d68f0bd6185977245a3442d08b0046aef7b50fb9.zip |
Fix issue with the virtio descriptor region being truncated
if it was above 4GB. This was seen with CentOS 6.5 guests with
large RAM, since the block drivers are loaded late in the
boot sequence and end up allocating descriptor memory from
high addresses.
Reported by: Michael Dexter
MFC after: 3 days
Notes
Notes:
svn path=/head/; revision=260469
Diffstat (limited to 'usr.sbin')
-rw-r--r-- | usr.sbin/bhyve/virtio.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/usr.sbin/bhyve/virtio.c b/usr.sbin/bhyve/virtio.c index c26272bc0711..bd98990d6975 100644 --- a/usr.sbin/bhyve/virtio.c +++ b/usr.sbin/bhyve/virtio.c @@ -160,7 +160,7 @@ vi_vq_init(struct virtio_softc *vs, uint32_t pfn) vq = &vs->vs_queues[vs->vs_curq]; vq->vq_pfn = pfn; - phys = pfn << VRING_PFN; + phys = (uint64_t)pfn << VRING_PFN; size = vring_size(vq->vq_qsize); base = paddr_guest2host(vs->vs_pi->pi_vmctx, phys, size); |