Jump to content
ErmaC

Clover Bug/Issue Report and Patch

2,792 posts in this topic

Recommended Posts

Hi blackosx 

Do you know where comes this error

I try to build my Grower

My last working build is r3244

 

--10.png

Share this post


Link to post
Share on other sites
Advertisement

Hi blackosx 

Do you know where comes this error

I try to build my Grower

My last working build is r3244

 

--10.png

Fixed in 3247.

Share this post


Link to post
Share on other sites

Clover doesn't properly detect Broadwell CPUs; well, it does, but it automatically assumes it's an i5. Here's a patch that should fix it (should autodetect Broadwell Core M, Core i3, Core i5, Core i7):

Index: rEFIt_UEFI/Platform/cpu.c
===================================================================
--- rEFIt_UEFI/Platform/cpu.c	(revision 3247)
+++ rEFIt_UEFI/Platform/cpu.c	(working copy)
@@ -778,7 +778,18 @@
             }
 						return 0x704;
           case CPU_MODEL_HASWELL_U5:
-            return 0x606;
+            if (AsciiStrStr(gCPUStructure.BrandString, "Core(TM) M"))
+              return 0xB06; // Core M
+            if (AsciiStrStr(gCPUStructure.BrandString, "Core(TM) i3"))
+              return 0x906; // Core i3 - Apple doesn't use it
+            if (AsciiStrStr(gCPUStructure.BrandString, "Core(TM) i5"))
+              return 0x606; // Core i5
+            if (AsciiStrStr(gCPUStructure.BrandString, "Core(TM) i7"))
+              return 0x706; // Core i7
+            if (gCPUStructure.Cores <= 2) {
+              return 0x606;
+            }
+            return 0x706;
           case CPU_MODEL_IVY_BRIDGE_E5:
             return 0xA01;
           case CPU_MODEL_ATOM_3700:

Core M CPU type was taken from a MacBook8,1 IOReg dump, which is attached (note: Terminal output, not IORegistryExplorer output). Also attached is a System Information report. A friend with a Broadwell i3 laptop tested it.

MacBook8,1.zip

Share this post


Link to post
Share on other sites

Clover doesn't properly detect Broadwell CPUs; well, it does, but it automatically assumes it's an i5. Here's a patch that should fix it (should autodetect Broadwell Core M, Core i3, Core i5, Core i7):

Index: rEFIt_UEFI/Platform/cpu.c
===================================================================
--- rEFIt_UEFI/Platform/cpu.c	(revision 3247)
+++ rEFIt_UEFI/Platform/cpu.c	(working copy)
@@ -778,7 +778,18 @@
             }
 						return 0x704;
           case CPU_MODEL_HASWELL_U5:
-            return 0x606;
+            if (AsciiStrStr(gCPUStructure.BrandString, "Core(TM) M"))
+              return 0xB06; // Core M
+            if (AsciiStrStr(gCPUStructure.BrandString, "Core(TM) i3"))
+              return 0x906; // Core i3 - Apple doesn't use it
+            if (AsciiStrStr(gCPUStructure.BrandString, "Core(TM) i5"))
+              return 0x606; // Core i5
+            if (AsciiStrStr(gCPUStructure.BrandString, "Core(TM) i7"))
+              return 0x706; // Core i7
+            if (gCPUStructure.Cores <= 2) {
+              return 0x606;
+            }
+            return 0x706;
           case CPU_MODEL_IVY_BRIDGE_E5:
             return 0xA01;
           case CPU_MODEL_ATOM_3700:

Core M CPU type was taken from a MacBook8,1 IOReg dump, which is attached (note: Terminal output, not IORegistryExplorer output). Also attached is a System Information report. A friend with a Broadwell i3 laptop tested it.

Thanks, this is valuable info!

Accepted into 3248.

I can also note this MacBook uses 

"Intel HD Graphics 5300"

"AAPL,ig-platform-id" = 0x161e0001

May be someone found this info usefull.

Share this post


Link to post
Share on other sites

The code injected in DSDT by FixDarwin_0002 can be simplified...

 

Current code injected:

    Name (WXP1, "Windows 2001")
    Method (GET9, 2, NotSerialized)
    {
        CreateByteField (Arg0, Arg1, TCH9)
        Return (TCH9)
    }
    Method (STR9, 2, NotSerialized)
    {
        Name (STR8, Buffer (0x50) {})
        Name (STR9, Buffer (0x50) {})
        Store (Arg0, STR8)
        Store (Arg1, STR9)
        Store (Zero, Local0)
        Store (One, Local1)
        While (Local1)
        {
            Store (GET9 (STR8, Local0), Local1)
            Store (GET9 (STR9, Local0), Local2)
            If (LNotEqual (Local1, Local2)) { Return (Zero) }
            Increment (Local0)
        }
        Return (One)
    }
    Method (OOSI, 1, NotSerialized)
    {
        If (STR9 (WXP1, Arg0)) { Return (One) }
        Return (Zero)
    }
Note: STR9 should have been marked 'Serialized' as it is using globals; not thread-safe.

 

 

Simplification:

    Method (OOSI, 1, NotSerialized) { Return (LEqual(Arg0, "Windows 2001")) }

Share this post


Link to post
Share on other sites

It is not "equal", it is "contain substring".

For examle true for "Windows 2001.SP1"

OK... Not really "contains substring", but rather "starts with"...

 

Actually, OOSI("Windows 2001.SP1") does not return true.  And it shouldn't either.  The intention is for it to simulate "Windows 2001", not "Windows 2001.SP1" (which according to Microsoft documentation is actually "Windows 2001 SP1" [space vs. dot]).

 

But I missed the case of OOSI("Windows"), which should return true...

(minor point: spec says to return 0xFFFFFFFF for true, not 1)

 

Modified code, still simplified, with commments, here:

Method(OOSI, 1)
{
    // simulation target...
    Store("Windows 2001", Local0)
    // longer strings cannot match
    If (LGreater(SizeOf(Arg0), SizeOf(Local0))) { Return (0) }
    // compare only characters specified in the argument       
    CreateField(Local0, 0, ShiftLeft(SizeOf(Arg0),3), CMP1)
    CreateField(Arg0, 0, ShiftLeft(SizeOf(Arg0),3), CMP2)
    Return (LEqual(CMP1,CMP2))
}
BTW, my entire point in looking at this was because I wanted to simulate "Windows 2009" instead of "Windows 2001".

 

So, I use DSDT bin patch (_OSI->XOSI):

 

find:<5f4f5349>
repl:<584f5349>
 

And then an SSDT with XOSI method...

 

Method(XOSI, 1)
{
    Store("Windows 2009", Local0)
    If (LGreater(SizeOf(Arg0), SizeOf(Local0))) { Return (0) }
    CreateField(Local0, 0, ShiftLeft(SizeOf(Arg0),3), CMP1)
    CreateField(Arg0, 0, ShiftLeft(SizeOf(Arg0),3), CMP2)
    Return (LEqual(CMP1,CMP2))
}
Note: Not many DSDTs compare just _OSI("Windows"), so practically, the result is the same.

Share this post


Link to post
Share on other sites

I know that Windows 2001 is rather obsolete and may not be present in modern BIOSes.

But I choose Windows 2001 and not Windows Vista+ because of different drivers models.

Windows XP assumes ACPI model as well as MacOSX up to Maverics and probably higher.

Windows Vista and up assumes WHQL drivers not appeal to ACPI. This is the key difference.

You may find in DSDT compares like 0x07d2

 

The same note about Linux. Even though DSDT knows string "Linux" it sets parameters for some ancient version, not as required by real new Linux.

 

I agree that this fix should be revised and I think some customization is required.

Share this post


Link to post
Share on other sites

I know that Windows 2001 is rather obsolete and may not be present in modern BIOSes.

But I choose Windows 2001 and not Windows Vista+ because of different drivers models.

Windows XP assumes ACPI model as well as MacOSX up to Maverics and probably higher.

Windows Vista and up assumes WHQL drivers not appeal to ACPI. This is the key difference.

You may find in DSDT compares like 0x07d2 < OS < 0x07d6 but your value 0x07d9 corresponding to newer Windows will be out of range.

 

The same note about Linux. Even though DSDT knows string "Linux" it sets parameters for some ancient version, not as required by real new Linux.

 

I agree that this fix should be revised and I think some customization is required.

The correct value to use really depends on what the DSDT is doing... after careful review of all conditionals in the DSDT/SSDTs.

 

It would be nice if the patch offered by Clover provided a way to customize the comparison string instead of it being hard-coded.

 

But my method works fine too and has the same result (nice the binpatch capability for DSDT... Simple/reliable/flexible).

Share this post


Link to post
Share on other sites

After more reading of the Microsoft documentation, my implementation now:

 

    // All _OSI calls in DSDT are routed to XOSI...
    // XOSI simulates "Windows 2009" (which is Windows 7)
    // Note: According to ACPI spec, _OSI("Windows") must also return true
    //  Also, it should return true for all previous versions of Windows.
    Method(XOSI, 1)
    {
        // simulation targets
        // source: (google 'Microsoft Windows _OSI')
        //  http://download.microsoft.com/download/7/E/7/7E7662CF-CBEA-470B-A97E-CE7CE0D98DC2/WinACPI_OSI.docx
        Name(WINV, Package()
        {
            "Windows",              // generic Windows query
            "Windows 2001",         // Windows XP
            "Windows 2001 SP2",     // Windows XP SP2
            //"Windows 2001.1",     // Windows Server 2003
            //"Windows 2001.1 SP1", // Windows Server 20003 SP1
            "Windows 2006",         // Windows Vista
            "Windows 2006 SP1",     // Windows Vista SP1
            //"Windows 2006.1",     // Windows Server 2008
            "Windows 2009",         // Windows 7/Windows Server 2008 R2
            //"Windows 2012",       // Windows 8/Windows Sesrver 2012
            //"Windows 2013",       // Windows 8.1/Windows Server 2012 R2
            //"Windows 2015",       // Windows 10/Windows Server TP
        })
        Store(0, Local0)
        While (LLess(Local0, SizeOf(WINV)))
        {
            If (LEqual(DerefOf(Index(WINV,Local0)), Arg0)) { Return (0xFFFFFFFF) }
            Increment(Local0)
        }
        Return (0)
    }
Edit... and here's an even simpler (and more efficient) version:

    // All _OSI calls in DSDT are routed to XOSI...
    // XOSI simulates "Windows 2009" (which is Windows 7)
    // Note: According to ACPI spec, _OSI("Windows") must also return true
    //  Also, it should return true for all previous versions of Windows.
    Method(XOSI, 1)
    {
        // simulation targets
        // source: (google 'Microsoft Windows _OSI')
        //  http://download.microsoft.com/download/7/E/7/7E7662CF-CBEA-470B-A97E-CE7CE0D98DC2/WinACPI_OSI.docx
        Name(WINV, Package()
        {
            "Windows",              // generic Windows query
            "Windows 2001",         // Windows XP
            "Windows 2001 SP2",     // Windows XP SP2
            //"Windows 2001.1",     // Windows Server 2003
            //"Windows 2001.1 SP1", // Windows Server 2003 SP1
            "Windows 2006",         // Windows Vista
            "Windows 2006 SP1",     // Windows Vista SP1
            //"Windows 2006.1",     // Windows Server 2008
            "Windows 2009",         // Windows 7/Windows Server 2008 R2
            //"Windows 2012",       // Windows 8/Windows Sesrver 2012
            //"Windows 2013",       // Windows 8.1/Windows Server 2012 R2
            //"Windows 2015",       // Windows 10/Windows Server TP
        })
        Return (LNotEqual(Match(WINV, MEQ, Arg0, MTR, 0, 0), Ones))
    }

Share this post


Link to post
Share on other sites

Legacy booting via ISO/PKG appears to be broken.

I'm doing some testing in VirtualBox with various loaders and Clover used to be able to boot in VB with iso.

 

Booting in legacy with USB on an older Laptop is a no go as well.

This USED to work....

 

Something has changed.... and NOT for the better.

I'm trying to track it down...

Share this post


Link to post
Share on other sites

Clover has model string incorrect for 8086:0112.

 

8086:0112 is HD3000, not HD2000.

 

In gma.c, this:

  { 0x0112, "Intel HD Graphics 2000"  },
should be:

  { 0x0112, "Intel HD Graphics 3000"  },
It is cosmetic only and can be fixed by Devices/AddProperties (and Devices/NoDefaultProperites) or DSDT patch.

Share this post


Link to post
Share on other sites

@Slice

Hello.. Im fun of testing older builds of OSX in Clover (always latest). Here is what i found during my test using FakeCPUID feature.

 

CPU: i5-4460 Haswell

OS: SL & Lion

post-1471422-0-34835300-1437112139_thumb.png

SL = 0x0206A0

32Bit = Instant reboot!

64Bit = Working

 

LION = 0x0306A0

32Bit = Working

64Bit = Instant Reboot!

 

I can send debug report if you can tell which to enable in config.plist

 

Thanks :)

 

Share this post


Link to post
Share on other sites

Clover has model string incorrect for 8086:0112.

 

8086:0112 is HD3000, not HD2000.

 

In gma.c, this:

  { 0x0112, "Intel HD Graphics 2000"  },
should be:

  { 0x0112, "Intel HD Graphics 3000"  },
It is cosmetic only and can be fixed by Devices/AddProperties (and Devices/NoDefaultProperites) or DSDT patch.

 

Screen Shot 2015-07-18 at 9.29.09.png

@Slice

Hello.. Im fun of testing older builds of OSX in Clover (always latest). Here is what i found during my test using FakeCPUID feature.

 

CPU: i5-4460 Haswell

OS: SL & Lion

attachicon.gifCPUID_table.png

SL = 0x0206A0

32Bit = Instant reboot!

64Bit = Working

 

LION = 0x0306A0

32Bit = Working

64Bit = Instant Reboot!

 

I can send debug report if you can tell which to enable in config.plist

 

Thanks :)

May be the reboot with CPUPM?

Share this post


Link to post
Share on other sites

Must be inaccurate. I helped someone with i5-2500k. Device-id was 8086:0112.

 

http://ark.intel.com/products/52210/Intel-Core-i5-2500K-Processor-6M-Cache-up-to-3_70-GHz

 

No biggie... easy to work around with _DSM inject or config.plist/Devices/NoDefaultProperties, config.plist/Devices/AddProperties.

 

From Chameleon gma.h:

#define GMA_SANDYBRIDGE_GT1        GFX_MODEL_CONSTRUCT(INTEL, 0x0102) // HD Graphics 2000
...
#define GMA_SANDYBRIDGE_GT2        GFX_MODEL_CONSTRUCT(INTEL, 0x0112) // HD Graphics 3000

Share this post


Link to post
Share on other sites

Must be inaccurate. I helped someone with i5-2500k. Device-id was 8086:0112.

 

http://ark.intel.com/products/52210/Intel-Core-i5-2500K-Processor-6M-Cache-up-to-3_70-GHz

 

No biggie... easy to work around with _DSM inject or config.plist/Devices/NoDefaultProperties, config.plist/Devices/AddProperties.

 

From Chameleon gma.h:

#define GMA_SANDYBRIDGE_GT1        GFX_MODEL_CONSTRUCT(INTEL, 0x0102) // HD Graphics 2000
...
#define GMA_SANDYBRIDGE_GT2        GFX_MODEL_CONSTRUCT(INTEL, 0x0112) // HD Graphics 3000

Chameleon knows better then Intel!

Anyway what is the difference if System Profiler shows hd2000 or hd3000? Kexts attached to DeviceID not to Model name.

 

How to fix it then? I have removed applecpupm but still early reboot.

May be you should show something? debug.log for example?

Share this post


Link to post
Share on other sites

Chameleon knows better then Intel!

Even Intel can make mistakes.

 

Anyway what is the difference if System Profiler shows hd2000 or hd3000? Kexts attached to DeviceID not to Model name.

Cosmetic only.

Share this post


