drm/i915/gvt/kvmgt: fill info for ROM/VGA region
authorPei Zhang <pei.zhang@intel.com>
Fri, 8 Dec 2017 07:31:12 +0000 (15:31 +0800)
committerZhenyu Wang <zhenyuw@linux.intel.com>
Fri, 8 Dec 2017 08:18:49 +0000 (16:18 +0800)
Both ROM/VGA region are not supported for vGPU in GVT. But if the device
model want to get those region, we should return the correct information
but not leave the structure with random data. Change to same operation
of BAR3-BAR5 which are also not supported by vGPU.

Refer to function @intel_vgpu_rw.

Signed-off-by: Pei Zhang <pei.zhang@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
drivers/gpu/drm/i915/gvt/kvmgt.c

index b8a85e08091ad852be028a9a6f64639845b8c913..f86983d6655be03ba692c2df9bbecef1d9382c1f 100644 (file)
@@ -1029,13 +1029,17 @@ static long intel_vgpu_ioctl(struct mdev_device *mdev, unsigned int cmd,
                case VFIO_PCI_BAR3_REGION_INDEX ... VFIO_PCI_BAR5_REGION_INDEX:
                        info.offset = VFIO_PCI_INDEX_TO_OFFSET(info.index);
                        info.size = 0;
-
                        info.flags = 0;
+
                        gvt_dbg_core("get region info bar:%d\n", info.index);
                        break;
 
                case VFIO_PCI_ROM_REGION_INDEX:
                case VFIO_PCI_VGA_REGION_INDEX:
+                       info.offset = VFIO_PCI_INDEX_TO_OFFSET(info.index);
+                       info.size = 0;
+                       info.flags = 0;
+
                        gvt_dbg_core("get region info index:%d\n", info.index);
                        break;
                default: