GVT-g "No space left on device" despite having 4GB aperture size

so after reading about intel GVTg I decided to use it on my homelab running fedora server 34 .
stuff was going fine until I tried to make the actual vGPU and I was hit by “No space left on device” error,
looking around the solution to this issue is almost always is to increase “Aperture size” setting in bios, the thing is I already have set aperture size to 4GB and in “available instances” for i915-GVTg_V5_2 I have 3.

I am at a loss here, any suggestions would be appreciated.

some notes:
Output of “sudo lspci -vv -s 00:02.0” :

00:02.0 VGA compatible controller: Intel Corporation CoffeeLake-H GT2 [UHD Graphics 630] (prog-if 00 [VGA controller])
DeviceName: Onboard IGD
Subsystem: ASUSTeK Computer Inc. Device 872f
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 157
IOMMU group: 1
Region 0: Memory at 2100000000 (64-bit, non-prefetchable) [size=16M]
Region 2: Memory at 2000000000 (64-bit, prefetchable) [size=4G]
Region 4: I/O ports at 1000 [size=64]
Capabilities: [40] Vendor Specific Information: Len=0c <?>
Capabilities: [70] Express (v2) Root Complex Integrated Endpoint, MSI 00
DevCap: MaxPayload 128 bytes, PhantFunc 0
ExtTag- RBE+ FLReset+
DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- FLReset-
MaxPayload 128 bytes, MaxReadReq 128 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
DevCap2: Completion Timeout: Not Supported, TimeoutDis- NROPrPrP- LTR-
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF Disabled,
AtomicOpsCtl: ReqEn-
Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable- 64bit-
Address: fee00018 Data: 0000
Capabilities: [d0] Power Management version 2
Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [100 v1] Process Address Space ID (PASID)
PASIDCap: Exec- Priv-, Max PASID Width: 14
PASIDCtl: Enable- Exec- Priv-
Capabilities: [200 v1] Address Translation Service (ATS)
ATSCap: Invalidate Queue Depth: 00
ATSCtl: Enable-, Smallest Translation Unit: 00
Capabilities: [300 v1] Page Request Interface (PRI)
PRICtl: Enable- Reset-
PRISta: RF- UPRGI- Stopped+
Page Request Capacity: 00008000, Page Request Allocation: 00000000
Kernel driver in use: i915
Kernel modules: i915

Output of “ls /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types/” :

i915-GVTg_V5_1 i915-GVTg_V5_2 i915-GVTg_V5_4 i915-GVTg_V5_8

Output of " dmesg | grep -iC 3 n “gvt”" :

[ 0.000000] microcode: microcode updated early to revision 0xea, date = 2021-01-05
[ 0.000000] Linux version 5.13.4-201.fsync.fc34.x86_64 (mockbuild@fc9d20bfe46848cd891d2792fcb8689e) (gcc (GCC) 11.1.1 20210531 (Red Hat 11.1.1-3), GNU ld version 2.35.1-41.fc34) #1 SMP Wed Jul 21 23:43:49 UTC 2021
[ 0.000000] Command line: BOOT_IMAGE=(hd1,gpt2)/vmlinuz-5.13.4-201.fsync.fc34.x86_64 root=/dev/mapper/fedora_fedora-root ro rd.lvm.lv=fedora_fedora/root rhgb quiet intel_iommu=on iommu=pt rd.driver.pre=vfio-pci i915.enable_gvt=1 i915.enable_fbc=0
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x001: ‘x87 floating point registers’
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x002: ‘SSE registers’
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x004: ‘AVX registers’

[ 0.121678] pcpu-alloc: [0] 00 01 02 03 04 05 06 07 [0] 08 09 10 11 12 13 14 15
[ 0.121723] Built 1 zonelists, mobility grouping on. Total pages: 8225545
[ 0.121725] Policy zone: Normal
[ 0.121727] Kernel command line: BOOT_IMAGE=(hd1,gpt2)/vmlinuz-5.13.4-201.fsync.fc34.x86_64 root=/dev/mapper/fedora_fedora-root ro rd.lvm.lv=fedora_fedora/root rhgb quiet intel_iommu=on iommu=pt rd.driver.pre=vfio-pci i915.enable_gvt=1 i915.enable_fbc=0
[ 0.121832] DMAR: IOMMU enabled
[ 0.124067] Dentry cache hash table entries: 4194304 (order: 13, 33554432 bytes, linear)
[ 0.125152] Inode-cache hash table entries: 2097152 (order: 12, 16777216 bytes, linear)

[ 2.194048] i915 0000:00:02.0: enabling device (0000 → 0003)
[ 2.194607] i915 0000:00:02.0: [drm] VT-d active for gfx access
[ 2.194609] i915 0000:00:02.0: vgaarb: deactivate vga console
[ 2.194885] i915 0000:00:02.0: Direct firmware load for i915/gvt/vid_0x8086_did_0x3e9b_rid_0x00.golden_hw_state failed with error -2
[ 2.205110] dca service started, version 1.12.1
[ 2.208333] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=none
[ 2.211358] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/kbl_dmc_ver1_04.bin (v1.4)

[ 10.348979] e1000e 0000:00:1f.6 enp0s31f6: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[ 10.349071] IPv6: ADDRCONF(NETDEV_CHANGE): enp0s31f6: link becomes ready
[ 13.896970] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[ 106.604793] gvt: fail to alloc high gm space from host
[ 106.604844] gvt: failed to create intel vgpu: -28

I get the same error even using “i915-GVTg_V5_8” profile.

Try this page and see if that gets you an further

Blockquotehttps://github.com/intel/gvt-linux/issues/131#issuecomment-815362316
Blockquote