Orama-Interactive / Pixelorama

Unleash your creativity with Pixelorama, a powerful and accessible open-source pixel art multitool. Whether you want to create sprites, tiles, animations, or just express yourself in the language of pixel art, this software will realize your pixel-perfect dreams with a vast toolbox of features. Available on Windows, Linux, macOS and the Web!
https://orama-interactive.itch.io/pixelorama
MIT License
7.06k stars 381 forks source link

Pixelorama causes a kernel panic on Mac OS 11.4 (Apple Silicon) #491

Closed gelvinp closed 2 years ago

gelvinp commented 3 years ago

Pixelorama version: v0.8.3

OS/device including version: M1 MacBook Pro 13 inch with Mac OS Big Sur 11.4

Issue description: First, I tried to just download the .dmg release, but Mac OS refused to open the .app (claiming it had been modified after signing and thus was corrupt). So I downloaded the source tarball, opened it in Godot, built the project for Mac OS runnable, and opened the resulting .app

My computer immediately restarted due to a kernel panic. The stack trace of which is below:

panic(cpu 5 caller 0xfffffe0023650888): Kernel data abort. at pc 0xfffffe002539e9d4, lr 0xfffffe0024ff7c9c (saved state: 0xfffffe3fea173320)
      x0: 0x0000000000000000  x1:  0x0000000000000000  x2:  0xfffffe16842dc005  x3:  0xfffffe16842dc7d0
      x4: 0xfffffe16842dc480  x5:  0x000000000019e373  x6:  0x0000000000000000  x7:  0x0000000000000000
      x8: 0x3cef36173e48003d  x9:  0x3cef36173e48003d  x10: 0x0000000000002d12  x11: 0xfffffe8c7f5d677c
      x12: 0x00000000f85a10b7 x13: 0x0000000000002d12  x14: 0xfffffe16842f2150  x15: 0x0000000000000002
      x16: 0xfffffe002539e9d4 x17: 0xfffffe0025e05e90  x18: 0x0000000000000000  x19: 0x0000000000000000
      x20: 0x0000000000000000 x21: 0xfffffe16842f2148  x22: 0xfffffe232ea94d68  x23: 0x0000000000000003
      x24: 0xfffffe232ea94c00 x25: 0x0000000000000000  x26: 0xfffffe0022b2c7da  x27: 0xfffffe0022b2c7f3
      x28: 0xfffffe0022b2c802 fp:  0xfffffe3fea173790  lr:  0xfffffe0024ff7c9c  sp:  0xfffffe3fea173670
      pc:  0xfffffe002539e9d4 cpsr: 0x60401208         esr: 0x96000006          far: 0x00000000000000c0

Debugger message: panic
Memory ID: 0x6
OS release type: User
OS version: 20F71
Kernel version: Darwin Kernel Version 20.5.0: Sat May  8 05:10:31 PDT 2021; root:xnu-7195.121.3~9/RELEASE_ARM64_T8101
Fileset Kernelcache UUID: FB10CC0AB8BAC020BC47A50D64476F11
Kernel UUID: 07259C53-9EF7-32FF-821D-8F28A5985DFA
iBoot version: iBoot-6723.120.36
secure boot?: YES
Paniclog version: 13
KernelCache slide: 0x000000001b234000
KernelCache base:  0xfffffe0022238000
Kernel slide:      0x000000001bd7c000
Kernel text base:  0xfffffe0022d80000
Kernel text exec base:  0xfffffe0022e4c000
mach_absolute_time: 0x460e095771f
Epoch Time:        sec       usec
  Boot    : 0x60b045a9 0x000b6b41
  Sleep   : 0x60bab893 0x0004a834
  Wake    : 0x60bab8b3 0x000cf6ac
  Calendar: 0x60babc02 0x00005922

CORE 0 recently retired instr at 0xfffffe0022fbe6f4
CORE 1 recently retired instr at 0xfffffe0022fbe6f4
CORE 2 recently retired instr at 0xfffffe0022fbe6f4
CORE 3 recently retired instr at 0xfffffe0022fbe6f4
CORE 4 recently retired instr at 0xfffffe0022fbe6f8
CORE 5 recently retired instr at 0xfffffe0022fbd240
CORE 6 recently retired instr at 0xfffffe0022fbe6f8
CORE 7 recently retired instr at 0xfffffe0022fbe6f8
Panicked task 0xfffffe16883cadb8: 3014 pages, 10 threads: pid 58201: Pixelorama
Panicked thread: 0xfffffe1681a42ca0, backtrace: 0xfffffe3fea172a90, tid: 1696627
          lr: 0xfffffe0022e9abe4  fp: 0xfffffe3fea172b00
          lr: 0xfffffe0022e9a9c8  fp: 0xfffffe3fea172b70
          lr: 0xfffffe0022fc3a70  fp: 0xfffffe3fea172b90
          lr: 0xfffffe0022fb52b8  fp: 0xfffffe3fea172c40
          lr: 0xfffffe0022e537e8  fp: 0xfffffe3fea172c50
          lr: 0xfffffe0022e9a658  fp: 0xfffffe3fea172fe0
          lr: 0xfffffe0022e9a658  fp: 0xfffffe3fea173050
          lr: 0xfffffe002364c3e8  fp: 0xfffffe3fea173070
          lr: 0xfffffe0023650888  fp: 0xfffffe3fea1731e0
          lr: 0xfffffe0022fb7294  fp: 0xfffffe3fea173250
          lr: 0xfffffe0022fb51e0  fp: 0xfffffe3fea173300
          lr: 0xfffffe0022e537e8  fp: 0xfffffe3fea173310
          lr: 0xfffffe0024ff7c9c  fp: 0xfffffe3fea173790
          lr: 0xfffffe0024ff7e38  fp: 0xfffffe3fea1737c0
          lr: 0xfffffe0024ff6b10  fp: 0xfffffe3fea173810
          lr: 0xfffffe0024ff71b4  fp: 0xfffffe3fea173840
          lr: 0xfffffe0024ff3664  fp: 0xfffffe3fea1738c0
          lr: 0xfffffe00235b52f0  fp: 0xfffffe3fea173920
          lr: 0xfffffe00235c283c  fp: 0xfffffe3fea173ab0
          lr: 0xfffffe0022f86774  fp: 0xfffffe3fea173bd0
          lr: 0xfffffe0022ea032c  fp: 0xfffffe3fea173c40
          lr: 0xfffffe0022e7799c  fp: 0xfffffe3fea173cc0
          lr: 0xfffffe0022e907f0  fp: 0xfffffe3fea173d70
          lr: 0xfffffe0022fa9c40  fp: 0xfffffe3fea173e40
          lr: 0xfffffe0022fb5334  fp: 0xfffffe3fea173ef0
          lr: 0xfffffe0022e537e8  fp: 0xfffffe3fea173f00
      Kernel Extensions in backtrace:
         com.apple.iokit.IOGPUFamily(21.11)[1FC3BECE-B64C-3CC2-B6DE-6EFAD22041A7]@0xfffffe0024ff0000->0xfffffe002501ffff
            dependency: com.apple.driver.AppleMobileFileIntegrity(1.0.5)[B2DD6703-7E5B-391D-AD61-0C396497EF9C]@0xfffffe0024124000->0xfffffe0024137fff
            dependency: com.apple.iokit.IOGraphicsFamily(585.1)[BCBE280A-D633-3655-B93E-873A580D8F9D]@0xfffffe0025020000->0xfffffe0025057fff
            dependency: com.apple.iokit.IOPCIFamily(2.9)[B0CD5169-B0A8-3682-BB05-ADBC1D65D831]@0xfffffe00252a0000->0xfffffe00252bbfff
            dependency: com.apple.iokit.IOReportFamily(47)[A0C25545-295B-3538-AA20-D7ED2DFACC78]@0xfffffe00252bc000->0xfffffe00252bffff
            dependency: com.apple.iokit.IOSurface(290.8.1)[C5FD4B4A-C048-353D-BE45-72BEF2BE75BE]@0xfffffe0025390000->0xfffffe00253affff

