Jump to content

Mavericks kernel testing on AMD (formerly Mountain Lion kernel testing on AMD)

Mountain Lion AMD legacy kernel x64_86 ssse3 ssse3 emulator

  • Please log in to reply
6296 replies to this topic

#321
Shaneee

Shaneee

    AMD Dev Tester

  • Local Moderators
  • 1,002 posts
  • Gender:Male
  • Location:Scotland
  • Interests:Web Design. OS X. Music.

Problem to load corecrypto.kext


Yes the same one. I tried the Lion AMD kernel on the off chance but the same thing happens.

#322
spakk

spakk

    If you try to please everyone, then you have certainly forgotten

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,847 posts
  • Gender:Male
  • Location:português

Also tried it on an old P4 CPU and the panic on that is "can't preform kext scan: no kext summary" the rest of the screen is the same as above.


that's the problem we all have ins this time. we have to wait. theconnatic works on a new kernel.

#323
spakk

spakk

    If you try to please everyone, then you have certainly forgotten

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,847 posts
  • Gender:Male
  • Location:português
@ theconnatic here more information about the work of Ricardo Catalinas Jiménez, see the following links ----->

patch-AuthenticAMD
====================

Utility to patch binaries generated by the Intel C++ Compiler to get the maximum performance on AMD
CPUs.

The Intel C++ Compiler adds to generated binaries a CPUID test that looks if they are executed on a
Intel CPU, so the binaries don't run with full optimizations on non-Intel CPUs. This utility patches
such CPUID tests, so the binaries can run on an AMD CPU as if they were on a Intel CPU................

https://github.com/j...-AuthenticAMD.c

https://github.com/j...ch-AuthenticAMD

https://github.com/j...icAMD/downloads

I hope this information will help us further.

It would be good if other experienced programmers would participate.

#324
AlliGator

AlliGator

    InsanelyMac Protégé

  • Members
  • Pip
  • 11 posts
  • Gender:Male
  • Location:Egypt
what is the different of AMD SSE3 and the Intel one and if both are the same why the stupid kernel doesn't work ... plus isn't the kernel source is available how we can't find a developer to make it working ! is it the lack of C programming or the Lack of Smart way to work this thing out of the box with AMD CPUs ?

#325
kverbr2

kverbr2

    InsanelyMac Protégé

  • Members
  • Pip
  • 2 posts

what is the different of AMD SSE3 and the Intel one and if both are the same why the stupid kernel doesn't work ... plus isn't the kernel source is available how we can't find a developer to make it working ! is it the lack of C programming or the Lack of Smart way to work this thing out of the box with AMD CPUs ?

SSE3
SSSE3

Much of the kernel is open source but there are binaries of which source code is not available. It's not exactly an easy task to find every single reference to every function or call and replace them with not just AMD friendly, but alternative hardware friendly code. Even if you patch the main routines there's still the matter of finding all subroutines and testing.

A few capable people are working on it...

#326
Donk

Donk

    InsanelyMac Deity

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,951 posts
  • Gender:Male
  • Location:Manchester UK

what is the different of AMD SSE3 and the Intel one and if both are the same why the stupid kernel doesn't work ... plus isn't the kernel source is available how we can't find a developer to make it working ! is it the lack of C programming or the Lack of Smart way to work this thing out of the box with AMD CPUs ?


You need to do at least 5 different things. Just patching the kernel source is not enough.
  • Fix xnu kernel to not use SSSE3 instruction and has been documented and done before.
  • Fix xnu kernel wherever it calls the CPUID instruction and makes use of the returned vendor string and possibly other CPUID nodes. Again this has been done before.
  • Fix any other Intel logic such as power management, to use AMD specs. Patches have been done previously.
  • Write a kernel trap to process SSSE3 opcodes from the invalid trap handler. This is so binaries where there is no source code can function correctly if they make use of the SSSE3 instructions. Hard and not much source code available.
  • Statically patch or dynamically patch binaries as they load to remove CPUID instructions with Intel specific requirements. Has been done before.
