panic(cpu 5 caller 0xfffffe0024e44538): Spinlock[0xfffffe299a622040] timeout after 12606975 ticks; current state: 0x2247, start time: 206117468927, now: 206130075902, timeout: 12582912 @locks.c:723
Spinlock timeout. A spinlock is where one CPU is spinning in a tight lookup checking a lock bit, while another thread running on another CPU owns the lock, and when it finishes using the lock data structure, it is suppose to clear the lock, at which time the spinning CPU will grab it.
Spinlocks are suppose to be for very fast locking activities, where the data structure being locks will be modified, quickly and the lock released.
In this case the thread that took the spinlock, did not unlock it quickly. Eventually the CPU spinning on the lock, incremented a counter to a value sufficiently large that it decided the lock was never going to be unlocked, and triggered a kernel panic.
Yes, this is again in the graphic drivers. But in a different place
Kernel Extensions in backtrace:
com.apple.iokit.IOGPUFamily
dependency: com.apple.driver.AppleMobileFileIntegrity
dependency: com.apple.iokit.IOGraphicsFamily
dependency: com.apple.iokit.IOPCIFamily
dependency: com.apple.iokit.IOReportFamily
dependency: com.apple.iokit.IOSurface
com.apple.AGXG13X
dependency: com.apple.driver.AppleARMPlatform
dependency: com.apple.driver.AppleMobileFileIntegrity
dependency: com.apple.driver.RTBuddy
dependency: com.apple.iokit.CoreAnalyticsFamily
dependency: com.apple.iokit.IOGPUFamily
dependency: com.apple.iokit.IOReportFamily
dependency: com.apple.iokit.IOSurface
dependency: com.apple.kec.Libm
It could still be software, but I am currently leaning towards hardware. There are some very strict rules about using spinlocks among kernel programmers, and taking a long lunch is not one of them.
This could be a memory failure, as well as GPU, or CPU failure. In the case of memory, if the thread holding the lock actually unlocked, it but the bit change did not take effect, or the cache was not invalidated so other CPU's could see the change, or lots of other reasons that bit change was not seen by the CPU spinning on the lock, so it timed out.
Again, I'm just leaning towards hardware. I do not have nearly enough M1 Pro experience to make a strong claim.
Apple's return policy during Christmas is anything purchased after November 1st until Christmas, can be return before January 8th, 2022.
https://www.apple.com/shop/help/returns_refund