last started kext at 229605777202: com.apple.filesystems.smbfs  3.6 (addr 0xfffffe0022d54000, size 65536)
loaded kexts:
com.apple.filesystems.smbfs 3.6
com.apple.driver.usb.AppleUSBHostBillboardDevice    1.0
com.apple.driver.AppleTopCaseHIDEventDriver 4050.1
com.apple.filesystems.autofs    3.0
com.apple.fileutil  20.036.15
com.apple.iokit.IOBluetoothSerialManager    8.0.5d7
com.apple.driver.AppleBiometricServices 1
com.apple.driver.BCMWLANFirmware4378.Hashstore  1
com.apple.driver.CoreKDL    1
com.apple.driver.SEPHibernation 1
com.apple.driver.AppleUSBDeviceNCM  5.0.0
com.apple.driver.DiskImages.ReadWriteDiskImage  493.0.0
com.apple.driver.DiskImages.UDIFDiskImage   493.0.0
com.apple.driver.DiskImages.RAMBackingStore 493.0.0
com.apple.driver.DiskImages.FileBackingStore    493.0.0
com.apple.driver.AppleThunderboltIP 4.0.3
com.apple.driver.AppleSmartBatteryManager   161.0.0
com.apple.driver.AppleALSColorSensor    1.0.0d1
com.apple.filesystems.apfs  1677.120.9
com.apple.driver.AppleAOPVoiceTrigger   11.5
com.apple.driver.AppleFileSystemDriver  3.0.1
com.apple.driver.ApplePMP   1
com.apple.nke.l2tp  1.9
com.apple.filesystems.tmpfs 1
com.apple.driver.ApplePMPFirmware   1
com.apple.AppleEmbeddedSimpleSPINORFlasher  1
com.apple.IOTextEncryptionFamily    1.0.0
com.apple.filesystems.hfs.kext  556.100.11
com.apple.security.BootPolicy   1
com.apple.BootCache 40
com.apple.AppleFSCompression.AppleFSCompressionTypeZlib 1.0.0
com.apple.AppleFSCompression.AppleFSCompressionTypeDataless 1.0.0d1
com.apple.driver.AppleSmartIO2  1
com.apple.driver.AppleDPDisplayTCON 1
com.apple.driver.AppleTAS5770LAmp   442.26
com.apple.driver.AppleCS42L83Audio  442.26
com.apple.driver.AppleSPMIPMU   1.0.1
com.apple.driver.AppleSummitLCD 1.0.0
com.apple.driver.AppleT8020SOCTuner 1
com.apple.driver.AppleT8103CLPCv3   1
com.apple.AGXG13G   173.28.1
com.apple.driver.AppleAVD   381
com.apple.driver.AppleAVE2  401.73.3
com.apple.driver.AppleJPEGDriver    4.6.0
com.apple.driver.AppleMobileDispH13G-DCP    140.0
com.apple.driver.usb.AppleUSBHostT8103  1
com.apple.driver.AudioDMAController-T8103   1.60.5
com.apple.driver.AppleS5L8960XNCO   1
com.apple.driver.AppleT8103PMGR 1
com.apple.driver.AppleS8000AES  1
com.apple.driver.AppleS8000DWI  1.0.0d1
com.apple.driver.AppleS5L8960XWatchDogTimer 1
com.apple.driver.AppleInterruptController   1.0.0d1
com.apple.driver.AppleBluetoothModule   1
com.apple.driver.AppleSamsungSerial 1.0.0d1
com.apple.driver.AppleBCMWLANBusInterfacePCIe   1
com.apple.driver.AppleT8020DART 1
com.apple.driver.AppleSynopsysMIPIDSI   1.0.0
com.apple.driver.AppleS5L8920XPWM   1.0.0d1
com.apple.driver.AppleS5L8940XI2C   1.0.0d2
com.apple.driver.AppleSPIMC 1
com.apple.driver.AppleT8101 1
com.apple.driver.AppleM68Buttons    1.0.0d1
com.apple.iokit.IOUserEthernet  1.0.1
com.apple.driver.usb.AppleUSBUserHCI    1
com.apple.iokit.IOKitRegistryCompatibility  1
com.apple.iokit.EndpointSecurity    1
com.apple.driver.AppleDiskImages2   1
com.apple.AppleSystemPolicy 2.0.0
com.apple.nke.applicationfirewall   311
com.apple.kec.InvalidateHmac    1
com.apple.driver.usb.IOUSBHostHIDDevice 1.2
com.apple.driver.usb.cdc    5.0.0
com.apple.driver.AppleUSBAudio  405.39
com.apple.iokit.IOAudioFamily   300.6.1
com.apple.vecLib.kext   1.2.0
com.apple.driver.AppleHIDKeyboard   224
com.apple.driver.AppleHSBluetoothDriver 4050.1
com.apple.driver.IOBluetoothHIDDriver   8.0.5d7
com.apple.driver.AppleActuatorDriver    4440.3
com.apple.driver.AppleMultitouchDriver  4440.3
com.apple.kext.triggers 1.0
com.apple.iokit.IOAVBFamily 940.4
com.apple.plugin.IOgPTPPlugin   985.2
com.apple.iokit.IOEthernetAVBController 1.1.0
com.apple.driver.AppleMesaSEPDriver 100.99
com.apple.iokit.IOBiometricFamily   1
com.apple.driver.IOBluetoothHostControllerPCIeTransport 8.0.5d7
com.apple.iokit.IOBluetoothHostControllerTransport  8.0.5d7
com.apple.driver.AppleConvergedIPCOLYBTControl  1
com.apple.driver.AppleConvergedPCI  1
com.apple.driver.AppleBluetoothDebug    1
com.apple.driver.AppleSEPHDCPManager    1.0.1
com.apple.driver.AppleTrustedAccessory  1
com.apple.iokit.AppleSEPGenericTransfer 1
com.apple.driver.usb.networking 5.0.0
com.apple.driver.DiskImages.KernelBacked    493.0.0
com.apple.driver.AppleThunderboltPCIDownAdapter 4.1.1
com.apple.driver.AppleThunderboltUSBDownAdapter 1.0.4
com.apple.driver.AppleThunderboltDPInAdapter    8.1.4
com.apple.driver.AppleThunderboltDPAdapterFamily    8.1.4
com.apple.driver.AppleBTM   1.0.1
com.apple.driver.AppleXsanScheme    3
com.apple.driver.AppleAOPAudio  16.2
com.apple.driver.AppleDCPDPTXProxy  1.0.0
com.apple.driver.DCPDPFamilyProxy   1
com.apple.nke.ppp   1.9
com.apple.driver.AppleSPU   1
com.apple.driver.AppleDiagnosticDataAccessReadOnly  1.0.0
com.apple.driver.AppleBSDKextStarter    3
com.apple.filesystems.hfs.encodings.kext    1
com.apple.AGXFirmwareKextG13GRTBuddy    173.28.1
com.apple.AGXFirmwareKextRTBuddy64  173.28.1
com.apple.iokit.IONVMeFamily    2.1.0
com.apple.driver.AppleNANDConfigAccess  1.0.0
com.apple.driver.AppleHIDTransportSPI   4400.35
com.apple.driver.AppleHIDTransport  4400.35
com.apple.driver.AppleInputDeviceSupport    4400.35
com.apple.driver.AppleHPM   3.4.4
com.apple.driver.AppleCSEmbeddedAudio   442.26
com.apple.driver.AppleEmbeddedAudio 442.26
com.apple.iokit.AppleARMIISAudio    80.34.1
com.apple.driver.AppleStockholmControl  1.0.0
com.apple.driver.AppleDialogPMU 1.0.1
com.apple.driver.ApplePassthroughPPM    3.0
com.apple.iokit.IOGPUFamily 21.11
com.apple.driver.AppleH11ANEInterface   4.75.0
com.apple.driver.AppleH13CameraInterface    3.55.0
com.apple.driver.AppleH10PearlCameraInterface   16.15.1
com.apple.driver.DCPAVFamilyProxy   1
com.apple.iokit.IOMobileGraphicsFamily-DCP  343.0.0
com.apple.driver.AppleDCP   1
com.apple.driver.AppleFirmwareKit   1
com.apple.driver.AppleSPMI  1.0.1
com.apple.driver.AppleUSBXDCIARM    1.0
com.apple.driver.AppleUSBXDCI   1.0
com.apple.iokit.IOUSBDeviceFamily   2.0.0
com.apple.driver.usb.AppleUSBXHCIARM    1
com.apple.driver.usb.AppleUSBXHCI   1.2
com.apple.driver.AppleEmbeddedUSBHost   1
com.apple.driver.usb.AppleUSBHub    1.2
com.apple.driver.usb.AppleUSBHostCompositeDevice    1.2
com.apple.driver.AppleT8103TypeCPhy 1
com.apple.driver.AppleSART  1
com.apple.driver.ApplePMGR  1
com.apple.driver.watchdog   1
com.apple.driver.usb.AppleUSBHostPacketFilter   1.0
com.apple.driver.AppleDisplayCrossbar   1.0.0
com.apple.iokit.IODisplayPortFamily 1.0.0
com.apple.driver.AppleTypeCPhy  1
com.apple.driver.AppleThunderboltNHI    7.2.8
com.apple.driver.AppleT8103PCIeC    1
com.apple.iokit.IOThunderboltFamily 9.3.2
com.apple.driver.ApplePIODMA    1
com.apple.driver.AppleT8103PCIe 1
com.apple.driver.AppleBluetoothDebugService 1
com.apple.driver.AppleBCMWLANCore   1.0.0
com.apple.iokit.IO80211FamilyV2 1200.12.2b1
com.apple.driver.IOImageLoader  1.0.0
com.apple.driver.AppleMobileDispH13G-DFR    140.0
com.apple.iokit.IOMobileGraphicsFamily  343.0.0
com.apple.driver.AppleMCA2-T8103    540.10
com.apple.driver.AppleGPIOICController  1.0.2
com.apple.driver.AppleFireStormErrorHandler 1
com.apple.driver.AppleMultiFunctionManager  1
com.apple.driver.corecapture    1.0.4
com.apple.driver.AppleEmbeddedPCIE  1
com.apple.driver.AppleMobileApNonce 1
com.apple.iokit.IOTimeSyncFamily    985.2
com.apple.driver.DiskImages 493.0.0
com.apple.iokit.IOGraphicsFamily    585.1
com.apple.iokit.IOBluetoothFamily   8.0.5d7
com.apple.iokit.IOBluetoothPacketLogger 8.0.5d7
com.apple.driver.FairPlayIOKit  68.7.1
com.apple.iokit.CoreAnalyticsFamily 1
com.apple.driver.AppleSSE   1.0
com.apple.driver.AppleSEPKeyStore   2
com.apple.driver.AppleUSBTDM    511.120.2
com.apple.iokit.IOUSBMassStorageDriver  184.121.1
com.apple.iokit.IOPCIFamily 2.9
com.apple.iokit.IOSCSIBlockCommandsDevice   436.121.1
com.apple.iokit.IOSCSIArchitectureModelFamily   436.121.1
com.apple.driver.AppleIPAppender    1.0
com.apple.driver.AppleFDEKeyStore   28.30
com.apple.driver.AppleEffaceableStorage 1.0
com.apple.driver.AppleCredentialManager 1.0
com.apple.driver.KernelRelayHost    1
com.apple.iokit.IOUSBHostFamily 1.2
com.apple.driver.AppleUSBHostMergeProperties    1.2
com.apple.driver.usb.AppleUSBCommon 1.0
com.apple.driver.AppleSMC   3.1.9
com.apple.driver.RTBuddy    1.0.0
com.apple.driver.AppleEmbeddedTempSensor    1.0.0
com.apple.driver.AppleARMPMU    1.0
com.apple.iokit.IOAccessoryManager  1.0.0
com.apple.driver.AppleOnboardSerial 1.0
com.apple.iokit.IOSkywalkFamily 1
com.apple.driver.mDNSOffloadUserClient  1.0.1b8
com.apple.iokit.IONetworkingFamily  3.4
com.apple.iokit.IOSerialFamily  11
com.apple.driver.AppleSEPManager    1.0.1
com.apple.driver.AppleA7IOP 1.0.2
com.apple.driver.IOSlaveProcessor   1
com.apple.driver.AppleBiometricSensor   2
com.apple.iokit.IOHIDFamily 2.0.0
com.apple.AUC   1.0
com.apple.iokit.IOAVFamily  1.0.0
com.apple.iokit.IOHDCPFamily    1.0.0
com.apple.iokit.IOCECFamily 1
com.apple.iokit.IOAudio2Family  1.0
com.apple.driver.AppleEmbeddedAudioLibs 1.17
com.apple.driver.AppleFirmwareUpdateKext    1
com.apple.driver.AppleM2ScalerCSCDriver 265.0.0
com.apple.iokit.IOSurface   290.8.1
com.apple.driver.IODARTFamily   1
com.apple.security.quarantine   4
com.apple.security.sandbox  300.0
com.apple.kext.AppleMatch   1.0.0d1
com.apple.driver.AppleMobileFileIntegrity   1.0.5
com.apple.kext.CoreTrust    1
com.apple.security.AppleImage4  3.0.0
com.apple.iokit.IOCryptoAcceleratorFamily   1.0.1
com.apple.driver.AppleARMPlatform   1.0.2
com.apple.iokit.IOStorageFamily 2.1
com.apple.iokit.IOSlowAdaptiveClockingFamily    1.0.0
com.apple.iokit.IOReportFamily  47
com.apple.kec.pthread   1
com.apple.kec.corecrypto    11.1
com.apple.kec.Libm  1

** Stackshot Succeeded ** Bytes Traced 427423 (Uncompressed 1042720) **

Steps to reproduce: Open the source in Godot Export a Mac OS runnable .dmg using the included export template Extract the .app from the .dmg Run the .app

OverloadedOrama commented 3 years ago

I did some research, seems like the issue might be per-pixel transparency not working properly on Apple Silicon devices. https://github.com/godotengine/godot/issues/43951 and https://github.com/godotengine/godot/issues/49140. Godot's developers are aware of this issue so it may be solved soon. Otherwise, we could disable per-pixel transparency for Mac. If you open the source in Godot and disable per pixel transparency (under Project Settings, Display, Window), it should work.

Sorry for the trouble caused, and thank you for reporting!

OverloadedOrama commented 3 years ago

Since the issue hasn't yet been fixed in Godot's side, I went ahead and completely disabled per-pixel transparency in MacOS as a temporary fix for the kernel panic for v0.9. Once it's fixed in Godot, I will re-enable it. I'll keep this issue opened since the problem isn't considered fully fixed yet.

OverloadedOrama commented 2 years ago

This has now been fixed by https://github.com/godotengine/godot/pull/55464, so I will re-enable per-pixel transparency on macOS in Pixelorama v0.9.2, which will use Godot 3.4.2.