Jump to content
Welcome to InsanelyMac Forum

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.


  • Content count

  • Joined

  • Last visited

About axmanA

  • Rank
    InsanelyMac Protégé
  1. Hi Tora Chi Yo, I uploaded the yosemite version in post 240 http://www.insanelymac.com/forum/topic/302075-amd-yosemite-kernel-testing-for-help-use-the-help-topic/page-14?do=findComment&comment=2092065. I have no clue why it isn't there anymore and all other files I uploaded are gone. So I reupload it now. regards IOPCIFamily.zip
  2. Hi Gismo, maybe modified IOPCIFamily.kext helps against this.
  3. Hi Mohamed, you are right. My rig didn't boot either. The panic is resolved by patching additional bytes. Known before: "\xBE\x8F\x00\x00\x00" => "\xBE\x6F\x00\x00\x00" "\xBA\x70\x00\x00\x00" => "\xBA\x90\x00\x00\x00" additional bytes: "\xBE\x60\x00\x00\x00\xBA\x10\x00\x00\x00" => "\xBE\x40\x00\x00\x00\xBA\x10\x00\x00\x00" With this change my rig boots up fine. This time there is a gap between the offsets. So boot time patching with clover becomes more difficult. The whole sequence in original is (IOPCIFamily of 10.9.4): be 6f 00 00 00 mov $0x6f,%esi ba 90 00 00 00 mov $0x90,%edx e8 23 36 01 00 callq 17bc2 <__ZN32IOPCIMessagedInterruptController4initEjj> 84 c0 test %al,%al 74 65 je 4608 <__ZN11IOPCIBridge8configOpEP9IOServicemPvS2_+0x256> 48 89 df mov %rbx,%rdi be 0f 00 00 00 mov $0xf,%esi ba 04 00 00 00 mov $0x4,%edx e8 bf 3e 01 00 callq 18474 <__ZN32IOPCIMessagedInterruptController14reserveVectorsEjj> 41 88 c6 mov %al,%r14b 48 89 df mov %rbx,%rdi be 60 00 00 00 mov $0x60,%esi ba 10 00 00 00 mov $0x10,%edx
  4. Hi Mohamed, i do not use clover and will test with resulting kext from the perl script. regards
  5. Hi, after realizing my stupidity I wrote a little perl for binpatching IOPCIFamily. It is used like this ./patchIOPCIFamily.pl IOPCIFamily where IOPCIFamily is the binary in IOPCIFamily.kext. Result is a IOPCIFamily_modified that have to be renamed. Then set right permissions. The modified Bytes are: "\xBE\x8F\x00\x00\x00" => "\xBE\x6F\x00\x00\x00" "\xBA\x70\x00\x00\x00" => "\xBA\x90\x00\x00\x00" hope that helps patchIOPCIFamily.zip
  6. Hi Mohamed, I did as you suggested and the essence is this: --- IOPCIFamily_0x70_hex 2014-07-14 07:08:41.000000000 +0000 +++ IOPCIFamily_0x90_hex 2014-07-14 07:08:53.000000000 +0000 @@ -1836,10 +1836,10 @@ 0074160 c789 8948 8045 a5e8 0254 4800 458b 4880 0074200 4589 48a8 7d81 00a8 0000 0f00 3384 0000 -0074220 be00 008f 0000 70ba 0000 4800 7d8b e8a8 +0074220 be00 006f 0000 90ba 0000 4800 7d8b e8a8 0074240 54ec 0002 01a8 850f 0018 0000 8b48 a845 0074260 8948 48c1 008b 8948 ffcf 2850 c748 a845 0074300 0000 0000 8148 a87d 0000 0000 840f 0048 -0074320 0000 0fbe 0000 ba00 0004 0000 8b48 a87d -0074340 6be8 0267 be00 0060 0000 10ba 0000 2400 +0074320 0000 efbe ffff baff 0004 0000 8b48 a87d +0074340 6be8 0267 be00 0040 0000 10ba 0000 2400 0074360 8801 b745 8b48 a87d 53e8 0267 2400 0f01 0074400 d0b6 458a 24b7 0f01 f0b6 d621 fe81 0000 but I cannot find these bytes in the original binary ;-| May be you can use. Regards
  7. nvidia, maybe others channel exceptions ... Hi all, I apologize if this is the wrong forum for this and would appreciate appropriate advice. Using AMD kernels for a long time AMD kernel developers deserve my deep respect and I want to pay something back. I have lost QE/CI since 10.9.2 and found replacing IOPCIFamily.kext and AppleACPIPlatform.kext to be the cure. I was digging deeper and realized following facts: - it is not kernel related - nvidia has changed default interrupt mode to msi in the past - apple has changed msi interrupt base from 0x90 to 0x70 in IOPCIFamily-224 (used in 10.9.2) in 10.9.1 it was 0x90 - my rig reports 03.07.14 21:05:18,000 kernel[0]: IOAPIC: Version 0x21 Vectors 88:119 03.07.14 21:05:18,000 kernel[0]: IOAPIC: Version 0x21 Vectors 64:87 So IOAPIC vectors cover a range from 0x40 to 0x78 overlapping the new msi basevalue. - modifying IOPCIFamily-224 (after release of code) to the old value revealed that QE/CI came back in a almost vanilla OSX 10.9.2 Attached is a patch and a binary version of IOPCIFamily.kext. I introduced a boot argument 'msibase=0xAB' to it. This kext let me do all updates from 10.9.1 to 10.9.4 with retaining QE/CI just replacing it and nothing else. It expects a parameter as in 'msibase=0x90' (the value I use) specifying the value the base vector should take. A value of 0x00 effectively disables the use of message based interrupts. If someone would confirm my facts, I would be glad. Otherwise try to just forget this post or delete it by an administrator. Please excuse me, if this post is misplaced and is of no interest to anyone. best regards IOPCIFamily.zip