diff options
author | Xiong Zhang <xiong.y.zhang@intel.corp-partner.google.com> | 2019-04-23 17:15:05 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2019-11-11 09:46:44 +0000 |
commit | 62fd776c5c9b9a2fd03d13fc7ec2bce7e5b42684 (patch) | |
tree | 85c6903ee3151bb6d7f2e4aae84120812c21a792 /devices/src/pci/vfio_pci.rs | |
parent | d9a54c222ea0e83fc4f237f792b374b2841074c5 (diff) | |
download | crosvm-62fd776c5c9b9a2fd03d13fc7ec2bce7e5b42684.tar crosvm-62fd776c5c9b9a2fd03d13fc7ec2bce7e5b42684.tar.gz crosvm-62fd776c5c9b9a2fd03d13fc7ec2bce7e5b42684.tar.bz2 crosvm-62fd776c5c9b9a2fd03d13fc7ec2bce7e5b42684.tar.lz crosvm-62fd776c5c9b9a2fd03d13fc7ec2bce7e5b42684.tar.xz crosvm-62fd776c5c9b9a2fd03d13fc7ec2bce7e5b42684.tar.zst crosvm-62fd776c5c9b9a2fd03d13fc7ec2bce7e5b42684.zip |
Vfio: Suitably allocate bar for vfio device
Use 64bit flag in vfio device's bar to get correct mmio allocator. BUG=chromium:992270 TEST=none Change-Id: I8f3dab48eb6dc0b92071803aa3526cadda8034c7 Signed-off-by: Xiong Zhang <xiong.y.zhang@intel.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/1581143 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Zach Reizner <zachr@chromium.org>
Diffstat (limited to 'devices/src/pci/vfio_pci.rs')
-rw-r--r-- | devices/src/pci/vfio_pci.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/devices/src/pci/vfio_pci.rs b/devices/src/pci/vfio_pci.rs index 2243990..fd1b3ca 100644 --- a/devices/src/pci/vfio_pci.rs +++ b/devices/src/pci/vfio_pci.rs @@ -501,8 +501,12 @@ impl PciDevice for VfioPciDevice { size <<= 32; size |= u64::from(low); size = !size + 1; + let mmio_type = match is_64bit { + false => MmioType::Low, + true => MmioType::High, + }; let bar_addr = resources - .mmio_allocator(MmioType::Low) + .mmio_allocator(mmio_type) .allocate_with_align( size, Alloc::PciBar { |