RehabMan Posted September 11, 2017 Share Posted September 11, 2017 One weird behavior with Clover is that Clover try to create misc folder(EFI\CLOVER\misc) per boot, there's generally two drawback of this behavior: Perform I/O especially write per boot(slow, especially on HDD) Undesirable if user remove misc intentionally but Clover persists creating it every time More reasonable behavior should be egSave do a simple check to see if the directory exist or not(we may check each directories existence iteratively/recursively, but seems a bit slow?) egSave has been improved in r4205, and misc will not be created each boot. syscl Regarding this commit 4205. This code in image.c is wrong: + CHAR16 DirName[256]; ... + FreePool(DirName); 3 Link to comment Share on other sites More sharing options...
Slice Posted September 11, 2017 Share Posted September 11, 2017 Regarding this commit 4205. This code in image.c is wrong: + CHAR16 DirName[256]; ... + FreePool(DirName); Thanks for notice. Corrected in 4207. 3 Link to comment Share on other sites More sharing options...
Sherlocks Posted September 12, 2017 Share Posted September 12, 2017 i found one about imac17,1 smc rev when install fresh hs dp9. installer makes /Volumes/EFI/EFI/APPLE/UPDATERS/MULTIUPDATER/Mac-B809C3757DA9BB8D.epm /Volumes/EFI/EFI/APPLE/UPDATERS/MULTIUPDATER/Mac-B809C3757DA9BB8D.smc to update REV : 02 34 0f 00 00 02 clover used 2.33f10. as result, mac installer always makes files for smc update to match board-id and latest smc rev key. Mac-B809C3757DA9BB8D.smc.zip 2 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 12, 2017 Share Posted September 12, 2017 i found one about imac17,1 smc rev when install fresh hs dp9. installer makes /Volumes/EFI/EFI/APPLE/UPDATERS/MULTIUPDATER/Mac-B809C3757DA9BB8D.epm /Volumes/EFI/EFI/APPLE/UPDATERS/MULTIUPDATER/Mac-B809C3757DA9BB8D.smc to update REV : 02 34 0f 00 00 02 clover used 2.33f10. as result, mac installer always makes files for smc update to match board-id and latest smc rev key. 스크린샷 2017-09-12 오후 10.54.34.png Only one file here for Imac13,2 SMBIOS: Mac-F60DEB81FF30ACF6.epm? Link to comment Share on other sites More sharing options...
Sherlocks Posted September 12, 2017 Share Posted September 12, 2017 Only one file here for Imac13,2 SMBIOS: Mac-F60DEB81FF30ACF6.epm?Seems most of system has epm file. There is epm file on my all system. I dont know role of epm file. But there is no smc file except imac17,1 on my system. I tested. Also when install HS with imac17,1 1. Boot usb installer, installer copy files. 2. 2nd boot, shown that remains 12 minutes, then suddenly reboot, 3nd boot, install HS. Maybe 2nd boot, seems update smc. 나의 LG-F800S 의 Tapatalk에서 보냄 1 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 13, 2017 Share Posted September 13, 2017 Seems most of system has epm file. There is epm file on my all system. I dont know role of epm file. But there is no smc file except imac17,1 on my system. I tested. Also when install HS with imac17,1 1. Boot usb installer, installer copy files. 2. 2nd boot, shown that remains 12 minutes, then suddenly reboot, 3nd boot, install HS. Maybe 2nd boot, seems update smc. 나의 LG-F800S 의 Tapatalk에서 보냄 Same process here for Imac13,2 et macpro6,1 SMBIOS. On french mac4ever site: "Each migration / installation will be machine specific and will install appropriate firmware." https://www.mac4ever.com/actu/124903_macos-high-sierra-une-installation-specifique-a-votre-mac-ce-qui-pose-quelques-soucis-maj 1 Link to comment Share on other sites More sharing options...
Sherlocks Posted September 13, 2017 Share Posted September 13, 2017 Same process here for Imac13,2 et macpro6,1 SMBIOS. On french mac4ever site: "Each migration / installation will be machine specific and will install appropriate firmware." https://www.mac4ever.com/actu/124903_macos-high-sierra-une-installation-specifique-a-votre-mac-ce-qui-pose-quelques-soucis-majCan you upload smc file? 나의 LG-F800S 의 Tapatalk에서 보냄 1 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 13, 2017 Share Posted September 13, 2017 Can you upload smc file? 나의 LG-F800S 의 Tapatalk에서 보냄 I only have epm files in EFI/Apple for each SMBIOS. Where I can find SMC file? Link to comment Share on other sites More sharing options...
Sherlocks Posted September 13, 2017 Share Posted September 13, 2017 I only have epm files in EFI/Apple for each SMBIOS. Where I can find SMC file?/Volumes/EFI/EFI/APPLE/UPDATERS/MULTIUPDATER/Mac-your imac13,2 board-id.smc 나의 LG-F800S 의 Tapatalk에서 보냄 1 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 13, 2017 Share Posted September 13, 2017 /Volumes/EFI/EFI/APPLE/UPDATERS/MULTIUPDATER/Mac-your imac13,2 board-id.smc 나의 LG-F800S 의 Tapatalk에서 보냄 As I say before post # 2470: "Only one file here for Imac13,2 SMBIOS: Mac-F60DEB81FF30ACF6.epm." And only one file for macpro6,1 SMBIOS: Mac-F60DEB81FF30ACF6.epm. Curiously it's same epm file. But no SMC files? I've two HDD for my system: one with Imac13,2 and other with macpro6,1 Update: for Imac13,2 SMBIOS it would be i Mac13,2: 'Mac-FC02E91DDD3FA6A4' Link to comment Share on other sites More sharing options...
Sherlocks Posted September 13, 2017 Share Posted September 13, 2017 As I say before post # 2470: "Only one file here for Imac13,2 SMBIOS: Mac-F60DEB81FF30ACF6.epm." And only one file for macpro6,1 SMBIOS: Mac-F60DEB81FF30ACF6.epm. Curiously it's same epm file. But no SMC files?Sorry for my english.Like you said, some smbios uses 3nd boot for installation of HS. If there is no smc file, smc was matched from latest smc rev. Also Installer pkg is not include smc file of all models. Seems atleast need to update smc rev key for models of missing smc rev when installation of HS. Thank you for clear report. EDIT1. I tested 2nd reboot with remains 12 minutes 1. macpro61 2. Imac171 2nd no reboot 1. imac18.x 나의 LG-F800S 의 Tapatalk에서 보냄 1 Link to comment Share on other sites More sharing options...
Matgen84 Posted September 13, 2017 Share Posted September 13, 2017 Sorry for my english. Like you said, some smbios uses 3nd boot for installation of HS. If there is no smc file, smc was matched from latest smc rev. Also Installer pkg is not include smc file of all models. Seems atleast need to update smc rev key for models of missing smc rev when installation of HS. Thank you for clear report. EDIT1. I tested 2nd reboot with remains 12 minutes 1. macpro61 2. Imac171 2nd no reboot 1. imac18.x 나의 LG-F800S 의 Tapatalk에서 보냄 What about same epm files under different SMBIOS? I don't understand why. Sorry for my english Link to comment Share on other sites More sharing options...
RehabMan Posted September 15, 2017 Share Posted September 15, 2017 This seems to do the trick for fixing the Clover installer bug with mounting EFI with an APFS setup: SPEEDY-NUC-2:Clover rehabman$ git diff diff --git a/CloverPackage/package/Scripts.templates/EFIFolder/MountESP b/CloverPackage/package/Scripts.templates/EFIFolder/MountESP index 6a95dbe5..68abce71 100755 --- a/CloverPackage/package/Scripts.templates/EFIFolder/MountESP +++ b/CloverPackage/package/Scripts.templates/EFIFolder/MountESP @@ -37,6 +37,17 @@ if [[ "$(echo $(LC_ALL=C diskutil list | grep -i 'Logical Volume' | \ fi fi +# check if target volume is APFS, and therefore part of an APFS container +if [[ "$(echo $(LC_ALL=C diskutil list "$DiskDevice" | grep -i 'APFS Container Scheme' | \ + awk '{print tolower($0)}'))" == *"apfs container scheme"* ]]; then + # ok, this disk is an APFS partition, extract physical store device + realDisk=$(LC_ALL=C diskutil list "$DiskDevice" 2>/dev/null | \ + sed -n 's/.*Physical Store *//p') + echo Target volume "$1" on "$DiskDevice" is APFS on physical store "$realDisk" + DiskDevice=$(LC_ALL=C diskutil info "$realDisk" 2>/dev/null | \ + sed -n 's/.*Part [oO]f Whole: *//p') +fi + # echo "realDisk = $realDisk" # echo "UUID = $UUID" # echo "DiskDevice = $DiskDevice" 10 Link to comment Share on other sites More sharing options...
bronxteck Posted September 15, 2017 Share Posted September 15, 2017 now that clover has support for APFS. shouldn't the installer also check/verify to see if you have /usr/standalone/i386/APFS.EFI binary or the one in installer app and include or have the option to include in clover drivers. since we don't have an open source option like vboxhfs yet. Link to comment Share on other sites More sharing options...
Maniac10 Posted September 15, 2017 Share Posted September 15, 2017 Hi devs, I'm getting inconsistent kext loading on Clover 4207. Sometimes it works as expected: 25:354 0:010 Preparing kexts injection for arch=x86_64 from EFI\CLOVER\kexts\Other 25:354 0:000 Extra kext: EFI\CLOVER\kexts\Other\CalDigitUSBxHCI.kext 25:365 0:011 Extra kext: EFI\CLOVER\kexts\Other\CalDigitFastIO.kext 25:370 0:005 Extra kext: EFI\CLOVER\kexts\Other\LPCSensors.kext 25:401 0:030 Extra kext: EFI\CLOVER\kexts\Other\USBInjectAll.kext 25:599 0:198 Extra kext: EFI\CLOVER\kexts\Other\RealtekRTL8111.kext 25:613 0:013 Extra kext: EFI\CLOVER\kexts\Other\FakeSMC.kext 25:626 0:013 Extra kext: EFI\CLOVER\kexts\Other\CPUSensors.kext 25:634 0:007 Extra kext: EFI\CLOVER\kexts\Other\Lilu.kext 25:647 0:012 Preparing kexts injection for arch=x86_64 from EFI\CLOVER\kexts\10.12 25:647 0:000 Extra kext: EFI\CLOVER\kexts\10.12\NvidiaGraphicsFixup.kext 25:656 0:008 Extra kext: EFI\CLOVER\kexts\10.12\CoreDisplayFixup.kext 25:663 0:007 Extra kext: EFI\CLOVER\kexts\10.12\AppleALC.kext 25:677 0:013 PlugIn kext: EFI\CLOVER\kexts\10.12\AppleALC.kext\Contents\PlugIns\PinConfigs.kext 25:842 0:165 Extra kext: EFI\CLOVER\kexts\10.12\NVWebDriverLibValFix.kext 25:854 0:011 Extra kext: EFI\CLOVER\kexts\10.12\GPUSensors.kext 25:875 0:021 SetStartupDiskVolume: But once in a while it just skips a folder: 7:778 0:010 Preparing kexts injection for arch=x86_64 from EFI\CLOVER\kexts\Other 7:790 0:012 Extra kext: EFI\CLOVER\kexts\Other\CalDigitUSBxHCI.kext 7:798 0:007 Extra kext: EFI\CLOVER\kexts\Other\CalDigitFastIO.kext 7:801 0:003 Extra kext: EFI\CLOVER\kexts\Other\LPCSensors.kext 7:831 0:030 Extra kext: EFI\CLOVER\kexts\Other\USBInjectAll.kext 8:028 0:197 Extra kext: EFI\CLOVER\kexts\Other\RealtekRTL8111.kext 8:041 0:012 Extra kext: EFI\CLOVER\kexts\Other\FakeSMC.kext 8:053 0:012 Extra kext: EFI\CLOVER\kexts\Other\CPUSensors.kext 8:060 0:006 Extra kext: EFI\CLOVER\kexts\Other\Lilu.kext 8:071 0:010 Preparing kexts injection for arch=x86_64 from EFI\CLOVER\kexts\10.12 8:071 0:000 SetStartupDiskVolume: Perhaps I'm being too vague with just this log so if you need some other info just let me know please. 1 Link to comment Share on other sites More sharing options...
jaymack Posted September 15, 2017 Share Posted September 15, 2017 now that clover has support for APFS. shouldn't the installer also check/verify to see if you have /usr/standalone/i386/APFS.EFI binary or the one in installer app and include or have the option to include in clover drivers. since we don't have an open source option like vboxhfs yet. Which versions now have support for APFS? Link to comment Share on other sites More sharing options...
bronxteck Posted September 15, 2017 Share Posted September 15, 2017 4208 Link to comment Share on other sites More sharing options...
jaymack Posted September 16, 2017 Share Posted September 16, 2017 4208 Thank you Link to comment Share on other sites More sharing options...
TheRacerMaster Posted September 16, 2017 Share Posted September 16, 2017 now that clover has support for APFS. shouldn't the installer also check/verify to see if you have /usr/standalone/i386/APFS.EFI binary or the one in installer app and include or have the option to include in clover drivers. since we don't have an open source option like vboxhfs yet. You mean the Clover installer now supports APFS. The ideal situation would be to get ApfsJumpStart working (requires some missing protocols/etc), as this is what real Macs use. IIRC, apfs.efi is embedded into the Core Storage (APFS?) container, and ApfsJumpStart locates and loads the driver. I believe netkas said that ApfsJumpStart also checks the signature of apfs.efi (to prevent malicious drivers from loading malicious EFI drivers). 4 Link to comment Share on other sites More sharing options...
fusion71au Posted September 16, 2017 Share Posted September 16, 2017 Hi devs, I'm getting inconsistent kext loading on Clover 4207. Sometimes it works as expected: But once in a while it just skips a folder: I'm experiencing the same thing with r4208. Attached are boot logs from 3 consecutive boots: Boot 1 ---> Chose -v from Clover menu ---> Kext injection from EFI\CLOVER\kexts\Other OK but from EFI\CLOVER\kexts\10.13 fails Boot 2 ---> Opened Kext Management under Clover Options to confirm kexts in /10.13 were not checked (they weren't) ---> Kext injection from EFI\CLOVER\kexts\Other and EFI\CLOVER\kexts\10.13 OK Boot 3 ---> Let Clover boot from High Sierra Volume without changing any boot options ---> Kext injection from EFI\CLOVER\kexts\Other OK but from EFI\CLOVER\kexts\10.13 fails. Edit: Fixed with Clover r4210 Clover r4208 Bootlogs.zip 3 Link to comment Share on other sites More sharing options...
Maniac10 Posted September 16, 2017 Share Posted September 16, 2017 Did a quick test and I can confirm doing the steps fusion71au explained gives me the same outcome. If left alone the kexts in 10.12 won't be loaded, and if I go into "Kext Management" then everything works. 1 Link to comment Share on other sites More sharing options...
cecekpawon Posted September 16, 2017 Share Posted September 16, 2017 (edited) You can try to replace 'asc_sysVer' here with 'SrcDir' (whoops is it fullpath?) to get fixed 'Major.Minor' instead of 'Major.Minor.Revision' / invalid DestMax (should be length * sizeof (CHAR16)). Also noticed 'Count' here are always ZERO. GetListOfInjectKext(Basename (SrcDir)); Edited September 16, 2017 by cecekpawon 2 Link to comment Share on other sites More sharing options...
syscl Posted September 16, 2017 Share Posted September 16, 2017 You can try to replace 'asc_sysVer' here with 'SrcDir' (whoops is it fullpath?) to get fixed 'Major.Minor' instead of 'Major.Minor.Revision' / invalid DestMax (should be length * sizeof (CHAR16)). Also noticed 'Count' here are always ZERO. GetListOfInjectKext(Basename (SrcDir)); Hi cecekpawon, the Count there will be refined for user to disable inject kext in config.plist later on. But I am currently very lack of time. 1 Link to comment Share on other sites More sharing options...
Maniac10 Posted September 17, 2017 Share Posted September 17, 2017 Rev 4210 solved the kext loading issue. Thanks a lot syscl! 1 Link to comment Share on other sites More sharing options...
Slice Posted September 22, 2017 Share Posted September 22, 2017 Could be possible to add again support for this reboot fix patch in latest clover? It was working in 4184 release..in latest it is no more working: <dict> <key>Comment</key> <string>reboot fix</string> <key>Disabled</key> <false/> <key>Find</key> <data> vgsAAABd6QgAAAAPH4QAAAAAAFVIieVBVw== </data> <key>Replace</key> <data> vgsAAABd6QgAAAAPH4QAAAAAAMNIieVBVw== </data> </dict> find be0b0000 005de908 0000000f 1f84000000000055 4889e541 57 replace be0b0000 005de908 0000000f 1f840000000000c3 4889e541 57 Thank you If it is made in clover config then it is not clover issue. Kernel patching is supported as before. Probably the kernel changed. Link to comment Share on other sites More sharing options...
Recommended Posts