There may well be other things to look at but this is the minimum from my studying this over the past few years. All together this is not a simple project, and will take time. There is a new book out that may help those working on the project http://www.amazon.co...51670916&sr=8-1

#327
SS01

SS01

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 265 posts
  • Gender:Male
  • Location:Ottawa

You need to do at least 5 different things. Just patching the kernel source is not enough.

  • Fix xnu kernel to not use SSSE3 instruction and has been documented and done before.
  • Fix xnu kernel wherever it calls the CPUID instruction and makes use of the returned vendor string and possibly other CPUID nodes. Again this has been done before.
  • Fix any other Intel logic such as power management, to use AMD specs. Patches have been done previously.
  • Write a kernel trap to process SSSE3 opcodes from the invalid trap handler. This is so binaries where there is no source code can function correctly if they make use of the SSSE3 instructions. Hard and not much source code available.
  • Statically patch or dynamically patch binaries as they load to remove CPUID instructions with Intel specific requirements. Has been done before.
There may well be other things to look at but this is the minimum from my studying this over the past few years. All together this is not a simple project, and will take time. There is a new book out that may help those working on the project http://www.amazon.co...51670916&sr=8-1

1. Please show us where this has been documented

2. Look at post #324

3. NullCPUPowerManagement / EvilAppleIntelCPUPowerManagement

4. I know, this is pretty much where we're stuck

5. I think meklort told us how to do this before, actually

If we focus on Bulldozer/Trinity/Bobcat/Piledriver only for the moment, we need to change 1 to "Solve the 64-bit instant reboot problem" and get rid of 4. Heh, look at how much easier that made things..

#328
Donk

Donk

    InsanelyMac Deity

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,951 posts
  • Gender:Male
  • Location:Manchester UK
Well was replying to the poster who seemed to imply it was easy, and wanted to point out that it isn't, and those working on it going to have a big, but very interesting, job getting it working.

1. This is the change to the bcopy.s routine that has been in other patches for Snow Leopard and Lion. Assembler change to xnu source code. http://tgwbd.org/darwin/xnu.html
2. This is a source code change to xnu and is in the C code
3. Well there are other things such as MSR and TSC related code that are CPU specific and need changing in the xnu C code. (For example cpu.c and tsc.c)
4. I haven't seen any code for this, but am still looking to find something that would help. I did think about qemu code but haven't really looked in detail.
5. Actually AndyV's work in post #324 really applies to this issue on fixing CPUID in Mach-O format executables. This is a static patcher rather than dynamic, and would mean if a 3rd party app used SSSE3 or indeed SSE4 it would likely panic when the opcode was executed. Meklort and others built a dyld patch, no source, that fixed this up on loading the executable.

For a Bulldozer CPU 2,3 and 5 would be needed. For those AMD processors without SSSE3, 1 and 4 are also required.

I don't have access to an AMD machine, but I have had an idea using VMware to see if masking the vCPU CPUID would work. This would at least see if an AMD Bulldozer CPU could boot by masking out AMD string from CPUID. I will need to have a bit more of a think about it, but may help see if the other CPUID values work. It's a bit of a long shot and if I think it is possible would need someone with AMD Bulldozer SVM enabled CPU..

#329
spakk

spakk

    If you try to please everyone, then you have certainly forgotten

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,847 posts
  • Gender:Male
  • Location:português

Well was replying to the poster who seemed to imply it was easy, and wanted to point out that it isn't, and those working on it going to have a big, but very interesting, job getting it working.

1. This is the change to the bcopy.s routine that has been in other patches for Snow Leopard and Lion. Assembler change to xnu source code. http://tgwbd.org/darwin/xnu.html
2. This is a source code change to xnu and is in the C code
3. Well there are other things such as MSR and TSC related code that are CPU specific and need changing in the xnu C code. (For example cpu.c and tsc.c)
4. I haven't seen any code for this, but am still looking to find something that would help. I did think about qemu code but haven't really looked in detail.
5. Actually AndyV's work in post #324 really applies to this issue on fixing CPUID in Mach-O format executables. This is a static patcher rather than dynamic, and would mean if a 3rd party app used SSSE3 or indeed SSE4 it would likely panic when the opcode was executed. Meklort and others built a dyld patch, no source, that fixed this up on loading the executable.

For a Bulldozer CPU 2,3 and 5 would be needed. For those AMD processors without SSSE3, 1 and 4 are also required.

I don't have access to an AMD machine, but I have had an idea using VMware to see if masking the vCPU CPUID would work. This would at least see if an AMD Bulldozer CPU could boot by masking out AMD string from CPUID. I will need to have a bit more of a think about it, but may help see if the other CPUID values work. It's a bit of a long shot and if I think it is possible would need someone with AMD Bulldozer SVM enabled CPU..



As everyone here knows, I have no experience with programming. I want to learn, but I'm unfortunately very slow.

I have a few suggestions:

There should be more experienced programmers to participate in this project and participate.

The tasks should be allocated accordingly. For if only a programmer working alone on this project, the risk of failure is too great, it would be very unfortunate. Therefore, a team can be formed.

If I understand the basic idea of theconnatic correctly, the work will be published here.
If that is so, then all the main innovations of the project are of great importance, are always placed on the first page. Thus, each has the opportunity to see the current status of the project at a glance and if necessary to take a position.

We will see what will theconnatic say. (sorry for my bad english)

#330
spakk

spakk

    If you try to please everyone, then you have certainly forgotten

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,847 posts
  • Gender:Male
  • Location:português
Should the project not be possible until the end of the year, so I'll replace my Phenom II X6 1100T CPU with an AMD FX8350. :wink2:


AMD FX-8350, 8x 4.00GHz, boxed (FD8350FRHKBOX) Price €175,71

8-core "Vishera" • TDP: 125W • Manufacturing process: 32nm • L2 cache: 4x • 2MB shared L3 Cache: 8MB shared • HyperTransport: 5.2GT / s • Memory controller: Dual Channel PC3-14900U (DDR3-1866) , ECC support • Stepping: C0 • XOP, FMA3, FMA4, F16C, BMI, TBM, SSSE3, SSE4.1, SSE4.2, AVX, AES-NI, CLMUL, NX bit, AMD64, AMD-V, Turbo Core 2.0 (4.20GHz) • unlocked multiplier

UPC code: 0730143302517




http://www.gigabyte....p.aspx?pid=3894

#331
spakk

spakk

    If you try to please everyone, then you have certainly forgotten

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,847 posts
  • Gender:Male
  • Location:português
I have read with IDA kernel "connatic". I have a question, how can we solve the problem with "panic (cpu 0 caller 0xffffff80002871b7)" pmap_steal_memory "@ / Users / Jimihendrix / Desktop / XNUPATCHED / osfmk / vm / vm_resident.c: 757"?. see Kernel Panic #297

see here
http://www.workuploa...m/image/blWzhXq

#332
dmazar

dmazar

    InsanelyMac Sage

  • Coders
  • 271 posts
  • Gender:Male
pmap_steal_memory happens when there is not enough memory for the system after kernel image. When you boot with -x then memory is limited to first 4GB, but ML kernel will stop looking for more memory as soon as it finds region that is above that 4GB in that case (i386_vm_init.c, line 424). Maybe your BIOS memmap contains unsorted regions and that breaks the iterating of memory regions too early and you end up with no memory. You may check this by booting to OSX and using DarwinDumper to dump FirmwareMemoryMap.

#333
SS01

SS01

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 265 posts
  • Gender:Male
  • Location:Ottawa
dmazar: p

pmap_steal_memory happens when there is not enough memory for the system after kernel image. When you boot with -x then memory is limited to first 4GB, but ML kernel will stop looking for more memory as soon as it finds region that is above that 4GB in that case (i386_vm_init.c, line 424). Maybe your BIOS memmap contains unsorted regions and that breaks the iterating of memory regions too early and you end up with no memory. You may check this by booting to OSX and using DarwinDumper to dump FirmwareMemoryMap.

