HoRNDIS和VirtualBox會造成macOS Kernel panic

今天MacBook Pro接HTC U11 4G USB網路共用上網,無預警發生了兩次Kernel panic,畫面出現四國語言後就自動重開機了。檢查系統顯示的Panic Report:

Anonymous UUID:       9945F7A9-F217-160D-0BA3-2F812649C090

Tue Jan  2 09:31:04 2018

*** Panic Report ***
panic(cpu 2 caller 0xffffff801b0f48b5): Failed mbuf validity check: mbuf 0xffffff81318d3e00 len -13 type 1 flags 0x2 data 0xffffff81318d3eb6 rcvif en4 ifflags 0x8863
Backtrace (CPU 2), Frame : Return Address
0xffffff913d943bb0 : 0xffffff801ae505f6
0xffffff913d943c00 : 0xffffff801af7d604
0xffffff913d943c40 : 0xffffff801af6f0f9
0xffffff913d943cc0 : 0xffffff801ae02120
0xffffff913d943ce0 : 0xffffff801ae5002c
0xffffff913d943e10 : 0xffffff801ae4fdac
0xffffff913d943e70 : 0xffffff801b0f48b5
0xffffff913d943f10 : 0xffffff801b0f3bf9
0xffffff913d943fa0 : 0xffffff801ae014f7

BSD process name corresponding to current thread: kernel_task

Mac OS version:
17C88

Kernel version:
Darwin Kernel Version 17.3.0: Thu Nov  9 18:09:22 PST 2017; root:xnu-4570.31.3~1/RELEASE_X86_64
Kernel UUID: 87641697-A3DD-30C4-B010-E65ECE57550B
Kernel slide:     0x000000001aa00000
Kernel text base: 0xffffff801ac00000
__HIB  text base: 0xffffff801ab00000
System model name: MacBookPro14,1 (Mac-B4831CEBD52A0C4C)

System uptime in nanoseconds: 1338324735120
last loaded kext at 245770798349: com.apple.filesystems.msdosfs	1.10 (addr 0xffffff7f9be8e000, size 69632)
last unloaded kext at 665664458235: com.apple.driver.AppleFileSystemDriver	3.0.1 (addr 0xffffff7f9ba04000, size 8192)
loaded kexts:
com.tuxera.filesystems.tufsfs.fusefs_txantfs	2015.11.5
org.virtualbox.kext.VBoxNetAdp	5.2.4
org.virtualbox.kext.VBoxNetFlt	5.2.4
org.virtualbox.kext.VBoxUSB	5.2.4
org.virtualbox.kext.VBoxDrv	5.2.4
org.dungeon.driver.SATSMARTDriver	0.8.1
com.joshuawise.kexts.HoRNDIS	6
com.apple.driver.AudioAUUC	1.70
com.apple.filesystems.autofs	3.0
com.apple.driver.AGPM	110.23.24
com.apple.driver.ApplePlatformEnabler	2.7.0d0
com.apple.driver.X86PlatformShim	1.0.0
com.apple.driver.AppleUpstreamUserClient	3.6.4
com.apple.driver.AppleGraphicsDevicePolicy	3.16.21
com.apple.AGDCPluginDisplayMetrics	3.16.2
com.apple.driver.AppleHV	1
com.apple.driver.AppleHDA	280.12
com.apple.iokit.IOUserEthernet	1.0.1
com.apple.iokit.IOBluetoothSerialManager	6.0.2f2
com.apple.driver.pmtelemetry	1
com.apple.Dont_Steal_Mac_OS_X	7.0.0
com.apple.driver.AppleIntelKBLGraphics	10.3.0
com.apple.driver.AppleIntelPCHPMC	2.0.1
com.apple.driver.AppleThunderboltIP	3.1.1
com.apple.driver.AppleBacklight	170.10.2
com.apple.driver.AppleOSXWatchdog	1
com.apple.driver.AppleSMCLMU	211
com.apple.driver.AppleCameraInterface	6.01.2
com.apple.driver.AppleIntelSlowAdaptiveClocking	4.0.0
com.apple.driver.AppleIntelKBLGraphicsFramebuffer	10.3.0
com.apple.driver.AppleMCCSControl	1.5.3
com.apple.driver.eficheck	1
com.apple.driver.usb.AppleUSBHostBillboardDevice	1.0
com.apple.driver.MaxTranserSizeOverrideDriver	439.30.4
com.apple.filesystems.apfs	748.31.8
com.apple.filesystems.hfs.kext	407.30.1
com.apple.AppleFSCompression.AppleFSCompressionTypeDataless	1.0.0d1
com.apple.BootCache	40
com.apple.AppleFSCompression.AppleFSCompressionTypeZlib	1.0.0
com.apple.driver.AppleTopCaseHIDEventDriver	127
com.apple.driver.AirPort.BrcmNIC	1220.28.1a3
com.apple.driver.AppleSmartBatteryManager	161.0.0
com.apple.driver.AppleACPIButtons	6.1
com.apple.driver.AppleRTC	2.0
com.apple.driver.AppleSMBIOS	2.1
com.apple.driver.AppleACPIEC	6.1
com.apple.driver.AppleAPIC	1.7
com.apple.nke.applicationfirewall	183
com.apple.security.TMSafetyNet	8
com.apple.security.quarantine	3
com.apple.IOBufferCopyEngineTest	1
com.apple.iokit.IOUSBUserClient	900.4.1
com.apple.kext.triggers	1.0
com.apple.driver.AppleGraphicsControl	3.16.21
com.apple.driver.DspFuncLib	280.12
com.apple.kext.OSvKernDSPLib	526
com.apple.driver.AppleSSE	1.0
com.apple.iokit.IOBluetoothHostControllerUARTTransport	6.0.2f2
com.apple.iokit.IOBluetoothHostControllerTransport	6.0.2f2
com.apple.AppleGPUWrangler	3.16.2
com.apple.driver.AppleBacklightExpert	1.1.0
com.apple.iokit.IONDRVSupport	517.22
com.apple.driver.AppleIntelLpssUARTv1	3.0.60
com.apple.driver.AppleIntelLpssUARTCommon	3.0.60
com.apple.driver.AppleOnboardSerial	1.0
com.apple.iokit.IOSkywalkFamily	1
com.apple.iokit.IOSerialFamily	11
com.apple.driver.X86PlatformPlugin	1.0.0
com.apple.driver.IOPlatformPluginFamily	6.0.0d8
com.apple.iokit.IOSlowAdaptiveClockingFamily	1.0.0
com.apple.AppleGraphicsDeviceControl	3.16.21
com.apple.iokit.IOAcceleratorFamily2	376.6
com.apple.iokit.IOSurface	209.2.2
com.apple.driver.AppleSMBusController	1.0.18d1
com.apple.driver.AppleHDAController	280.12
com.apple.iokit.IOGraphicsFamily	517.22
com.apple.iokit.IOHDAFamily	280.12
com.apple.iokit.IOAudioFamily	206.5
com.apple.vecLib.kext	1.2.0
com.apple.driver.usb.cdc.ecm	5.0.0
com.apple.driver.usb.cdc	5.0.0
com.apple.driver.usb.AppleUSBHostCompositeDevice	1.2
com.apple.driver.usb.networking	5.0.0
com.apple.driver.usb.AppleUSBHub	1.2
com.apple.driver.AppleUSBHostMergeProperties	1.2
com.apple.filesystems.hfs.encodings.kext	1
com.apple.driver.AppleActuatorDriver	1204.13
com.apple.driver.AppleHIDKeyboard	203
com.apple.driver.AppleHSBluetoothDriver	127
com.apple.driver.IOBluetoothHIDDriver	6.0.2f2
com.apple.iokit.IOBluetoothFamily	6.0.2f2
com.apple.driver.AppleMultitouchDriver	1204.13
com.apple.driver.AppleInputDeviceSupport	1201.8
com.apple.driver.AppleHSSPIHIDDriver	52
com.apple.driver.AppleThunderboltDPInAdapter	5.0.2
com.apple.driver.AppleThunderboltDPAdapterFamily	5.0.2
com.apple.driver.AppleThunderboltPCIDownAdapter	2.1.3
com.apple.driver.AppleHPM	3.1.3
com.apple.driver.AppleIntelLpssI2CController	3.0.60
com.apple.driver.AppleHSSPISupport	52
com.apple.driver.AppleThunderboltNHI	4.5.6
com.apple.iokit.IOThunderboltFamily	6.6.3
com.apple.driver.AppleIntelLpssSpiController	3.0.60
com.apple.driver.AppleIntelLpssDmac	3.0.60
com.apple.iokit.IONVMeFamily	2.1.0
com.apple.iokit.IO80211Family	1200.12.2
com.apple.driver.mDNSOffloadUserClient	1.0.1b8
com.apple.driver.corecapture	1.0.4
com.apple.driver.AppleIntelLpssGspi	3.0.60
com.apple.driver.AppleIntelLpssI2C	3.0.60
com.apple.driver.usb.AppleUSBXHCIPCI	1.2
com.apple.driver.usb.AppleUSBXHCI	1.2
com.apple.driver.usb.AppleUSBHostPacketFilter	1.0
com.apple.iokit.IOUSBFamily	900.4.1
com.apple.driver.AppleEFINVRAM	2.1
com.apple.driver.AppleEFIRuntime	2.1
com.apple.iokit.IOHIDFamily	2.0.0
com.apple.iokit.IOSMBusFamily	1.1
com.apple.security.sandbox	300.0
com.apple.kext.AppleMatch	1.0.0d1
com.apple.iokit.IOBufferCopyEngineFamily	1
com.apple.driver.DiskImages	480.30.2
com.apple.driver.AppleFDEKeyStore	28.30
com.apple.driver.AppleEffaceableStorage	1.0
com.apple.driver.AppleKeyStore	2
com.apple.driver.AppleUSBTDM	439.30.4
com.apple.driver.AppleMobileFileIntegrity	1.0.5
com.apple.iokit.IOUSBMassStorageDriver	140.30.1
com.apple.iokit.IOSCSIBlockCommandsDevice	404.30.2
com.apple.iokit.IOSCSIArchitectureModelFamily	404.30.2
com.apple.iokit.IOStorageFamily	2.1
com.apple.driver.AppleCredentialManager	1.0
com.apple.driver.KernelRelayHost	1
com.apple.iokit.IOUSBHostFamily	1.2

先看第一段:

panic(cpu 2 caller 0xffffff801b0f48b5): Failed mbuf validity check: mbuf 0xffffff81318d3e00 len -13 type 1 flags 0x2 data 0xffffff81318d3eb6 rcvif en4 ifflags 0x8863

en4是接U11的USB網路共用Port。開終端機輸入ifconfig可以看到:

en4: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1536
	ether 42:e7:ba:b5:xx:xx 
	inet6 fe80::18da:780e:xxxx:xxxx%en4 prefixlen 64 secured scopeid 0x10 
	inet 192.168.42.194 netmask 0xffffff00 broadcast 192.168.42.255
	nd6 options=201<PERFORMNUD,DAD>
	media: autoselect
	status: active

再來看Report底下載入的驅動程式kext,排除macOS內建驅動程式(org.dungeon.driver.SATSMARTDriver也是macOS內建)和Tuxera NTFS,裡面只有兩個驅動程式引起當機問機:HoRNDIS和VirtualBox。

基本上此題無解,Google結果發現這問題存在很久,我現在用macOS High Sierra 10.13.2都還是遇到,也只能刪除VirtualBox改用付費的VMware Fusion(之前免費試用30天沒問題)或Parallels Desktop。

參考文章: