acidanthera / bugtracker

Acidanthera Bugtracker
385 stars 45 forks source link

10.15 beta 4 AppleIntelMCEReporter #424

Closed Pavo-IM closed 4 years ago

Pavo-IM commented 5 years ago

Is there away we can get a new patch added to Lilu to patch AppleIntelMCEReporter.kext. Apple has introduced a new controller inside the driver called AppleIntelMCEInteruptController which has included the iMacPro1,1, MacPro6,1 and assume the new MacPro7,1 board-ids. This is causing kernel panic for Ivy Bridge-EP CPUs. 10.15 beta 3 AppleIntelMCEReporter.kext Info.plist https://imgur.com/S9De4FP 10.15 beta 4 AppleIntelMCEReporter.kext Ino.plist https://imgur.com/ACDbmQf

PMheart commented 5 years ago

Hello,

I have several ideas to test:

PMheart commented 5 years ago

Sorry for the close. Reopening.

vit9696 commented 5 years ago

It makes sense to me to block kext with OC, Lilu has nothing to do with it. Closing as not an issue really.

Pavo-IM commented 5 years ago

Use OC Kernel > Block did not work. This is from OC logs: 00:000 00:000 OC: Prelink blocker com.apple.driver.AppleIntelMCEReporter init failure - Not Found I am assuming Kernel > Block section can only block kexts that is in the Prelink and not during booting phase. The KP is happening on update phase and fresh install phase.

vit9696 commented 5 years ago

Well, ok, do provide a panic log now then with keepsyms=1 in boot arguments and the kext file attached.

Pavo-IM commented 5 years ago

https://imgur.com/QRawrsH

vit9696 commented 5 years ago

Please reread what I said, make good sense of it, and provide the necessary data. Thank you.

Pavo-IM commented 5 years ago

Oh my bad here is the kext, didn't read that part lol. AppleIntelMCEReporter.kext.zip

vit9696 commented 5 years ago

It's keepsyns=1 instead of keepsyms=1 too, and thus no symbols are visible ^^

Pavo-IM commented 5 years ago

IMG_0017

PMheart commented 5 years ago

You are still leaving keepsyNs=1...

vit9696 commented 5 years ago

E21CCF38-5231-442C-9532-7739BB1A8BF4

Listen, I am patient, but if this continues, I will just close the issue until you learn how to provide bugreports. Thanks for understanding and please do save your own and my time.

Pavo-IM commented 5 years ago

Ok I am little confused because when I provided the OC log output using Kernel > Block. You said and I quote "Well, ok, do provide a panic log now then with keepsyms=1 in boot arguments and the kext file attached." I provided a pic of the panic with keepsyns=1 already in it but forgot to attach the kext. I attached the kext next and then I posted a pic of the panic still with keepsyns=1 and now you are saying that I am not providing the information that you have asked for. So which is it? Do you want the a pic of the kernel panic with or without keepsyns=1 as a bootarg?

PMheart commented 5 years ago

We want the bugreport with keepsyMs=1 (M is just for emphasis, which should be LOWercase in fact).

Pavo-IM commented 5 years ago

That is not what @vit9696 said, he said specifically keepsyns=1 instead of keepsyms=1.

ghost commented 5 years ago

Well, ok, do provide a panic log now then with keepsyms=1 in boot arguments and the kext file attached.

This is what you put not keepsyns=1 it’s in the OC Pdf as keepsyms=1, it’s confusing as you have listed both N and M, so which is it?

PMheart commented 5 years ago

You must be misunderstanding what @vit9696 said then.

Well, anyway, do not use keepsyNs=1 until you write the code for Apple. ;)

ghost commented 5 years ago

Right so both screenshots had keepsyns, okay now i see it. yes now i understood his reply.

Pavo-IM commented 5 years ago

Here is one with keepsyms=1 IMG_0018

Pavo-IM commented 5 years ago

It looks like its checking something on the memory banks for the CPUs.

vit9696 commented 5 years ago

Well, to just disable this kext you could return 0 from __ZN21AppleIntelMCEReporter5probeEP9IOServicePi. Such a simple solution should work fine, so feel free to write a Lilu plugin for it.

The crash itself is caused by out of bounds array access: Снимок экрана 2019-07-18 в 1 40 46

You have 2 physical CPUs, and this driver does not support it, and does not allocate enough memory, see __ZN13AppleIntelMCE10Controller4InitEv.

PMheart commented 5 years ago

Added solution to this issue at the master of CPUFriend, please compile and give it a try. Thanks.

Pavo-IM commented 5 years ago

10.15 beta 5 has removed AppleIntelMCEInteruptController from AppleIntelMCEReporter.kext Info.plist. It has been revered back to what 10.15 beta 3 was.

mrmiller commented 5 years ago

Just to add to the public record, AppleIntelIMCEInterruptController is back in beta 6. The patch in CPUFriend does successfully work around it.

Leoyzen commented 5 years ago

I still face the similar problem, and add Lilu/CPUFriend in kext/others of clover directory not work for me. Can you give some help or direction? the error info is here, much appreciate. We use Penryn in kvm vm hackintosh, seem the cpu family not support in catalina. image

Leoyzen commented 5 years ago

Another similar error may related: image

DuIslingr commented 5 years ago

image0 Trying to boot Catalina beta 9 with opencore on Qemu KVM and I keep getting this panic. CPUFriend seems to be broken. Whats interesting is Clover doesnt have this problem though. Can boot just fine via clover and dont even need cpufriend.

vit9696 commented 5 years ago

@Leoyzen @DuIslingr all that is pretty strange. The screen above shows __ZN21AppleIntelMCEReporter5probeEP9IOServicePi was not found, and this is how CPUFriend kills the kext. @PMheart please check and update the signature.

vit9696 commented 5 years ago

The latest kext has all its symbols stripped, so it is not like we can easily disable it as before. For now consider using a mac model different from mp61, mp71, imp11.

naveenkrdy commented 5 years ago

Here is a small codeless kext to disable it. AppleMCEReporterDisabler.kext.zip

And also any idea why the kext blocking mechanism of OC is not working for this kext ? and i have also observed that blocking AppleIntelCPUpowermanagement.kext is also not working and due to that i had to use nullcpu kext .

vit9696 commented 5 years ago

I think the issue is in kextd reloading the kext after blocking. It will be nice if you could create a separate bugreport for failing kext blocking with examples of working and not working kext blocks. I think we could try increasing kext version in addition to kmod patching or maybe nulling the constructors…

naveenkrdy commented 5 years ago

@vit9696 sure! will create a seperate bugreport for it.

zhang-wenchao commented 5 years ago

@naveenkrdy Me too. I must needs AppleMCEReporterDisabler.kext and NullCPUPowerManagement.kext. Thank you for your work.

@vit9696 CPUFriend not work

Pavo-IM commented 5 years ago

Well looks like the Disablerkext isn't working for 10.15.1 b3. Guess I'll have to use a different SMBIOS until CPUFriend or something else has figured out how to disable this from getting loaded.

zhang-wenchao commented 5 years ago

My CPU is Intel Xeon Gold 5117,must fackcpuid 0x0306E0 to boot。

mrmiller commented 5 years ago

Are you running OpenCore? I submitted patches a month or so ago that allow Xeon Golds (and others) to boot without a fake CPU ID. That is unrelated to this issue and workaround though.

zhang-wenchao commented 5 years ago

This is causing kernel panic for Ivy Bridge-EP CPUs, If my don't use fakecpuid, 10.15 should work.

Pavo-IM commented 5 years ago

Here is a pic of the new panic of AppleIntelMCEReporter Screenshot 2019-10-26 12 41 03

startergo commented 5 years ago

I can report the same issue in Catalina 10.15.1 with a real MacPro5,1 and iMacPro1.1 board ID. It does not happen in Mojave. Please see here: https://www.insanelymac.com/forum/topic/338516-opencore-discussion/?do=findComment&comment=2697758

Gengik84 commented 4 years ago

HI I know it's not a good solution but for now it's the only way for use some smbios. I avoid KP by simply putting the original kext from S/L/E into EFI's folder. I hope for a better solution and Apple will also fix some bugs about it.

vit9696 commented 4 years ago

Yes, we hope too. I removed the patch from CPUFriend as it does not work anyway, thus closing the issue.

startergo commented 4 years ago

HI I know it's not a good solution but for now it's the only way for use some smbios. I avoid KP by simply putting the original kext from S/L/E into EFI's folder. I hope for a better solution and Apple will also fix some bugs about it.

Please elaborate. To solve the issue you remove the kext from S/L/E and load it from the EFI/Kexts? Or you use some specific kext?

Gengik84 commented 4 years ago

No, you only have to put the original kext into EFI/OC/kext folder. I didn't say to remove any kext from S/L/E.