ReBarUEFI: Not compatible with Ivy Bridge E/EP boards

Hi @xCuri0,

First of all - great effort. Stumbled upon your post on reddit.

I glanced over the source code before building just to check if there’s nothing super malicious there. Frankly, I don’t have enough EFI knowledge to judge but the C code looked sane, so I went on to build the module all singing and dancing based on the promise of Ivy Bridge + readied myself for a treat.
I’ve built the ffs (you gotta love that extension) and when I fired up the MMTool it struck me that on X79/C602 chipset BIOSes - that is Ivy Bridge E/EP (high end 4th gen i7s and Xeons v1/v2) - there’s no PciHostBridge. There’s PciRootBridge.

Now, seeing that you’ve got hooks to PciHostBridge I decided not to flash it as I guess it would be pointless to try in this instance.

Effectively I’m trying to enable Nvidia Tesla M40 24GB on a Supermicro X9 server motherboard - I have a couple of those boards and I’m lead to believe some support ReBAR and some not. Some basically were certified to run with 24GB K80s, so there’s no other option for such a memory hog to run without ReBAR. From newer systems - I’m certain that M40 requires ReBAR/CSM disabled/full blown UEFI to work. On this particular X9DRI-F (that is not GPGPU enabled), the card is detected but lspci -vvv shows all memory regions as disabled, nvidia kernel modules fail to load and all of that sadness associated with it.

On top of that I also have a couple of old X79 boards and double checked their BIOSes and it’s a similar story to C602 server chipset. Here’s the screenshot, it presents the modules in GA-X79-UD3, Supermicro X9DRI-F and for comparison, the BIOS for the board you mentioned in your reddit post GA-B75M.

C602X79

BTW. This supermicro board has a MMIOH of up to 1T, only mentioning it because on reddit I think you mentioned Ivy goes only up to 64G, I’m sure you meant consumer boards; But just mentioning this for completeness. image

All in all, I think it would be fair to change the description in this repo to ivy bridge instead of ivy bridge+. The + may suggest anything above Ivy Bridge, but E/EP are above and there’s this clash in the module names.

I’d love to provide you with a patch but my EFI knowledge doesn’t go that deep unfortunately.

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Reactions: 1
  • Comments: 16 (8 by maintainers)

Commits related to this issue

Most upvoted comments

Would you care to share your lspci | grep -I bridge when you got a second?

@rliwoch

00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (rev 09)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
00:1c.0 PCI bridge: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 1 (rev c4)
00:1c.4 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 5 (rev c4)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a4)
00:1f.0 ISA bridge: Intel Corporation B75 Express Chipset LPC Controller (rev 04)

@xCuri0

Any specific reason you’re recommending UEFITool

Not any reason besides it working for me (didn’t try MMTool), open source and apparently MMTool sometimes causes issues according to some people.