From what I can tell, this is not related to AMD, but is rather a relatively common BSD problem. from openbsd: http://nixdoc.net/ma...IONAL FUNCTIONS

#334
spakk

spakk

    If you try to please everyone, then you have certainly forgotten

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,847 posts
  • Gender:Male
  • Location:português

pmap_steal_memory happens when there is not enough memory for the system after kernel image. When you boot with -x then memory is limited to first 4GB, but ML kernel will stop looking for more memory as soon as it finds region that is above that 4GB in that case (i386_vm_init.c, line 424). Maybe your BIOS memmap contains unsorted regions and that breaks the iterating of memory regions too early and you end up with no memory. You may check this by booting to OSX and using DarwinDumper to dump FirmwareMemoryMap.


I have read the kernel from connatic with IDA Pro interactive and I wonder if any of the kernels produce a fault has arisen?
see here
http://www.workupload.com/file/vhF1R31

#335
zchef2k

zchef2k

    InsanelyMac Protégé

  • Members
  • PipPip
  • 79 posts
Can someone remind me how to unban from irc.osx86.hu? I think my IP's been blocked, not my nick.

#336
theconnactic

theconnactic

    Stubborn AMD user

  • Local Moderators
  • 2,907 posts
  • Gender:Male

Can someone remind me how to unban from irc.osx86.hu? I think my IP's been blocked, not my nick.


Why do you think you've been banned?

The servers have been down these days.

#337
dmazar

dmazar

    InsanelyMac Sage

  • Coders
  • 271 posts
  • Gender:Male

From what I can tell, this is not related to AMD, but is rather a relatively common BSD problem. from openbsd: http://nixdoc.net/ma...IONAL FUNCTIONS

Yes, it's not related to AMD. I had pmam_steal_memory KPs when doing OSX UEFI boot and had to "shrink" the memmap passed to kernel to fix it. As I said, spakk's BIOS probably provides unsorted memory regions in memmap, Chameleon passes that to kernel and kernel breaks from processing the whole memory map (if -x flag is used) and he ends up with KP because of no memory. Just my guess.

#338
spakk

spakk

    If you try to please everyone, then you have certainly forgotten

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,847 posts
  • Gender:Male
  • Location:português

Yes, it's not related to AMD. I had pmam_steal_memory KPs when doing OSX UEFI boot and had to "shrink" the memmap passed to kernel to fix it. As I said, spakk's BIOS probably provides unsorted memory regions in memmap, Chameleon passes that to kernel and kernel breaks from processing the whole memory map (if -x flag is used) and he ends up with KP because of no memory. Just my guess.



what must I do so that no kernel panic message "pmam_steal_memory" comes.
As bootloader I use cparm, should I perhaps install Chameleon bootloader?. ..... If yes, what version and settings should I do?)

thx for your answer

Can someone remind me how to unban from irc.osx86.hu? I think my IP's been blocked, not my nick.




I have the same problem, I have several times tried to sign me, unfortunately without success.



eventually I gave up. :|

#339
SS01

SS01

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 265 posts
  • Gender:Male
  • Location:Ottawa

what must I do so that no kernel panic message "pmam_steal_memory" comes.
As bootloader I use cparm, should I perhaps install Chameleon bootloader?. ..... If yes, what version and settings should I do?)

thx for your answer





I have the same problem, I have several times tried to sign me, unfortunately without success.



eventually I gave up. Posted Image

yes, switch to chameleon, boot with latest connactic kernel

irc.osx86.hu has been down these days, in the meantime we can switch to irc.systemnet.info, again on #LegacyKernel

#340
dmazar

dmazar

    InsanelyMac Sage

  • Coders
  • 271 posts
  • Gender:Male
cparm's branch is Chameleon. Changing branch would not change anything. But, it is even not clear if what I write you is correct. Can you dump FirmwareMemoryMap with DarwinDumper?
And, do you need to use -x switch?





Also tagged with one or more of these keywords: Mountain Lion, AMD, legacy kernel, x64_86, ssse3, ssse3 emulator


4 user(s) are reading this topic

1 members, 3 guests, 0 anonymous users


© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy