Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.
It actually just ended up being some kexts I missed copying from High Sierra (ATI*.*). They are responsible for Radeon HD 4xxx and older acceleration.
That makes sense, thanks. It seems mainly Core Image is missing with Mojave on the Radeon 6000, at least when I tried to get it to work. Some choppy animations and no UI translucency.

Very strange that it works on older cards, but not more recent ones.
 
Clamshell mode is messed up because my vslgestalt doesn't actually do anything (in ndrvshim)

Your NDRVShim solution is certainly cleaner, but for those who need an alternate solution, I simply replace
IONDRVSupport.kext
IOGraphicsFamily.kext

And it resolves the same _VSLGestalt symbol error.
[doublepost=1531469166][/doublepost]Also, @dosdude1, congrats on the progress with AMD graphics! Amazing news. I'd love to try it myself but I've only got the one MacBook7,1.

Still working on a cleaner GeForceTesla.kext patch, getting there I think.
 
Like ctaylora123 a few pages back, I am finding it increasingly difficult to build a USB installer. I have just tried with b8 and a 14.0.12 Mojave download to a known good USB and it fails every time on two different macs. And the stick is NOT labelled Untitled. Also the verbose out of the patcher cannot be copied for pasting here.
Just happened a third time—this is a PITA.
 
  • Like
Reactions: Larsvonhier
So about that cleaner patch I mentioned...

Here's the relevant lines in the good old panic log:
Code:
panic(cpu 0 caller 0xffffff80033b3263): "kfree: size 18446743521917493256 > kalloc_largest_allocated 10534912"@/BuildRoot/Library/Caches/com.apple.xbs/Sources/xnu/xnu-4903.200.274.31.2/osfmk/kern/kalloc.c:752
-- snip --
0xffffff8cd4a1bcb0 : 0xffffff80033b3263 mach_kernel : _kfree + 0x103
0xffffff8cd4a1bd00 : 0xffffff8003a101d6 mach_kernel : _IOFree + 0x16
0xffffff8cd4a1bd20 : 0xffffff7f869e0fa5 com.apple.GeForceTesla : __ZN26nvVirtualAddressSpaceTesla4freeEv + 0xbd
In my understanding, the function nvVirtualAddressSpaceTesla::free() is calling IOFree() which is calling kfree(). And it's telling it to free 18446743521917493256 bytes (?) which is wayyyyy too much so it calls panic().

My previous patch deleted (NOP'ed) the entirety of a function a few lines below all this in the stack trace, a function clientClose() which called a function, which called a function, which called the nvVirtualAddressSpaceTesla::free() function above. Excessive.

My new patch just NOP's a single call statement at nvVirtualAddressSpaceTesla::free() + 183. Seems like that's the call to IOFree() that causes the panic, since it hasn't panicked yet!

Not sure if this'll fix some of the instability I saw earlier on my MacBook7,1. We'll have to wait and see. For anybody who's curious, replacement GeForceTesla.kext is attached!
 

Attachments

  • slightly less dumb.zip
    362.6 KB · Views: 655
So about that cleaner patch I mentioned...

Here's the relevant lines in the good old panic log:
Code:
panic(cpu 0 caller 0xffffff80033b3263): "kfree: size 18446743521917493256 > kalloc_largest_allocated 10534912"@/BuildRoot/Library/Caches/com.apple.xbs/Sources/xnu/xnu-4903.200.274.31.2/osfmk/kern/kalloc.c:752
-- snip --
0xffffff8cd4a1bcb0 : 0xffffff80033b3263 mach_kernel : _kfree + 0x103
0xffffff8cd4a1bd00 : 0xffffff8003a101d6 mach_kernel : _IOFree + 0x16
0xffffff8cd4a1bd20 : 0xffffff7f869e0fa5 com.apple.GeForceTesla : __ZN26nvVirtualAddressSpaceTesla4freeEv + 0xbd
In my understanding, the function nvVirtualAddressSpaceTesla::free() is calling IOFree() which is calling kfree(). And it's telling it to free 18446743521917493256 bytes (?) which is wayyyyy too much so it calls panic().

My previous patch deleted (NOP'ed) the entirety of a function a few lines below all this in the stack trace, a function clientClose() which called a function, which called a function, which called the nvVirtualAddressSpaceTesla::free() function above. Excessive.

My new patch just NOP's a single call statement at nvVirtualAddressSpaceTesla::free() + 183. Seems like that's the call to IOFree() that causes the panic, since it hasn't panicked yet!

Not sure if this'll fix some of the instability I saw earlier on my MacBook7,1. We'll have to wait and see. For anybody who's curious, replacement GeForceTesla.kext is attached!

You are amazing, I have just checked you left all the IONVGLContextTesla::clientClose() function
and his related assembler code memory addresses untouched inside the GeforceTesla binary unix exec.

Infact looking back at my KP log with symlinks the CPU KP occurred exactly from this function calling
__ZN26nvVirtualAddressSpaceTesla4freeEv + 0xbd

And then followed by a waterfall errors of:
com.apple.GeForceTesla : __ZN18IONVGLContextTesla4stopEP9IOService + 0x1f6

As almost always the errors are upstream not downstream!!!

Thank you!!!
Will give a try, I am confident you fixed it!


Well, for my test I am using a Mojave beta 2 booting on a MB7,1 from an external USB 2.0 SSD with replaced IOAccelerator from Mojave beta 1 (that I posted on thread page 88).

I'm stressing it right now, with all possible OpenGL native apps opened like: Maps (satellite 3d view), Chess, New App Store, Dashboard's Weather (has bad looking), FaceTime, and many many safari tabs opened with youtube HD music video playlist playback (I'm cheating a bit since I use Adblock), I have Console opened and almost every main MacOS's Dock processes in background opened with high louder speed fans. CPU/GPU temperatures constantly 90/80 °C but who cares this is for a noble cause.
And even with all these background processes on 8 GB RAM available memory used 5,26 GB.
I don't post live proof pictures I am shy, but you can trust what I writing.

edit:

In Console I see very often spindump (ktrace) DBG_DYLD decode error (0: Undefined error: 0) or
DBG_DYLD decode error (3: No such process)

but it does not seem to give much trouble.

edit2:

And first 3/4 hour is gone, lets see...
More than 1h 30m gone, everything went fine until now.
Ok I'm going out, leaving a long yt video playlist running with mute and caffeine turned on. Will let know.

edit3:

Took a glance at Console app, there is no shadow of these messages:

Unable to create basic Accelerated OpenGL renderer.
Core Image is now using the software OpenGL renderer. This will be slow.



Passed 3h 15m now I begun closing Chess, FaceTime, Maps... need to lower CPU/GPU temperatures.

Ok, after 4 hours, I feel to say my stress test has succeeded, and this is the best less invasive GeforceTesla patch we can expect.

Congratulations ASentientBot, you did it!
 
Last edited:
So about that cleaner patch I mentioned...

Here's the relevant lines in the good old panic log:
Code:
panic(cpu 0 caller 0xffffff80033b3263): "kfree: size 18446743521917493256 > kalloc_largest_allocated 10534912"@/BuildRoot/Library/Caches/com.apple.xbs/Sources/xnu/xnu-4903.200.274.31.2/osfmk/kern/kalloc.c:752
-- snip --
0xffffff8cd4a1bcb0 : 0xffffff80033b3263 mach_kernel : _kfree + 0x103
0xffffff8cd4a1bd00 : 0xffffff8003a101d6 mach_kernel : _IOFree + 0x16
0xffffff8cd4a1bd20 : 0xffffff7f869e0fa5 com.apple.GeForceTesla : __ZN26nvVirtualAddressSpaceTesla4freeEv + 0xbd
In my understanding, the function nvVirtualAddressSpaceTesla::free() is calling IOFree() which is calling kfree(). And it's telling it to free 18446743521917493256 bytes (?) which is wayyyyy too much so it calls panic().

My previous patch deleted (NOP'ed) the entirety of a function a few lines below all this in the stack trace, a function clientClose() which called a function, which called a function, which called the nvVirtualAddressSpaceTesla::free() function above. Excessive.

My new patch just NOP's a single call statement at nvVirtualAddressSpaceTesla::free() + 183. Seems like that's the call to IOFree() that causes the panic, since it hasn't panicked yet!

Not sure if this'll fix some of the instability I saw earlier on my MacBook7,1. We'll have to wait and see. For anybody who's curious, replacement GeForceTesla.kext is attached!


So another question is: Where does that huge numer 18446743521917493256 come from when kfree() is called.
Because eleminating the call to IOFree() seems to work but maybe this call is necessary in some case for the system to work proper in long term?

That number isn‘t even in the 64bit number range...
 
Last edited:
For those who installed prior to the 1b8 Mojave Patch, you can install the patch updater quickly this way...

Download the latest patch and mount it
Right click - show package contents -
Find 'macos post install' and right click - show package contents
Drag the patch updater to applications and run
 
So about that cleaner patch I mentioned...

Here's the relevant lines in the good old panic log:
Code:
panic(cpu 0 caller 0xffffff80033b3263): "kfree: size 18446743521917493256 > kalloc_largest_allocated 10534912"@/BuildRoot/Library/Caches/com.apple.xbs/Sources/xnu/xnu-4903.200.274.31.2/osfmk/kern/kalloc.c:752
-- snip --
0xffffff8cd4a1bcb0 : 0xffffff80033b3263 mach_kernel : _kfree + 0x103
0xffffff8cd4a1bd00 : 0xffffff8003a101d6 mach_kernel : _IOFree + 0x16
0xffffff8cd4a1bd20 : 0xffffff7f869e0fa5 com.apple.GeForceTesla : __ZN26nvVirtualAddressSpaceTesla4freeEv + 0xbd
In my understanding, the function nvVirtualAddressSpaceTesla::free() is calling IOFree() which is calling kfree(). And it's telling it to free 18446743521917493256 bytes (?) which is wayyyyy too much so it calls panic().

My previous patch deleted (NOP'ed) the entirety of a function a few lines below all this in the stack trace, a function clientClose() which called a function, which called a function, which called the nvVirtualAddressSpaceTesla::free() function above. Excessive.

My new patch just NOP's a single call statement at nvVirtualAddressSpaceTesla::free() + 183. Seems like that's the call to IOFree() that causes the panic, since it hasn't panicked yet!

Not sure if this'll fix some of the instability I saw earlier on my MacBook7,1. We'll have to wait and see. For anybody who's curious, replacement GeForceTesla.kext is attached!

Is there a way to log function calls such as the call to nvVirtualAddressSpaceTesla::free()?
 
  • Like
Reactions: ASentientBot
Like ctaylora123 a few pages back, I am finding it increasingly difficult to build a USB installer. I have just tried with b8 and a 14.0.12 Mojave download to a known good USB and it fails every time on two different macs. And the stick is NOT labelled Untitled. Also the verbose out of the patcher cannot be copied for pasting here.
Just happened a third time—this is a PITA.

Perhaps I can help because I was able
to get mine to work after all. What my problem was, when the patcher is creating the USB installer, the USB was being renamed to OS X Base System and when the patcher is re-mounting the drive it was still looking for the name that I named the drive, not OS X Basic System. So either you need to name the USB to OS X Base System or if your first go around fails but it renamed the USB drive, just run the patcher again, took me three tries in a row before it completed without any errors .
 
  • Like
Reactions: Larsvonhier
Perhaps I can help because I was able
to get mine to work after all. What my problem was, when the patcher is creating the USB installer, the USB was being renamed to OS X Base System and when the patcher is re-mounting the drive it was still looking for the name that I named the drive, not OS X Basic System. So either you need to name the USB to OS X Base System or if your first go around fails but it renamed the USB drive, just run the patcher again, took me three tries in a row before it completed without any errors .

Normally the patcher should not rename your drive. Perhaps it’s a bug in beta 8. What version did you use?
 
I’ve never experienced that issue or seen anyone else experiencing it. I guess you’re the first case. Hopefully the last as well.
I also think I was the first to have that problem but it seems a another member here is having a similar problem now, and he/she is using beta 8
 
I have this as well, sometimes even depending on the stick (I have two types 8GB). But even if the error occurs, the second attempt always works. So, no worry!

It’s an odd bug that could probably be fixed by updating the patcher to look for the disk indentifier instead of the name.
 
I don't have News app on my MB5,1 and 2017 13 inch MBP ( both running Mojave ). Who could share with that app?
 
I don't have News app on my MB5,1 and 2017 13 inch MBP ( both running Mojave ). Who could share with that app?

It’s only available in the US, UK, and Australia but on Mojave you can simply show hidden files in the Applications folder and then launch it or you can enter “sudo chflags nohidden /Applications/News.app” to un hide it.
 
It’s only available in the US, UK, and Australia but on Mojave you can simply show hidden files in the Applications folder and then launch it or you can enter “sudo chflags nohidden /Applications/News.app” to un hide it.
Thanks
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.