TheRacerMaster Posted October 9, 2017 Share Posted October 9, 2017 It's effectively like loading a kext from the terminal, which are checked when linked just as when prelinked. Is this fully accurate? I've been booting with SIP enabled for a while now (on another machine), and haven't had any issues with kext injection working. FakeSMC/etc are still loading (with kext injection and with SIP enabled). 3 Link to comment Share on other sites More sharing options...
Ramalama Posted October 10, 2017 Share Posted October 10, 2017 Hi guys, can we fix this: https://www.youtube.com/watch?v=tf4HkjaiOi8 look at second 2... there are messages... Happens on all my Hackintoshes with apfs... Im hoping its not already answered :-) Cheers :-) Link to comment Share on other sites More sharing options...
Badruzeus Posted October 10, 2017 Share Posted October 10, 2017 Hello, after installed 10.13.1 Beta 2 (17B35a) with APFS I always get this messages on verbose logs: 1. "considerRebuildOfPrelinkedKernel org.netkas.FakeSMC triggered rebuild (I placed FakeSMC v3.5.0 on /kexts/10.13 dir) 2. "kextd stall(0), (60s): 'NVDAHal', 'NVDAgl', 'NVDA,Display-A' (I patched my DSDT - GFX0 using this) 3. (this one appears before verbose; I'm not sure related to Clover or not, sorry): RegisterRestartDataProtocol called. 0x12345678 RestartData protocol installed successfully. ++++++++++++++++++++++++++++++++++++++++++++++ FYi, I'm using Legacy r4244 (with @cecekpawon patch). Thanks. bootlog.log_a43sj_r4244.txt.zip EFI_r4244_boot7.zip Link to comment Share on other sites More sharing options...
SavageAUS Posted October 10, 2017 Share Posted October 10, 2017 Hi guys, can we fix this: https://www.youtube.com/watch?v=tf4HkjaiOi8 look at second 2... there are messages... Happens on all my Hackintoshes with apfs... Im hoping its not already answered :-) Cheers :-) It's just a debug log of such for apfs. There is a modded apfs floating around from cecekpawon that gets rid of / reduces the lines that you see. Sent from my SM-G930F using Tapatalk 1 Link to comment Share on other sites More sharing options...
Allan Posted October 10, 2017 Share Posted October 10, 2017 Hi Allan, good morning I have a rig with dual booting Windows 10 and macOS (El Cap, Sierra, High Sierra) and I don't use NTFS.efi, So I guess having it is not mandatory. I never used it. Thank you buddy. 1 Link to comment Share on other sites More sharing options...
apianti Posted October 10, 2017 Share Posted October 10, 2017 tbh, that's a bug, isn't it? Checked the Memory Maps of both? Maybe restoring the kernel to its original position on entry is what screws it up? They just behave differently, but AptioFix breaking NVRAM is why AptioFix2 exists. AptioFix2 however is not as reliable for some reason... The memory maps are similar but obviously different, I've done a ton of debugging using both those drivers, I can't figure out why... And yes I think probably the relocation is what messes it up, or what I finally resigned to believe.... Is this fully accurate? I've been booting with SIP enabled for a while now (on another machine), and haven't had any issues with kext injection working. FakeSMC/etc are still loading (with kext injection and with SIP enabled). I'm pretty sure, I cannot boot if I have a value of 0x0, the lowest value I can boot with is 0x3. I know that it checks the kext just like loading it because if you don't have a prerequisite kext loaded it drops the kext without attempting to do anything, like initialize it or load the other kexts.... I'm willing to admit that's not right if someone sets 0x0, reboots twice and still boots while injecting FakeSMC. You can't inject it and have it installed in /L/E as the already installed prelinked version will be used and the injected dropped. EDIT: You know I'm not sure I have ever actually tried just 0x1.... Thank you buddy. Windows boots from the FAT32 EFI partition, there is no need to read the NTFS volume. 2 Link to comment Share on other sites More sharing options...
cecekpawon Posted October 10, 2017 Share Posted October 10, 2017 Without proper knowledge, I have done some test regarding SIP while ago, within these 2 ways:(1) With NVRAM "csr-active-config" already used by Clover for long time.(2) To set bootargs->csrActiveConfig when boot.efi loaded (like macosxbootloader).They are both work/result differently. We can test it with CSR_ALLOW_APPLE_INTERNAL & check its value after reaching the desktop. In contrary, boot.efi seems preferred to read NVRAM "boot-args" instead of LoadOptions. So storing LoadOptions to loaded boot.efi get ignored because its too late? 2 Link to comment Share on other sites More sharing options...
Slice Posted October 10, 2017 Share Posted October 10, 2017 Without proper knowledge, I have done some test regarding SIP while ago, within these 2 ways: (1) With NVRAM "csr-active-config" already used by Clover for long time. (2) To set bootargs->csrActiveConfig when boot.efi loaded (like macosxbootloader). They are both work/result differently. We can test it with CSR_ALLOW_APPLE_INTERNAL & check its value after reaching the desktop. In contrary, boot.efi seems preferred to read NVRAM "boot-args" instead of LoadOptions. So storing LoadOptions to loaded boot.efi get ignored because its too late? Some years ago other clover developers excluded boot-args from NVRAM because of some issues. I think the question should be revised. 1 Link to comment Share on other sites More sharing options...
WinstonAce Posted October 10, 2017 Share Posted October 10, 2017 Yeah, don't change SIP restrictions. Change it back to 0x67. . What would be the problem with keeping SIP enabled?It's seems that everything working fine and you don't need NVWebDriverLibValFix for nvidia drivers. Sent from my ONEPLUS A5000 using Tapatalk Link to comment Share on other sites More sharing options...
apianti Posted October 10, 2017 Share Posted October 10, 2017 What would be the problem with keeping SIP enabled? It's seems that everything working fine and you don't need NVWebDriverLibValFix for nvidia drivers. Sent from my ONEPLUS A5000 using Tapatalk He couldn't boot anymore....... Link to comment Share on other sites More sharing options...
WinstonAce Posted October 10, 2017 Share Posted October 10, 2017 Well, any real reason? Sent from my ONEPLUS A5000 using Tapatalk Link to comment Share on other sites More sharing options...
Cyberdevs Posted October 10, 2017 Share Posted October 10, 2017 Hi WinstonAce I was curious about your post..and in my system I can't boot with system parameters set to 0x0 for both I discovered a way with some try I have memory allocation error and I can solve this with OsxAptioFix2Drv-free2000.efi in drivers64uefi adding this deleting the old one I was using from Sierra old installation I can boot without memory allocation error and with 0x0 for system parameters I can also enter recovery partition and boot from there.. before it was impossible Thank you for some inspiration! which OsxAptioFixDrv do you use? If I use OsxAptioFix2Drv I can set 0x0 and system can boot normally (IvyBridge) but it won't work on OsxAptioFixDrv. Link to comment Share on other sites More sharing options...
WinstonAce Posted October 10, 2017 Share Posted October 10, 2017 It works with OsxAptioFix2Drv for me, but not with OsxAptioFixDrv. Sent from my ONEPLUS A5000 using Tapatalk Link to comment Share on other sites More sharing options...
Cyberdevs Posted October 10, 2017 Share Posted October 10, 2017 this in attachment Sorry what I meant is beside this OsxAptioFix2-free2000.efi. OsxAptioFixDrv.efi in combination with CsrActiveConfig=0x0 will end up with memory allocation errors. It works with OsxAptioFix2Drv for me, but not with OsxAptioFixDrv. Exactly, this is how @apianti explained it here which made things much more clear for me. Link to comment Share on other sites More sharing options...
apianti Posted October 10, 2017 Share Posted October 10, 2017 OMG. Do not use that driver. That driver is not for production use, it was only meant as a diagnostic tool to determine why the memory allocation was failing, it literally frees like all your firmware's allocations.... But, X99 is terrible so you probably have no choice... 0x28?? That's unrestricted dtrace and kernel debugger... That doesn't really make sense unless the problem is with dtrace as that's the only one that's disabled in both those values.... 4 Link to comment Share on other sites More sharing options...
apianti Posted October 10, 2017 Share Posted October 10, 2017 I'm not sure, why is it failing to boot recovery? I don't understand what change to VESA mode means. If the driver doesn't work, then you aren't going to have graphics because the vendor/device ids are used to load that driver... Link to comment Share on other sites More sharing options...
apianti Posted October 10, 2017 Share Posted October 10, 2017 Have you tried just single user mode? No need for graphics for that. EDIT: Also, why is it not booting recovery? Link to comment Share on other sites More sharing options...
fantomas Posted October 10, 2017 Share Posted October 10, 2017 RegisterRestartDataProtocol called. 0x12345678 RestartData protocol installed successfully. FYi, I'm using Legacy r4244 (with @cecekpawon patch). Thanks. I also have this message but only since I installed 10.13.1 beta 2 - I'm using Clover r4207 so it is maybe something related to macos and not to Clover? 1 Link to comment Share on other sites More sharing options...
Slice Posted October 10, 2017 Share Posted October 10, 2017 Stop at this point means 1. Absent needed kernel patches, for example KernelPM=YES. 2. Present unneeded kernel patches, if you took some "universal" config.plist. Link to comment Share on other sites More sharing options...
apianti Posted October 10, 2017 Share Posted October 10, 2017 @fabiosun, Once you get to the prompt you are the root user, type this to mount the root filesystem read/write: fsck –fy mount –uw / Then you can run any commands like you would in the terminal, such as removing or fixing kexts. You can't use things like diskutil though, and you are already root so don't use sudo. Link to comment Share on other sites More sharing options...
Sherlocks Posted October 11, 2017 Share Posted October 11, 2017 after kext inject management, this problem "++++++++++++++++++++" was fixed on clover r4244. Slice, thank you so much. Link to comment Share on other sites More sharing options...
cecekpawon Posted October 11, 2017 Share Posted October 11, 2017 I cant see "kext inject management" bug fixes in (specific to) r4244, if so your problem could be randomly happen.. again 2 Link to comment Share on other sites More sharing options...
Sherlocks Posted October 11, 2017 Share Posted October 11, 2017 I cant see "kext inject management" bug fixes in (specific to) r4244, if so your problem could be randomly happen.. again i just can't see "++++++++++++++++++" with failed boot on r4244. this problem happen and i can't use kext inject management on 4243. because always failed after kext inject management. i'm not sure other kext inject management issue. i tested basic feature. my test 1. only used 10.13 folder with kexts. emtpy Others folder. injectkexts=detect. not tested usb installer. only installed HS disk. 2. in gui, select 10.13 installed HS disk with space bar, go kext inject management, enter 10.13, check kexts list, exit 10.13, enter other folder, check empty list, exit other folder, exit kext inject management. then boot without -v. my test is failed boot with "++++++++++++++++++" line and apple logo on r4243 my test passed on r4244 sorry for my bad english Link to comment Share on other sites More sharing options...
cecekpawon Posted October 11, 2017 Share Posted October 11, 2017 In contrary, boot.efi seems preferred to read NVRAM "boot-args" instead of LoadOptions. So storing LoadOptions to loaded boot.efi get ignored because its too late? Just guessing: (1) You have "-v" NVRAM "boot-args". (2) Switch off "-v" from GUI. (3) Boot.efi will read your NVRAM "boot-args" with "-v" (still), but Clover already switching to graphic mode. So resulting in black screen. 3 Link to comment Share on other sites More sharing options...
Philip Petev Posted October 11, 2017 Share Posted October 11, 2017 @Slice: how about using the XCLANG compiler profile? It's present in tools_def.txt as a profile for building edk2 for OS X/macOS. AFAIK, clang/llvm can be found in two places: 1. /usr/bin 2. /Library/Developer/CommandLineTools/usr/bin The second path requires the Xcode command line tools to be installed with xcode-select --install, but think about it, that's more than enough for the ordinary user and no 7GB Xcode download would be needed. I wonder why nobody has seen that part of that file yet, except maybe Micky1979, that's his idea. In order the XCLANG profile to be used, the following paths should be changed: # # Change to the location clang was built # #DEFINE CLANG_BIN = /usr/bin/ #DEFINE CLANG_BIN = /opt/local/libexec/llvm-3.6/bin/ DEFINE LLVM_BIN = ENV(HOME)/src/llvm-build/Release/bin/ DEFINE CLANG_BIN = ENV(HOME)/src/llvm-build/Release/bin/ to something like # clang and llvm are in the clt directory DEFINE LLVM_BIN = /Library/Developer/CommandLineTools/usr/bin/ DEFINE CLANG_BIN = /Library/Developer/CommandLineTools/usr/bin/ or even configurable with variable: # clang and llvm can be anywhere, just set the env var DEFINE LLVM_BIN = ENV(LLVM_PREFIX)/ DEFINE CLANG_BIN = ENV(CLANG_PREFIX)/ Link to comment Share on other sites More sharing options...
Recommended Posts