Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Will this work? #7

Open
phillw opened this issue Nov 22, 2019 · 8 comments
Open

Will this work? #7

phillw opened this issue Nov 22, 2019 · 8 comments

Comments

@phillw
Copy link

phillw commented Nov 22, 2019

Computer:
MSI-GS70

[Warning] VT-X / AMD-V virtualization is not enabled in the UEFI! This is required to run virtual machines!
[OK] VT-D / IOMMU is enabled in the UEFI.
[OK] The IOMMU kernel parameters are set.
[Success] GPU with ID '01:00.0' could be passed through to a virtual machine!
[Error] Failed to find the IOMMU group of the GPU with the ID 00:02.0! Have you enabled iommu in the UEFI and kernel?
[Success] There are 1 GPU(s) in this system that could be passed through to a VM!

Is Compatible? Name IOMMU_GROUP PCI Address
Yes GK106M [GeForce GTX 765M] 1 pci@0000:01:00.0

[OK] You have GPUs that are not in the same IOMMU group. At least one of these could be passed through to a VM and at least one of the remaining ones could be used for the host system.
[Info] Device name: GS70 2OD
[Info] BIOS version: E1771IMS.70G
[Warning] This system is probably MUX-less. (The connection between the GPU(s) and the [internal display]/[display outputs] is not multiplexed.)
[OK] Logs have been created in /home/phill/MobilePassThrough/logs/GS70 2OD/E1771IMS.70G

@T-vK
Copy link
Owner

T-vK commented Nov 22, 2019

Can you check in your BIOS/UEFI if VT-X and VT-D are enabled? The script might be reporting it incorrectly.

@phillw
Copy link
Author

phillw commented Nov 22, 2019

Hello!

I found someone who has passthrough running perfectly with MSI GT70, I have the GS70 (slim version) which reportedly has VT-X (I believe it works, based on running VM's with Windows as host) however no option in BIOS & other users reporting on MSI website issues with VT-X.

Unsure whether Muxed or muxless?
MS70 has display output ports (hdmi and md), integrated intel card and nvidia.
Following this guide https://gist.github.com/Misairu-G/616f7b2756c488148b7309addc940b28 I end up with this error while binding

sudo echo "10de 11e1" > "/sys/bus/pci/drivers/vfio-pci/new_id"
bash: /sys/bus/pci/drivers/vfio-pci/new_id: Permission denied

@phillw
Copy link
Author

phillw commented Nov 22, 2019

Having a laptop with passthrough setup would be absolutely amazing - solving a lot for me!
Is there a chance you could help me get this working (or worst case scope confirm a few high end laptop; i'm aware of your website). Happy to hire you / well earned donation with all your work, it's really that needed!

https://0bin.net/paste/tryip14PlmoCeA6U#BUi8Ee-uWdXN9X8skDZkjR7j48sp9zafQ6JLNMMHLD2

@T-vK
Copy link
Owner

T-vK commented Nov 22, 2019

sudo+echo to a file isn't that simple. I thimk you could use tee for that or you do it like this:

sudo bash -c "echo '10de 11e1' > '/sys/bus/pci/drivers/vfio-pci/new_id'"

...
If you can run normal VMs on that notebook, then you csn be sure VT-X is enabled. However, VT-D may not be. My script may say that it is enabled, but it could very well be wrong.
Try to list your IOMMU groups. I think if that doesn't work then we can assume VT-D is not enabled in your BIOS/UEFI.
Should that be the case and there is no option to enable it in the BIOS/UEFI then you'd probably have to mod your BIOS/UEFI in order to reveal that option.
I had to do something like that for my notebook, but I'm not an expert on that topic. In fact I messed it up so badly the first time that I had to buy one of these https://m.aliexpress.com/item/32957821101.html to fix it.
But the people in the BIOS modding forums are generally very knowlegable and helpful if you ask nicely.

@phillw
Copy link
Author

phillw commented Nov 22, 2019

Superb thanks for your response!

The next error to tackle:
qemu-system-x86_64: -device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,x-pci-sub-device-id=0x10ee,x-pci-sub-vendor-id=0x1462,multifunction=on,romfile=MyGPU.rom: vfio error: 0000:01:00.0: group 1 is not viable
Please ensure all devices within the iommu_group are bound to their vfio bus driver.
DNSMASQ terminated

I will try seobios mod and report back.

@T-vK
Copy link
Owner

T-vK commented Nov 22, 2019

Please run this script and tell me what the output is: https://github.com/T-vK/MobilePassThrough/blob/master/utils/lsiommu

@phillw
Copy link
Author

phillw commented Nov 23, 2019

lsiommu: 3: lsiommu: shopt: not found
IOMMU Group 0 00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller [8086:0c04] (rev 06)
IOMMU Group 1 00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller [8086:0c01] (rev 06)
IOMMU Group 1 01:00.0 3D controller [0302]: NVIDIA Corporation GK106M [GeForce GTX 765M] [10de:11e1] (rev a1)
IOMMU Group 1 01:00.1 Audio device [0403]: NVIDIA Corporation GK106 HDMI Audio Controller [10de:0e0b] (rev a1)
IOMMU Group 10 00:1d.0 USB controller [0c03]: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 [8086:8c26] (rev 05)
IOMMU Group 11 00:1f.0 ISA bridge [0601]: Intel Corporation HM87 Express LPC Controller [8086:8c4b] (rev 05)
IOMMU Group 11 00:1f.2 RAID bus controller [0104]: Intel Corporation 82801 Mobile SATA Controller [RAID mode] [8086:282a] (rev 05)
IOMMU Group 11 00:1f.3 SMBus [0c05]: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller [8086:8c22] (rev 05)
IOMMU Group 12 04:00.0 Ethernet controller [0200]: Qualcomm Atheros Killer E220x Gigabit Ethernet Controller [1969:e091] (rev 13)
IOMMU Group 13 05:00.0 Network controller [0280]: Qualcomm Atheros AR9462 Wireless Network Adapter [168c:0034] (rev 01)
IOMMU Group 2 00:14.0 USB controller [0c03]: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI [8086:8c31] (rev 05)
IOMMU Group 3 00:16.0 Communication controller [0780]: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 [8086:8c3a] (rev 04)
IOMMU Group 4 00:1a.0 USB controller [0c03]: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 [8086:8c2d] (rev 05)
IOMMU Group 5 00:1b.0 Audio device [0403]: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller [8086:8c20] (rev 05)
IOMMU Group 6 00:1c.0 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 [8086:8c10] (rev d5)
IOMMU Group 7 00:1c.2 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 [8086:8c14] (rev d5)
IOMMU Group 8 00:1c.3 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 [8086:8c16] (rev d5)
IOMMU Group 9 00:1c.4 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5 [8086:8c18] (rev d5)

@T-vK
Copy link
Owner

T-vK commented Nov 23, 2019

Your iGPU doesn't show up in that output. Have you installed Bumblebee? If so, please run optirun lspci -v.
If not, then your iGPU might be disabled in the BIOS/UEFI. In that case you have to find the option and enable it.
Or maybe something else is going on with your software.
Do you know if the iGPU was ever accessable on your system?
Also, are you 100% certain your system even has an iGPU?
According to the output you have a CPU from Intel's XEON E3-1200 v3 or v4 series.
If it is an E3-1220 v3 for instance then this would mean that your CPU is lacking an iGPU.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants