Hi All,
Before I start let me explain that I have been investigating this issue I have on my Mac for 6 months, since I updated to Big Sur macOS 11.x. I have reinstalled and by process of elimination determined that the ONLY difference I have made to my system that has stopped the kernel panics is NOT RUNNING ROON. Note that my Mac (Intel i9 iMac) is running the Roon Core with my media on a QNAP NAS. I have other Macs running Roon bridge on Big Sur that have no such problems.
Also, I’m an electrical engineer and used to develop kernel drivers for a living on multiple platforms. So before someone says “a user space application cannot possibly cause a kernel panic”. Yes I understand that (unless Roon installs a kernel component) the application itself in user space cannot cause a kernel panic. That’s why operating system have a kernel. However the fact remains if I have Roon running I get kernel panics. Sometimes even if I’m not actually playing music (in the middle of the night). But does happen more frequently when I’m playing music.
So while the fault might lay with Apple, there is something about how Roon interacts with the system that causes the kernel panic to manifest.
So a few facts:
- Only started happening after I updated to Bug Sur
- Happens every few days if not using Roon much
- Can happen several times a day if using Roon (randomly)
- macOS updated to 11.4 (latest)
- Music access via SMB mount Music folder
- Have tried SMB and AFP mounts
- Mac is on Ethernet and WiFi
- NAS is on Ethernet
- I’ve done numerous disk checks (all ok)
- Re-installing the OS did not help
The Panic message is the following: (and its always the same error)
panic(cpu 2 caller 0xffffff801cc737da): "m_free: freeing an already freed mbuf"@/System/Volumes/Data/SWE/macOS/BuildRoots/e90674e518/Library/Caches/com.apple.xbs/Sources/xnu/xnu-7195.121.3/bsd/kern/uipc_mbuf.c:4820
Backtrace (CPU 2), Frame : Return Address
0xffffffa15b4c3a70 : 0xffffff801c68e0dd
0xffffffa15b4c3ac0 : 0xffffff801c7d4f33
0xffffffa15b4c3b00 : 0xffffff801c7c552a
0xffffffa15b4c3b50 : 0xffffff801c632a2f
0xffffffa15b4c3b70 : 0xffffff801c68d8fd
0xffffffa15b4c3c90 : 0xffffff801c68dbf3
0xffffffa15b4c3d00 : 0xffffff801ce9d81a
0xffffffa15b4c3d70 : 0xffffff801cc737da
0xffffffa15b4c3e00 : 0xffffff801eee869f
0xffffffa15b4c3e20 : 0xffffff801ef1e8e8
0xffffffa15b4c3e50 : 0xffffff801ef10b4f
0xffffffa15b4c3e80 : 0xffffff801c6d46c5
0xffffffa15b4c3ef0 : 0xffffff801c6d5634
0xffffffa15b4c3fa0 : 0xffffff801c63213e
Kernel Extensions in backtrace:
com.apple.iokit.IONetworkingFamily(3.4)[B6F28D28-0733-3358-B9F0-0825BE36BD88]@0xffffff801eede000->0xffffff801eef4fff
com.apple.iokit.AppleBCM5701Ethernet(11.0)[329C92EC-5105-3A1E-AA56-B00FD389B51D]@0xffffff801ef0c000->0xffffff801ef2ffff
dependency: com.apple.driver.mDNSOffloadUserClient(1.0.1b8)[79AE6F06-4E08-37E8-8509-61104903CF66]@0xffffff801f164000->0xffffff801f168fff
dependency: com.apple.iokit.IOACPIFamily(1.4)[1B2FE91E-3EC7-3ED3-AF6B-E9C4BE29D5E3]@0xffffff801ec42000->0xffffff801ec43fff
dependency: com.apple.iokit.IONetworkingFamily(3.4)[B6F28D28-0733-3358-B9F0-0825BE36BD88]@0xffffff801eede000->0xffffff801eef4fff
dependency: com.apple.iokit.IOPCIFamily(2.9)[99A70889-A31C-3B25-8E88-ADD3F317E4E4]@0xffffff801f16a000->0xffffff801f192fff
dependency: com.apple.iokit.IOTimeSyncFamily(985.2)[5DDE1DBA-D152-3ED9-B6ED-1612F6A8BE88]@0xffffff801f3b8000->0xffffff801f3d3fff
I’ve seen mention of other kernel panics here, but possibly not this exact error. Any ideas welcome. My plan is to migrate the core to a ROCK once I can find a NUC.
I’ve left Roon not running now for many days and its stable as can be. I’ll update this thread with heartfelt apologies if I do still get a crash but so far its good.
The stack trace about implies it could be an incompatibility with the Ethernet interface. But this could be a red herring and it could be deeper in the IP stack. I have no networking issues with any other application.
Another point of interest, Roon appears to mange its own mount point here:
/Users/<user>/Library/RoonMounts/RoonStorage_<guid>
Is this in any way non-standard. It’s using SMB.