Link to post
Share on other sites

OS X has no native support for HD3000 desktop (it was omitted from the Info.plist), because there are no Apple computers with this hardware.

 

My i7-2600k is 0122:8086. I use FakeID/IntelGFX=0x01268086.

 

You cannot rely on Apple's Info.plist as a reference for device-ids.

Any chance to make this work on 10.7

attachicon.gifKernelPM.png

XCPM was introduced in 10.8.5.

Share this post


Link to post
Share on other sites

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By zebity
      Hi Hypervisors,
       
      I have been working to move my Late 2009 Xserve MacOS Server onto Ubuntu 18.04 LTS QEMU/KVM based virtual machine using OVMF and Clover.
       
      After much effort and testing based on the following information from: Kraxel's, Kholia, Gordon Turner and Clover site:
      https://www.kraxel.org/blog/2017/09/running-macos-as-guest-in-kvm/
      https://github.com/kholia/OSX-KVM
      https://gist.github.com/gordonturner/2a2e5ecde5e7860b52e2
      https://clover-wiki.zetam.org/Home
       
      I have now managed to get OVMF/Clover boot and install of MacOS Sierra.
       
      I started with Ubuntu 16.04 initially but this required download and compile of QEMU to get update of machines to: pc-q35-2.9 or better, so I moved to Ubuntu 18.04, which has pc-q35.2.11 available as standard.
       
      So I am now working with standard Ubuntu 18.04 LTS based systems with following packages: kvm/qemu/libvirt/bridge-utils/ovmf/virt-manager
       
      As I want to use PCIe Passthrough for a number of PCIe card currently installed in the server (SmallTree 10GbE & Areca ARC-1883 SAS RAID) I set up my machine with linux kernel boot configuration (/etc/default/grub) of: 
      GRUB_CMDLINE_LINUX_DEFAULT="iommu=1 intel_iommu=on" (as my machine is intel VT-d based HW virtualisation)
       
      This resulted in creation of a number of iommu groups (see /sys/kernel/iommu_group directory for this and this posting for information: https://forum.level1techs.com/t/ubuntu-17-04-vfio-pcie-passthrough-kernel-update-4-14-rc1/119639 , noting that Ubuntu 18.04 LTS has kernel version: 4.15.0-22-generic so there is no need to do kernel update for iommu to work).
       
      Using bare minimal Clover config.plist:
       
       
      And following Clover UEFI drivers:
       
      I can boot MacOS, but it is very very slow... it sits on the apple boot logo for over a minutes before finally moving onto the progress bar.
      The other problem I have is that no PCI or Network devices appear in the "About This Mac" System Information Report and I cannot get any network connectivity from bridged E1000 network device.
       
      Here is my virtlib.xml dump for the virtual machine:
       

      Can any one advise of whether I need to update the CLOVER config.plist to add extra items in to allow network and PCI Passthrough to work.
       
      Thank you.
       
      Regards,
       
      Zebity
       
    • By frankiee
      Hi there, time for my first guide after asking so many things
       
      Updated for newer Clover versions and with additional instructions for more apps: gdisk and RU.
       
      So what may be overlooked sometimes in the whole boot loader discussion is the ability of UEFI to do more than just loading an OS. This is why I see ".efi" files as "apps" because in fact they just are, built on a special kind of API: UEFI. So, you can actually do stuff like editing, diagnosing, testing certain stuff at the lowest possible system level without booting to any OS.
       
      DISCLAIMER: Use this guide at your own risk! For educational purposes only! Should do not any harm, but remember you are dealing with rather low level stuff. But at least for me everything went flawless.
       
      Prerequisites:
      Working clover installation Clover Configurator or some app to edit the config.plist  
      1) Memtest
       
      This is how to install the UEFI version of Memtest with Clover:
      Download memtest, I used this link: Image for creating boot-able USB Drive Open the archive by double clicking on it. Mount the file memtest86-usb.img within by double clicking again. Now, you should see a folder named EFI in this volume, containing a folder BOOT. Open it. The files containing it are the actual app, in 32 and 64 bit versions. Think in almost all cases we want to use the 64 bit version. Now, mount your EFI partition, using Clover configurator. Create a folder named MemTest86 in the EFI folder on your main drive. Copy all files in the EFI/BOOT folder from the mounted image to your newly created folder. That ends the basic setup! Now, we add the correct Menu entry to the clover boot menu, so that we can actually start this app.
       
      Get into clover configurator, open your standard config.plist from your boot drive and go to the GUI section. Under "Custom Entries", add an entry like this:
       

       
      Please note while the path you enter is not case sensitive, you must make sure you use the backslash "\" for entering paths, and not a slash. So basically what we do is tell clover where it can find the app, give it a name, and tell clover it is a "Windows" app. Note: with older Clover versions we had to set this to "Linux", but for now "Windows" is the setting that works.
       
      If you prefer to do a manual config, add this entry to your config.plist, under GUI/Custom/Entries:
      <dict> <key>CustomLogo</key> <true/> <key>Disabled</key> <false/> <key>FullTitle</key> <string>MemTest86</string> <key>Hidden</key> <false/> <key>Ignore</key> <false/> <key>Image</key> <string>\EFI\CLOVER\themes\Icons\os_mint.png</string> <key>Path</key> <string>\EFI\MemTest86\BOOTX64.efi</string> <key>Type</key> <string>Windows</string> <key>VolumeType</key> <string>Internal</string> </dict> Now, save and reboot and you should see the newly created entry. Note that I also used a custom Icon - this is optional - in case you don't you will just see a generic windows icon instead:
       

       
      And this is how it looks like:
       

       

       
      PS: also noticeably faster and you get also more features with this version than with the older version, for example it does now write a log file. For more Information, see: http://www.passmark.com/forum/showthread.php?4315-Memtest86-Version-5-Beta-%28Pure-UEFI%29
       
       
      2) gdisk
       
      Another app you can use is the UEFI version of gdisk (aka GPT fdisk), which you can use to edit and change your partitions.
       
      Warning! Install and use this app at your own risk! If you do something wrong here you might nuke your drive(s), so only use that if you know what you are doing.
       
      This is how to do it (even easier):
      Download here: https://sourceforge.net/projects/gptfdisk/files/gptfdisk/1.0.1/gdisk-binaries/gdisk-efi-1.0.1.zip/download Mount your EFI partition Unzip the file and copy the resulting folder to your EFI Folder, so your path goes like this "/Volumes/EFI/EFI/gdisk-efi" Get into clover configurator, open your standard config.plist from your boot drive and go to the GUI section. Add an entry like this:  
      If you prefer to do a manual config, add this entry to your config.plist, under GUI/Custom/Entries:
      <dict> <key>CustomLogo</key> <false/> <key>Disabled</key> <false/> <key>FullTitle</key> <string>GDisk</string> <key>Hidden</key> <false/> <key>Ignore</key> <false/> <key>Image</key> <string></string> <key>Path</key> <string>\EFI\gdisk-efi\gdisk_x64.efi</string> <key>Type</key> <string>Windows</string> <key>VolumeType</key> <string>Internal</string> </dict> When everything went OK you should see this after selecting the respective entry in Clover:
       

       
       
      3) RU
       
      I recently found one more app that might be interesting to some, and thats "Read Universal" or in short "RU". This is a tool that enables you to debug your BIOS and read (and modify!) every imaginable data, including UEFI variables, ACPI Tables etc.
       
      Warning, again! I think blindly messing around with this app is even more dangerous, but on the other hand it gives you access to a lot of potentially interesting stuff.
      Download here: http://ruexe.blogspot.de/ The next steps are basically the same as above so make a folder in your EFI partition, copy the .EFI files and make another custom entry in your config.plist Here are some screens:
       

       

       

       
       
      So this is what you also can do with UEFI and clover. I am curious which other useful applications might exist!
       
      Anybody who knows, maybe post it here?
    • By TimNeumann
      MB: Asus X99 A-II
      RAM: G.Skill Ripjaws V F4-3200C16D-32GVK (3200MHz, 4x 16GB DIMMs, so Total 64GB) in quad-channel configuration.
      CPU: i7 6800k @4.0Ghz
      GPUs: GTX 1080 Ti and GTX 1060 3GB
      (each one a monitor, because I can't get DVI to run parallel with DP on the 1080Ti, and my second monitor only has DVI/VGA)
      OS: High Sierra 10.13.2 (17C88) / Clover revision: 4392
       
      Hello everybody,
      I occasionally have system crashes and suspect that it is related to RAM. However, this RAM is completely new, and a run with MemTest86+ from the USB stick showed no errors. However, if I use Memtest on MacOS, I get a bunch of error messages, but sometimes none (I restart the computer between tests).  
      As I just discovered, my RAM is not on the recommended vendor list of my motherboard, nor is it on the manufacturer side of the RAM. I have read several times that the RAM may not have been tested by the manufacturer on this platform. Not a single X99 motherboard is listed for this RAM.
      So I also suspect that my RAM is not compatible.
      But if that were the case, how could it sometimes work completely error-free?
       
      During RAM tests in summer 2017 (a slightly different setup, 4x8GB but still G.Skill Ripjaws V) I had no errors at Memtest under MacOS, if I remember correctly. At that time it ran under Sierra 10.12.6. AptioMemoryFix.efi could also cause problems.
      I am appreciative for any help!
       
      Here is an excerpt from a faulty test.
      It is noticeable that it is always the same address during the test, but a different one after each test.
      Memtest version 4.22 (64-bit) Copyright (C) 2004 Charles Cazabon Copyright (C) 2004-2008 Tony Scaminaci (Macintosh port) Licensed under the GNU General Public License version 2 only Mac OS X 10.13.2 (17C88) running in multiuser mode Memory Page Size: 4096 System has 12 Intel core(s) with SSE Requested memory: 57232MB (60012990464 bytes) Available memory: 57232MB (60012990464 bytes) Allocated memory: 57232MB (60012990464 bytes) at local address 0x00000001033e1000 Attempting memory lock... locked successfully Partitioning memory into 2 comparison buffers... Buffer A: 28616MB (30006495232 bytes) starts at local address 0x00000001033e1000 Buffer B: 28616MB (30006495232 bytes) starts at local address 0x00000007ffc4d800 Running 1 test sequence... (CTRL-C to quit) Test sequence 1 of 1: Running tests on full 57232MB region... Stuck Address : ok Linear PRN : testing 7 of 16 FAILURE! Data mismatch at local address 0x0000000e88133d30 Expected Data: 0xc4c340079ac9a645, Actual Data: 0xc4c3400788468846 Running comparison tests using 28616MB buffers... Random Value : ok Compare XOR : ok Compare SUB : ok Compare MUL : ok Compare DIV : ok Compare OR : ok Compare AND : ok Sequential Increment: ok Solid Bits : ok Block Sequential : testing 80 of 256 FAILURE! Data mismatch at local BUFA address 0x000000078b8c7530, BUFB address 0x0000000e88133d30 BUFA Data: 0x4f4f4f4f4f4f4f4f, BUFB Data: 0x4f4f4f4f88468846 Checkerboard : testing 3 of 64 FAILURE! Data mismatch at local BUFA address 0x000000078b8c7530, BUFB address 0x0000000e88133d30 BUFA Data: 0x5555555555555555, BUFB Data: 0x5555555588468846 Bit Spread : testing 1 of 128 FAILURE! Data mismatch at local BUFA address 0x000000078b8c7530, BUFB address 0x0000000e88133d30 BUFA Data: 0x0000000000000005, BUFB Data: 0x0000000088468846 Bit Flip : testing 74 of 512 FAILURE! Data mismatch at local BUFA address 0x000000078b8c7530, BUFB address 0x0000000e88133d30 BUFA Data: 0x0000000000000200, BUFB Data: 0x0000000088468846 Walking Ones : testing 40 of 128 Clover Files attached
      config.plist
      drivers64UEFI.zip
      kexts.zip
      ACPI.zip
    • By BurpSuite
      screenshot:
       

       
      description:
      github: https://github.com/burpsuite/clover_theme
×