Kernel Panic on macOS (crash, reboot)

That’s the issue with projects depending heavily of external libraries and dependencies. Bugs are nearly impossible to fix sometimes.

Everything depends heavily on something else. It has been like this for as long as I remember.

1 Like

True but that doesn’t make what I said wrong. It’s not a bad thing just an issue we have to deal with in Dev.

1 Like

Since I spent a good part of the week the nose in the console, I discovered I had a list of repeating message (every few 30 secs) in the system.log concerning the Chrome Helper :

Libnotify: notify_register_coalesced_registration failed with code 9 on line 2835

Searching some info about this, I ended up running the “Chrome Browser debug logs” (through terminal, which ended up with a long list of Driver Bug workarounds & Problems detected) and all this lead me to an old bug with Chromium (tagged as won't solve).

Thank you :grin: :pray: !

I had this crash multiple times per day.

What ultimately helped was these steps; I am not sure what was the thing that actually fixed it.

It’s now been crash free for one week.
I’d try uninstalling and reinstalling Obsidian, updating to the latest BigSur, and doing the SMP and PRAM vulcan grip exercises.

1 Like

Thanks for the info @elmsfeuer :blush: .

As I just got another KP I might try the Reset SMP and PRAM :woman_shrugging: .

I did Uninstall/Reinstall Obsidian this morning and somehow, it did seem to help :thinking: (Obsidian kind of felt lighter).

The KP happened when I was done for the day (after working on some notes for hours), closed every notes I had opened and just clicked on the on the graph icon in the ribbon, as I wanted to check the graph…

I feel the same but I can’t tell what’s causing it. Maybe just a psych thing but it definitely feels lighter.

Reinstall Obsidian … and somehow, it did seem to help

Sorry to throw cold water on this theory, but I’ve alawys done it that way—always installing from the latest available DMG as a base when it gets released, and then updating the .asar patch file on top to keep things as clean as possible. Despite that, I have still had KPs.

Don’t be sorry @luckman212 :wink: (I might have badly expressed myself) : I run into a KP hours later so, effectively, it didn’t help but I was happily surprise to see how reactive and “lighter” Obsidian seemed to be after uninstalling/reinstalling it :blush: … until the KP …

Did any of you run into a panic with hardware acceleration disabled? Curious if this could be a temporary solution (for us to add a flag to disable hw acceleration)

1 Like

@Licat I believe if you add the option, many more people can easily disable GPU and give us a wider test base. This would really help to confirm that the bug is GPU related.

Switching to Electron 12 could also be key. But too soon to tell. Plus, VSCode is currently based on 11.3.0 (same as Obsidian) and does not seem to be very affected. BUT also they are not using fancy graph views :stuck_out_tongue:

As it is, even though I consider myself an “advanced” user, I rarely run Obsidian with the disable GPU commandline, because on MacOS it’s pretty cumbersome to do it (it’s so easy on Windows!).

1 Like

I rarely run Obsidian with the disable GPU commandline, because on MacOS it’s pretty cumbersome to do it

Kernel panics seem pretty cumbersome. Devs have limited time to dedicate, seems worth getting them a signal rather than asking them to try something in the hopes it fixes things.

Try this keyboard - How can I force command-line arguments to a program shortcut in the dock? - Ask Different

Ok @pmbauer. Yeah of course devs have limited time, but I don’t think anyone can argue against a showstopper like this getting a bit of attention?

I figured out a pretty painless way to disable GPU across the board for anyone who wants to test:

  1. quit Obsidian (:warning:important!)

  2. open Terminal

  3. execute the following (do not include the $ — that’s just the shell prompt)

    $ cd /Applications/Obsidian.app/Contents/MacOS
    $ mv Obsidian Obsidian-nogpu
    $ cat <<EOF >Obsidian
    #!/bin/bash
    /Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu --disable-gpu
    EOF
    $ chmod +x Obsidian
    
  4. Now close the Terminal

This will make it so when Obsidian launches (even from the Dock) it will have the --disable-gpu flag. You will most likely have to repeat this after the app updates itself.

1 Like

I did this on my M1 MacBook Air and now Obsidian doesn’t open anymore. Its stuck in “loading plugin”. If I open It via
/Applications/Obsidian.app/Contents/MacOS/Obsidian --disable-gpu
it still works for some reason.

Anyway, how do I undo what your commands did?

@tim_hilde You can undo by simply deleting the Obsidian.app and downloading a fresh copy.

But, I’m curious why it doesn’t work for you. Were there any errors on the Terminal when you ran the commands? Could you please open Terminal and type these commands and paste the results here?

command 1:

file /Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu

command 2:

file /Applications/Obsidian.app/Contents/MacOS/Obsidian

assuming command 2 prints Bourne-Again shell script text executable, ASCII text then run this 3rd command:

cat /Applications/Obsidian.app/Contents/MacOS/Obsidian

I ran Obsidian with the --disable-gpu for the first time yesterday.

I didn’t actively use it though (I was busy elsewhere), not enough to possibly trigger a KP (that’s what I’m going to test today) but from what I’ve seen, Obsidian was running way better than with the gpu enabled. Obsidian was fast and very reactive, a lot more than “usual” (even if Obsidian has always seem fast to me).

On Obsidian launch (either a normal launch from the dock or with the gpu disabled) I do get these messages from the system.log each time :

Mar 10 12:14:28 My-Mac login[7263]: USER_PROCESS: 7263 ttys000
Mar 10 12:14:35 My-Mac Obsidian Helper (GPU)[7271]: getattrlist failed for /System/Library/Extensions/AppleIntelHD5000GraphicsGLDriver.bundle/Contents/MacOS/AppleIntelHD5000GraphicsGLDriver: #2: No such file or directory
Mar 10 12:14:35 My-Mac Obsidian Helper (GPU)[7271]: getattrlist failed for /System/Library/Frameworks/OpenGL.framework/Resources//GLRendererFloat.bundle/GLRendererFloat: #2: No such file or directory
Mar 10 12:14:36 My-Mac VTDecoderXPCService[7274]: DEPRECATED USE in libdispatch client: Changing the target of a source after it has been activated; set a breakpoint on _dispatch_bug_deprecated to debug
Mar 10 12:14:36 My-Mac VTDecoderXPCService[7274]: DEPRECATED USE in libdispatch client: Changing target queue hierarchy after xpc connection was activated; set a breakpoint on _dispatch_bug_deprecated to debug
Mar 10 12:14:36 My-Mac VTDecoderXPCService[7274]: getattrlist failed for /Library/GPUBundles/AppleIntelHD5000GraphicsVADriver.bundle/Contents/MacOS/AppleIntelHD5000GraphicsVADriver: #2: No such file or directory
Mar 10 12:14:36 My-Mac VTDecoderXPCService[7274]: getattrlist failed for /Library/GPUBundles/AppleIntelHSWVA.bundle/Contents/MacOS/AppleIntelHSWVA: #2: No such file or directory
Mar 10 12:14:36 My-Mac VTDecoderXPCService[7274]: DEPRECATED USE in libdispatch client: Changing the target of a source after it has been activated; set a breakpoint on _dispatch_bug_deprecated to debug
Mar 10 12:14:36 My-Mac VTDecoderXPCService[7274]: DEPRECATED USE in libdispatch client: Changing target queue hierarchy after xpc connection was activated; set a breakpoint on _dispatch_bug_deprecated to debug
Mar 10 12:14:36 My-Mac VTDecoderXPCService[7274]: DEPRECATED USE in libdispatch client: Changing the target of a source after it has been activated; set a breakpoint on _dispatch_bug_deprecated to debug
Mar 10 12:14:36 My-Mac VTDecoderXPCService[7274]: DEPRECATED USE in libdispatch client: Changing target queue hierarchy after xpc connection was activated; set a breakpoint on _dispatch_bug_deprecated to debug

Would there be any messages from the Console I should pay attention to ? :innocent:

I don’t really get error or bug messages except a few with the Obsidian Helper (GPU) after launch because (I guess) it’s trying to access things it can’t (as I launched Obsidian with the gpu disbaled)


Edit : From the Terminal I also get those messages while running Obsidian with --disable-gpu similar to what @tim_hilde got :

2021-03-10 12:55:50.327 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 12:55:50.327 Obsidian Helper (Renderer)[7273:316166] CoreText note: Set a breakpoint on CTFontLogSystemFontNameRequest to debug.
2021-03-10 12:55:50.358 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 12:55:57.136 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 12:56:01.469 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 12:56:01.486 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 12:56:01.507 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:00:29.510 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:00:32.446 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:00:32.457 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:00:32.468 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:00:32.491 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:09.915 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:18.440 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:18.462 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:20.989 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:21.000 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:21.028 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:21.040 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:22.942 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:44.673 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:01:48.314 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:02:55.801 Obsidian[7270:316069] Incorrect NSStringEncoding value 0x8000100 detected. Assuming NSASCIIStringEncoding. Will stop this compatibility mapping behavior in the near future.
2021-03-10 13:02:55.801 Obsidian[7270:316069] Incorrect NSStringEncoding value 0x8000100 detected. Assuming NSASCIIStringEncoding. Will stop this compatibility mapping behavior in the near future.
2021-03-10 13:03:02.383 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:03:02.423 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:03:07.457 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:03:07.511 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:03:07.554 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:03:07.586 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:42.497 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:42.516 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:42.528 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:45.429 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:50.181 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:50.388 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:50.540 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:50.690 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:50.851 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:51.003 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:51.163 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:51.315 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:51.588 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2021-03-10 13:06:55.095 Obsidian Helper (Renderer)[7273:316166] CoreText note: Client requested name ".AppleSymbolsFB", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].

I don’t really know what trigger them because these type of messages stop appearing at some point (and I doubt some font troubles would end up in a KP)

Your first command returns this:

/Applications/Obsidian.app/Contents/MacOS/Obsidian/Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu: cannot open `/Applications/Obsidian.app/Contents/MacOS/Obsidian/Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu' (Not a directory)

@tim_hilde whoa. sorry that is wrong. Not sure how that duplicate path got in there but I edited my post. Please try again!

Haha :smiley:
Now it worked:

Command 1:

/Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64] [arm64:Mach-O 64-bit executable arm64]
/Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu (for architecture x86_64):	Mach-O 64-bit executable x86_64
/Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu (for architecture arm64):	Mach-O 64-bit executable arm64

Command 2:

/Applications/Obsidian.app/Contents/MacOS/Obsidian: Bourne-Again shell script text executable, ASCII text

Command 3:

/Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu --disable-gpu```

@tim_hilde Ok, that last command revealed the problem. That file is missing the header line (shebang) and has 3 backticks at the end that shouldn’t be there. The file contents of Obsidian should be:

#!/bin/bash
/Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu --disable-gpu

Please try running the cat <<EOF... part again. Just copy & paste these 3 lines, carefully, one at a time:

cat <<EOF >Obsidian
#!/bin/bash
/Applications/Obsidian.app/Contents/MacOS/Obsidian-nogpu --disable-gpu

Then type EOF and hit ENTER

Then run cat /Applications/Obsidian.app/Contents/MacOS/Obsidian again and verify that the contents are correct. Now try launching Obsidian.