Jump to content
vit9696

AptioMemoryFix

604 posts in this topic

Recommended Posts

Advertisement

            #890            

 

try to see if you find something useful in EFI I have attached in thread above

 

Thanks for pointing me to your EFI!
 
Almost same as I have. 
 
Tried to use your whole EFI (only had to add NVMe support) and I was able to pass the ******* screen but then on load, it stucks on "HID: Legacy shim 2" and then something like kernel panic on "Still waiting for root device".
 
I am sure that this "progress" was caused by the older version of Clover because with the newer version I am not able to pass the ***** screen by anyway. My clover version is now Clover_v2.4k_r4114 and for example, Clover_v2.4k_r4220 is already bad for me.
 
It is weird, don't know how to debug it or which direction I should go. I can't even update to newer version of macOS (10.13 17A365+) because it requires newer clover I think because otherwise, it has the "Still waiting for root device" issue.
 
Added also my EFI for example on macOS 10.13 17A365 and clover 4114 it works perfectly and it is very stable.

EFI.zip

Share this post


Link to post
Share on other sites

looks like your having issues either with usb or the nvme drive detection if your getting still waiting for root error. have you tried 10.13.x it should have native nvme support. also try different USB ports if the error is coming from not finding the usb installer. if the error is from booting your hdd then look into nvme issues.

Share this post


Link to post
Share on other sites

@Hoeman

Tested all ports with external hd

All is fine

No tested with external gpu or other things

 

To be perfectly clear, there are only 2 ports (I'm excluding the mini-DP in) for external devices, the USB-C THUNDERBOLT 3 port and the USB 3.1 GEN 2 TYPE A port. Are you saying that when you plug a typical USB TYPE A device into the USB 3.1 GEN 2 TYPE A port, it is mounted and detected?

Share this post


Link to post
Share on other sites

R15 Works on my Lenovo Yoga 720 13" but only if Intel SGX and Intel Platform Trust are disabled in the bios.

It's not a huge deal but it kills the fingerprint reader under Windows which I gotta say is really handy.

 

Looking at the memory map it reduces the ~464MB of memory at 0x0000000000100000 to ~288MB which is well under the 384MB it wants.

The next largest free block is at 0x0000000100000000 and is ~7200MB.

 

Is there any way around this or is that just the way it's going to be?

 

Platform Trust and SGX disabled: https://pastebin.com/a0dWY3SX

Platform Trust and SGX enabled: https://pastebin.com/dWaSyviv

 

Thank you for all your hard work :)

Share this post


Link to post
Share on other sites

Hi, you may try slide=0, I guess. I cannot promise but 288 MB may be enough for macOS to boot. If it works, perhaps, I should change the code to pick a slide for the largest chunk of memory after it fails to find any (definitely) working one after all.

Share this post


Link to post
Share on other sites

I remember it just crashing to the system boot menu with slide=0, is it checking the size of the memory region being 384MB and bailing out if it's not?

Share this post


Link to post
Share on other sites

Then you are most likely out of luck, I am afraid. The logic was not to pass slide values if no valid one was found. So it was entirely up to macOS which slide would be chosen in this case.

I modified it to fallback to the slide with the largest memory chunk available in the latest commit. You may try, but from your report I guess it won't help unfortunately.
https://github.com/vit9696/AptioFixPkg/commit/76ae0a9380e25cc7fedbfc8cd2d9cd9bf5e86665

Share this post


Link to post
Share on other sites

Thank you for the patch, it unfortunately caused a reboot during kernel patching with the reduced memmap but maybe it will work for someone else.

:)

 

Still working with platform trust and sgx disabled.

Share this post


Link to post
Share on other sites

Well, I hope it works for someone too. Now that you said reduced memory map, is there any chance it does not fit here:

https://github.com/vit9696/AptioFixPkg/blob/master/Platform/AptioMemoryFix/BootFixes.c#L46

You could try increasing to 128, although so far it was not necessary to anyone.

 

I added the notes regarding TB, SGX and stuff to the readme. In case anyone has the same issue as you did, the actions to try will at least be known.

Share this post


Link to post
Share on other sites

I've been using the docker setup provided by Pavo earlier in the thread which is actually the first time I've ever used it so I'll have to look into how to work it into that somehow.

Share this post


Link to post
Share on other sites

With Gigabyte Z370N Wifi mini-ITX motherboard, none of the 3 versions of AptIOfix work when used with latest F3 Bios. However, all of them work on F1 bios. It may have something to do with changed memory allocation following Spectre and Meltdown microcode updates.

Share this post


Link to post
Share on other sites

I'm getting kernel panics with the NVIDIA Web Driver and AptioMemoryFix. I'm not at my machine at the moment, but the panics were related to the driver trying to read/write NVRAM. Reverting to OSXAptioFix2 resolves the issue.

I'm on a Gigabyte Z97M-D3H motherboard with an i5-4670K.

Share this post


Link to post
Share on other sites
23 minutes ago, redflame said:

I'm getting kernel panics with the NVIDIA Web Driver and AptioMemoryFix. I'm not at my machine at the moment, but the panics were related to the driver trying to read/write NVRAM. Reverting to OSXAptioFix2 resolves the issue.

I'm on a Gigabyte Z97M-D3H motherboard with an i5-4670K.

This may be of note as well, but I have integrated HD4600 graphics enabled with a connectorless ig-platform-id. Reading through the thread, I see there are issues with AptioMemoryFix and IG being enabled with a dedicated GPU.

Share this post


Link to post
Share on other sites
On 4/10/2018 at 11:18 PM, ellaosx said:

what is the latest revision?

R16 is what i have

 

R16 is latest as of today:


NUC6i7KYK:aptiofix.git rehabman$ git pull

Already up to date.

NUC6i7KYK:aptiofix.git rehabman$ grep REVISION Include/Protocol/AptioMemoryFixProtocol.h 

#define APTIOMEMORYFIX_PROTOCOL_REVISION  16

Share this post


Link to post
Share on other sites

Using a Gigabyte H370 Rev 1 here.

If I change DVMT pre alloc from 64MB to 128MB, then Aptiomemoryfix cannot allocate enough pages.

I give it a custom slide value for an areas in my memmap big enough with slide=157 - but it simply ignores that slide value and still complains.

 

I'm running the version that comes with clover 4449

Share this post


Link to post
Share on other sites

I have a ASRock Z77-Extreme4 and setting the DVMT to more than 96MB does not work for any OS, and setting it higher than 128MB does not even work for the firmware, I have to hardware reset the CMOS/NVRAM.  Also if the auto slide selector does not give you a valid slide, setting the slide manually is probably not going to do anything different... It's far more likely that your memory is getting too fragmented by memory allocations. How much free memory under 4GB do you actually have if you add it all up?

Share this post


Link to post
Share on other sites
17 hours ago, bronxteck said:

Gymnae did you follow the readme especially the  third point about "Above 4G Decoding"

 

 

Yes, I did. I also tried with that option turned on in BIOS and then the system won't boot, it stalls after initializing the dGPU or iGPU (I tried both) so I turned it off again.

 

18 hours ago, apianti said:

I have a ASRock Z77-Extreme4 and setting the DVMT to more than 96MB does not work for any OS, and setting it higher than 128MB does not even work for the firmware, I have to hardware reset the CMOS/NVRAM.  Also if the auto slide selector does not give you a valid slide, setting the slide manually is probably not going to do anything different... It's far more likely that your memory is getting too fragmented by memory allocations. How much free memory under 4GB do you actually have if you add it all up?

If I can believe the memmap, then it should be more pages than it tries to allocate. But having said that, am I correct that memmap shows me memory below 4GB if above 4G decoding is turned off?

Share this post


Link to post
Share on other sites

Hello,

 

Firstly, it is not AptioMemoryFix allocating pages but boot.efi.

 

Secondly, slide argument is not ignored, it is just the value that is improper. You may set 0 here and rebuild AptioMemoryFix to see the actually set slide in ioreg in IODevice: https://github.com/vit9696/AptioFixPkg/blob/master/Platform/AptioMemoryFix/Config.h#L52

 

Thirdly, the memory map UEFI Shell command does not show the memory map as it changes over boot.efi loading process. It allocates quite a lot, and even AptioMemoryFix cannot catch it all. To get a more reliable memory map you could try using -aptiodump boot argument after setting 1 here: https://github.com/vit9696/AptioFixPkg/blob/master/Platform/AptioMemoryFix/Config.h#L76

But I would say even that is not perfect.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×