** Hackintosh ** Tips to make a bare metal MacOS


Leoyzen

Recommended Posts

@Leoyzen

13 hours ago, Leoyzen said:

1. What is your Lilu/WEG version? Don't use clover updater, manually download from github and place them into kext/others.

I freshly downloaded Lilu 1.4.2 and WhateverGreen 1.3.7 from their releases pages on Github and installed to kext/others. This step on it's own did not fix anything, metal support is still not showing up at all. 

 

13 hours ago, Leoyzen said:

2. What is the BIOS version of your graphic?Download from techpower and add it to your xml.

I updated the VM to use the specific vbios for my card. Specifically, the most recently compiled one listed here on techpowerup. This change also appears to have made no difference, metal support is still not showing up. 

 

13 hours ago, Leoyzen said:

3. Then check your Lilu/WEG is loaded(you can get the log from hackintool)

Before completing the previous steps the Lilu Log in Hackintool was completely blank. I'm going to guess that means it was not loaded. After completing them, the Lilu Log still shows up blank. It would appear that it is not loading at all, or at least not functioning? Under System log, kernel process, and filtering for Lilu, I got the following line: 

2020-03-05 09:53:41.25800-0800 localhost kernel[0]: Security policy loaded: Lilu Kernel Extention 1.4.2 (Lilu)

So it does seem like it's at least loading at boot? But the Lilu log is still empty, so it seems like its not functioning. Unless I'm misunderstanding something, it seems very odd. Thanks for your help thus far- any more advice? 

 

Edit: Realized I was running an outdated Clover version. Updated from 5097 to 5104 and nothing changed. Probably not relevant, but just in case. 

Edited by swallace
Typo
Link to comment

@Leoyzen I think I've made some progress on this issue. I found someone on The Passthrough Post's  discord channel who seems to have had a very similar issue with passing through their Pulse RX580 when using an AMD 3700 Host CPU (I'm using a 3950X). I've attached two images with his posts screenshotted for context, but the gist of it is he gets a very specific error about the Radeon driver in his system kernel log which I was also able to find in my install. He said he had some luck fixing it by adding the +fma Qemu cpu flag. Have yet to look into whether that could be helpful here (or try it for that matter) but thought it was worth passing the info along. Below are the error lines from my log that are the same as what he references. 

 

2020-03-06 19:15:15.608472-0800  localhost kernel[0]: (AMDRadeonX4000HWLibs) <AMDRadeonX4000HWLibs`AmdCailServices::initializeAdapter()> AMD Error:

2020-03-06 19:15:15.608474-0800  localhost kernel[0]: (AMDRadeonX4000HWLibs) <AMDRadeonX4000HWLibs`AmdCailServices::initializeAdapter()>   CAIL_ASICSetup() failed (CAILRESULT=1)

2020-03-06 19:15:15.608474-0800  localhost kernel[0]: (AMDRadeonX4000HWLibs) <AMDRadeonX4000HWLibs`AmdCailServices::initialize(_CailInitialize*)> AMD Error:

2020-03-06 19:15:15.608475-0800  localhost kernel[0]: (AMDRadeonX4000HWLibs) <AMDRadeonX4000HWLibs`AmdCailServices::initialize(_CailInitialize*)> initializeAdapter() failed!

 

image1.jpg

image0.jpg

Link to comment
 <qemu:arg value='-cpu'/>
    <qemu:arg value='IvyBridge,vendor=GenuineIntel,+hypervisor,-erms,kvm=on,+topoext,+svm,+invtsc,+fma,+mmxext,+avx,+avx2,+aes,+xsave,+xsaveopt,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2,+arat,+abm,+3dnowprefetch,+adx,+clflushopt,+cr8legacy,+fsgsbase,+fxsr_opt,+misalignsse,+movbe,+osvw,+pclmuldq,+pdpe1gb,+rdrand,+rdseed,+rdtscp,+sha-ni,+smap,+smep,+vme,+xgetbv1,+xsavec,+perfctr-core'/>

Try that instead of what you have in your xml. Make sure the topology line is gone or it will not boot though. I'm using opencore 0.5.6 right now but it should work with clover.

  • Thanks 1
Link to comment

@david279 Doing that now. Should the second line be indented as it is in the XML you posted? I assume so, but copy/paste does not capture that. Any idea if it should be tab, 2 spaces, or if it matters? I have whitespace nightmares from python and YAML. 

 

Edit: seems like not actually, if I try to save it with the the 2 spaces added, it undoes my indentation when I hit save. Trying now.

Edited by swallace
Link to comment

@david279 I have a quick question about setting up the VM the way you mentioned but OMG that switch. Totally forgot it existed. Any idea how to identify what it's currently set to? No indicator on the device itself and can't find anything in the manual. May just flip it and see if it works. 

 

Edit: Found it. My card is setup with the switch down, gaming mode, by default. Bummer (but also good, because if I had wasted this many hours just needing to flip a switch, I'd have been pretty pissed)

image.png

Edited by swallace
Link to comment

Yes don't use macinbox. You will still need to use those custom args at the bottom of your current VM, and set the VM to use q35 machine type also edit the xml to use the e1000 network adapter instead of the virtio one. But everything else is setting up a VM like usual.

Link to comment

@david279 Makes sense. I'm going to start one from scratch to try opencore with, but for testing in the meantime, it would be expected that if I just set the existing VM to use stock OVMF, it would stop working, right? If it was made with macinabox initially, then the VM needs that custom version? Or is it only by using apfs.efi and opencore that stock OVMF works, like Leoyzen said eariler?

Edited by swallace
Link to comment

@Leoyzen @david279 Just wanted to throw out there that I found someone else with this same issue on the Passthrough Post's discord channel. Mossman, whose messages I posted in screenshots eariler. He has experienced the same issue with the exact same GPU on a Ryzen 3700 Host, also with an ASRock motherboard. He also mentioned that he was able to successfully get pass though working in macOS High Sierra, but not in Mojave or Catalina. I'm going to setup a high sierra VM to verify that, and also still try setting up a VM from scratch using opencore, but the whole problem just seems to get weirder and weirder.

 

He also reports that, if he starts up the High Sierra VM with functioning Hardware acceleration, then shuts it down, and starts up the Mojave or Catalina VM, that hardware acceleration will magically start working. But, if he stops that VM, and starts proceeds to start a Windows VM that utilizes all the same hardware for passthrough, it will crash the whole host. Weirder still. 

 

I dont even know where to begin debugging it anymore. If anyone has any input on how to pursue figuring this out, I'm all ears. Thanks! (Temporarily though, it seems like running a low resource high sierra VM, booting into that, shutting down, and then starting up the sierra VM could be a good middle ground solution. Smh)

Edited by swallace
Link to comment
On 3/7/2020 at 5:52 AM, Leoyzen said:

@swallaceIt seems more related to vBIOS issues.Can you just download difference version vBIOS and just put it in your xml to see if it works?(do not flash to your graphics)

@Leoyzen I tried every vbios listed as compatible for my card on techpowerup, and it nothing changed. Considering loading into Windows and extracting the vbios myself with GPUZ and see if that changes anything. Here's a list of all the vbios I used: https://www.techpowerup.com/vgabios/?did=1002-67DF-1DA2-E353-E7

Edited by swallace
Link to comment

More on my broken hardware acceleration saga: I tried to verify that hardware acceleration does work with this set of hardware if the VM is based in High Sierra, and not Mojave or Catalina. In short, I was not able to do so. I've described the behavior of mossman's system (from the passthrough post's discord) in earlier posts, but mine behaves differently in that as soon as GPU passthrough is configured for a High Sierra based VM, the OS will no longer load correctly. The GPU outputs a picture, clover loads, and boots into macOS, but the macOS bootup progress bar freezes at about 1/3 progress and the VM automatically pauses itself. It gets stuck here indefinitely, until I force stop the VM, and the behavior repeats if I start it up again. I'm confident it is not my configuration because my Catalina VM is still functioning fine and their configurations are effectively identical, just with separate config folders. 

 

With all that in mind, it seems like something about the way macOS High Sierra interacts with my particular GPU somehow halts the OS's bootup process. Bummer that mossman's experience was not repeatable for me. Below I've posted the errors I get in the VM log during the High Sierra OS loading process. 

 

2020-03-09T03:39:04.813440Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]

2020-03-09T03:39:04.814854Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]

2020-03-09T03:39:04.815595Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]

2020-03-09T03:39:04.816542Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]

2020-03-09T03:39:04.817397Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]

2020-03-09T03:39:04.818563Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]

2020-03-09T03:39:06.945078Z qemu-system-x86_64: vfio_err_notifier_handler(0000:0e:00.1) Unrecoverable error detected. Please collect any data possible and then kill the guest

2020-03-09T03:39:06.945173Z qemu-system-x86_64: vfio_err_notifier_handler(0000:0e:00.0) Unrecoverable error detected. Please collect any data possible and then kill the guest

2020-03-09T03:39:33.088829Z qemu-system-x86_64: vfio_err_notifier_handler(0000:0e:00.0) Unrecoverable error detected. Please collect any data possible and then kill the guest

2020-03-09T03:39:33.095083Z qemu-system-x86_64: vfio_err_notifier_handler(0000:0e:00.1) Unrecoverable error detected. Please collect any data possible and then kill the guest

I attempted to troubleshoot this process a bit, and stumbled upon some old posts from @Leoyzen regarding the second error. Specifically, this post: 

Unfortunately, I am not able able to install my RX580 into slot 1 (motherboard heat shield causes clearance issues with the card) and pci=noaer did not change anything for me. 

 

If anyone has any ideas about the root of the hardware acceleration issue based on everything up to this point, I'm all ears. Also would appreciate any input about getting High Sierra to load (possible I'm just being stupid and missing something) but I'm thinking the two issues may be related at this point as, again, the Catalina VM is configured similarly and the OS loads fine, just with no hardware acceleration. 

Link to comment
  • 2 weeks later...

hello i have a 5700xt that i would like to pass through to Mac Catalina i have setup macinabox and the vnc works but when i tried to pass through my gfx card it gets to the apple logo the loading bar gets halfway and stops, i have dl'd WG/LILU latest versions and added them to the K/O dir, do i have to add some other boot args to get it working/loading the 5700xt

if i change the id to iMacPro1,1 I would also have to add AppleMCEReporterDisabler.kext if i have read this sub correct i also came across an opencore page that says to add agdpmod=pikera for a navi 10 cards is this added in the Clover Configurator somewhere?

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.