Silvenga / comments.silvenga.com

Hosts the comments for Silvenga.com.
MIT License
0 stars 0 forks source link

pci-passthough-hpe-servers/ #7

Open utterances-bot opened 1 year ago

utterances-bot commented 1 year ago

Hypervisor PCI Passthrough on Modern HPE Servers

Getting iLO to play nice with Hyper-V Discrete Device Assignment

https://silvenga.com/pci-passthough-hpe-servers/

mobrien118 commented 1 year ago

Nice! Except... It doesn't work on my DL380 G6... The process succeeds, but, on reboot, the "RMRDS_Slot2" exclusions revert back to "Included"... :-( This is the worst. No, not swapping for a gen8 is not a viable solution.

c0def1re commented 1 year ago

For some reason the -f part of the commands are not working for me, im not getting any output files, no C:\existing-settings.xml and no rmrds.xml

and i have no idea why

jawamencad commented 1 year ago

Yeah same its not making any output files and no return codes either. Nothing online says anything about this issue. I've read the documentation on conrep and it did not help in any way.

c0def1re commented 1 year ago

Yeah same its not making any output files and no return codes either. Nothing online says anything about this issue. I've read the documentation on conrep and it did not help in any way.

In the end i ended up creating a winpe image with all the drivers and tools loaded into it and then booted the server from that, this allowed me to extract the XML file and modify it and write it back. It was such a long winded process though i would recommend seeing if you can get a copy of the official HP iso that is already setup to do this. You need a HPE support contract to get access to it though.

nonolimits commented 1 year ago

To the previous posters having problems with -f on conrep

Here's the issue: https://support.hpe.com/hpesc/public/docDisplay?docLocale=en_US&docId=mmr_kc-0121168

You'll need to install the ILO drivers: HP ProLiant iLO 3/4 Channel Interface Driver for Windows HP ProLiant iLO 3/4 Management Controller Driver for Windows

nonolimits commented 1 year ago

...and thanks to the original poster for the tutorial.

I was hoping it would enable Hyper-V PCI passthrough on my HP Microserver Gen8 - sadly no dice.

Maybe it will work with a more sensible hypervisor like Proxmox... (although there's a possibility of still needing a kernel patch apparently)

Silvenga commented 1 year ago

@nonolimits

I was hoping it would enable Hyper-V PCI passthrough on my HP Microserver Gen8 - sadly no dice.

I actually figured out what to do for Hyper-V from the perspective of KVM - both KVM and Hyper-V (being type 1 hypervisors) have the same issue with how ILO manages RMRR - completely out of the realm of the kernel (both Linux and Windows kernels). See the linked linux kernel doc. I just like to walk the edge between Linux and Windows - so I try and find solutions for Windows when I can (since there's less information out there, Linux users are more likely to blog).

For the Microserver, I would look at what devices are RMRR'ed (there's a test script built-in somewhere in Hyper-V to figure out what is preventing passthrough) - they might not match my servers (which are rack mount servers). I think dmesg logs such ranges too on Linux.

nonolimits commented 1 year ago

Thanks - I gave up with Hyper-V in the end and switched to Proxmox. Patched the Linux kernel via https://github.com/Aterfax/relax-intel-rmrr so it really truly totally ignored RMRR. Proxmox now passes through fine.