Secuence of actions shown: - connected USB cable. - enabled USB-tethering on the phone. - installed usb_rndis driver. - attempted to `ping haiku-os.org` (failed as expected, internet was down at that moment). - disabled RNDIS device on the Network preflet. - disabled tethering on the phone. - unplugged USB cable. As long as I repeat those steps, can use the phone without KDLs! > tail -f /var/log/syslog KERN: usb hub 36: port 0: new device connected KERN: usb_audio:11.35.972:init_driver::ver.0.0.5 KERN: usb hub 36: port 0: new device connected KERN: usb error hub 36: new device on a port that is already in use KERN: usb_audio:11.44.313:init_driver::ver.0.0.5 KERN: driver "usb_rndis" added KERN: devfs: reload driver "usb_rndis" (3, 7865205) KERN: usb_rndis: init_hardware() KERN: usb_rndis: init_driver() KERN: usb_rndis: rndis device 0 added KERN: usb_rndis: publish_devices() KERN: usb_rndis: publishing net/usb_rndis/0 KERN: usb_rndis: find_device(net/usb_rndis/0) KERN: usb_rndis: open(net/usb_rndis/0, 2, 0xffffffff8a2fd7d0) KERN: usb_rndis: Send init command results in No error KERN: usb_rndis: Received notification 1 0 KERN: usb_rndis: Received notification after init command KERN: usb_rndis: Read init command results in No error KERN: usb_rndis: Type 80000002 KERN: usb_rndis: Length 34 KERN: usb_rndis: Req ID 0 KERN: usb_rndis: Status 0 KERN: usb_rndis: Vers Maj 1 KERN: usb_rndis: Vers Min 0 KERN: usb_rndis: DevFlags 1 KERN: usb_rndis: Medium 0 KERN: usb_rndis: Max Pkts 1 KERN: usb_rndis: Max Bytes 62c KERN: usb_rndis: Alignment 0 KERN: usb_rndis: Reserved usb_rndis: 0 KERN: usb_rndis: 0 usb_rndis: KERN: usb_rndis: Received notification 1 0 KERN: usb_rndis: mac address: 02:02:63:37:37:6e KERN: usb_rndis: Received notification 1 0 KERN: usb_rndis: max frame size: 1500 KERN: usb_rndis: Received notification 1 0 KERN: usb_rndis: media connect state: 0 KERN: usb_rndis: Received notification 1 0 KERN: usb_rndis: link speed: 4259840 * 100bps KERN: usb_rndis: Received notification 1 0 KERN: usb_rndis: Initialization result: No error KERN: usb_rndis: control(0xffffffff8cc89000, 10000, 0xffffffff8174e928, 8) KERN: usb_rndis: control(0xffffffff8cc89000, 9999, 0xffffffff896c77f0, 6) KERN: usb_rndis: control(0xffffffff8cc89000, 10005, 0xffffffff896c7884, 4) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8174e8f0, 16) KERN: usb_rndis: control(0xffffffff8cc89000, 10006, 0xffffffff8751fd8c, 4) KERN: usb_rndis: read(0xffffffff8cc89000, 0, 0xffffffff8cb4f928, 1500) KERN: register_domain(4, link) DAEMON 'DHCP': /dev/net/usb_rndis/0: Send DHCP_DISCOVER to 255.255.255.255:67 KERN: usb_rndis: write(0xffffffff8cc89000, 0, 0xffffffff8cb4f0fe, 307) KERN: usb_rndis: Received data packet len 00000056 data [off 00000024 len 0000002a] KERN: usb_rndis: read(0xffffffff8cc89000, 42, 0xffffffff8cb4f128, 1500) DAEMON 'DHCP': /dev/net/usb_rndis/0: Timeout shift: 500 msecs (try 1) DAEMON 'DHCP': /dev/net/usb_rndis/0: Send DHCP_DISCOVER to 255.255.255.255:67 KERN: usb_rndis: write(0xffffffff8cc89000, 42, 0xffffffff8cb4f8fe, 307) DAEMON 'DHCP': /dev/net/usb_rndis/0: Timeout shift: 1000 msecs (try 2) DAEMON 'DHCP': /dev/net/usb_rndis/0: Send DHCP_DISCOVER to 255.255.255.255:67 KERN: usb_rndis: write(0xffffffff8cc89000, 393, 0xffffffff8cb4f8fe, 307) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: usb_rndis: Received data packet len 00000056 data [off 00000024 len 0000002a] KERN: usb_rndis: read(0xffffffff8cc89000, 84, 0xffffffff8cb4f928, 1500) DAEMON 'DHCP': /dev/net/usb_rndis/0: Timeout shift: 2000 msecs (try 3) DAEMON 'DHCP': /dev/net/usb_rndis/0: Send DHCP_DISCOVER to 255.255.255.255:67 KERN: usb_rndis: write(0xffffffff8cc89000, 84, 0xffffffff8cb4f0fe, 307) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: usb_rndis: Received data packet len 00000056 data [off 00000024 len 0000002a] KERN: usb_rndis: read(0xffffffff8cc89000, 126, 0xffffffff8cb4f128, 1500) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: usb_rndis: Received data packet len 0000018b data [off 00000024 len 0000015f] KERN: usb_rndis: read(0xffffffff8cc89000, 477, 0xffffffff8cb4f928, 1500) KERN: usb_rndis: Received data packet len 0000018b data [off 00000024 len 0000015f] KERN: usb_rndis: read(0xffffffff8cc89000, 828, 0xffffffff8cb4e928, 1500) KERN: usb_rndis: Received data packet len 0000018b data [off 00000024 len 0000015f] KERN: usb_rndis: read(0xffffffff8cc89000, 1179, 0xffffffff8cb4e128, 1500) KERN: usb_rndis: Received data packet len 0000018b data [off 00000024 len 0000015f] KERN: usb_rndis: read(0xffffffff8cc89000, 1530, 0xffffffff8cb4d928, 1500) DAEMON 'DHCP': /dev/net/usb_rndis/0: Received DHCP_OFFER from 192.168.42.129 DAEMON 'DHCP': your_address: 192.168.42.153 DAEMON 'DHCP': server: 192.168.42.129 DAEMON 'DHCP': lease time: 3600 seconds DAEMON 'DHCP': renewal time: 1800 seconds DAEMON 'DHCP': rebinding time: 3150 seconds DAEMON 'DHCP': subnet: 255.255.255.0 DAEMON 'DHCP': broadcast: 192.168.42.255 DAEMON 'DHCP': gateway: 192.168.42.129 DAEMON 'DHCP': nameserver[0]: 192.168.42.129 DAEMON 'DHCP': UNKNOWN OPTION 43 (0x2b) DAEMON 'DHCP': /dev/net/usb_rndis/0: Send DHCP_REQUEST for 192.168.42.153 to 255.255.255.255:67 KERN: usb_rndis: write(0xffffffff8cc89000, 1530, 0xffffffff8cb4d0fe, 319) DAEMON 'DHCP': /dev/net/usb_rndis/0: Received DHCP_OFFER from 192.168.42.129 Last message repeated 2 times DAEMON 'DHCP': /dev/net/usb_rndis/0: Received DHCP_ACK from 192.168.42.129 DAEMON 'DHCP': server: 192.168.42.129 DAEMON 'DHCP': lease time: 3600 seconds DAEMON 'DHCP': renewal time: 1800 seconds DAEMON 'DHCP': rebinding time: 3150 seconds DAEMON 'DHCP': subnet: 255.255.255.0 DAEMON 'DHCP': broadcast: 192.168.42.255 DAEMON 'DHCP': gateway: 192.168.42.129 DAEMON 'DHCP': nameserver[0]: 192.168.42.129 DAEMON 'DHCP': UNKNOWN OPTION 43 (0x2b) KERN: usb_rndis: Received data packet len 0000018b data [off 00000024 len 0000015f] KERN: usb_rndis: read(0xffffffff8cc89000, 1881, 0xffffffff8cb4b928, 1500) DAEMON 'DHCP': /dev/net/usb_rndis/0: DHCP status = No error KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: Last message repeated 4 times. KERN: usb_rndis: Received data packet len 00000056 data [off 00000024 len 0000002a] KERN: usb_rndis: read(0xffffffff8cc89000, 1923, 0xffffffff8cb4e128, 1500) KERN: usb_rndis: write(0xffffffff8cc89000, 1923, 0xffffffff8cb4b928, 42) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: Last message repeated 4 times. Last message repeated 13 times KERN: usb_rndis: write(0xffffffff8cc89000, 2009, 0xffffffff8cb4b8fe, 71) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: Last message repeated 3 times. KERN: usb_rndis: Received data packet len 0000008f data [off 00000024 len 00000063] KERN: usb_rndis: read(0xffffffff8cc89000, 2022, 0xffffffff8cb4b928, 1500) KERN: usb_rndis: write(0xffffffff8cc89000, 2022, 0xffffffff8cb4c0fe, 71) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: usb_rndis: write(0xffffffff8cc89000, 2137, 0xffffffff8cb4c0fe, 71) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: usb_rndis: write(0xffffffff8cc89000, 2252, 0xffffffff8cb4c0fe, 71) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: usb_rndis: Received data packet len 0000008f data [off 00000024 len 00000063] KERN: usb_rndis: read(0xffffffff8cc89000, 2121, 0xffffffff8cb4c128, 1500) KERN: usb_rndis: Received data packet len 0000008f data [off 00000024 len 00000063] KERN: usb_rndis: read(0xffffffff8cc89000, 2220, 0xffffffff8cb4c928, 1500) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: usb_rndis: Received data packet len 00000056 data [off 00000024 len 0000002a] KERN: usb_rndis: read(0xffffffff8cc89000, 2262, 0xffffffff8cb4d128, 1500) KERN: usb_rndis: write(0xffffffff8cc89000, 2262, 0xffffffff8cb4c928, 42) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: usb_rndis: Received data packet len 0000008f data [off 00000024 len 00000063] KERN: usb_rndis: read(0xffffffff8cc89000, 2361, 0xffffffff8cb4c928, 1500) KERN: usb_rndis: write(0xffffffff8cc89000, 2361, 0xffffffff8cb4b0fe, 71) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: Last message repeated 2 times. KERN: usb_rndis: Received data packet len 0000008f data [off 00000024 len 00000063] KERN: usb_rndis: read(0xffffffff8cc89000, 2460, 0xffffffff8cb4f128, 1500) KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: Last message repeated 4 times. ------------- At this point, I've disabled the RNDIS interface on the Network preflet (before disabling tethering on the phone, and then disconecting it). ------------- Last message repeated 6 times KERN: usb_rndis: control(0xffffffff8cc89000, 10007, 0xffffffff8763df60, 16) KERN: usb_rndis: close(0xffffffff8cc89000) KERN: usb_rndis: Received frame at 0 length 0000008f out of bounds of receive buffer00000000 KERN: usb_rndis: Received data packet len 0000008f data [off 00000024 len 00000063] KERN: usb_rndis: free(0xffffffff8cc89000) KERN: usb hub 36: port 0: new device connected KERN: usb error hub 36: new device on a port that is already in use KERN: usb_rndis: publish_devices() KERN: usb_rndis: uninit_driver() KERN: usb_audio:14.06.688:init_driver::ver.0.0.5 KERN: usb hub 36: KERN: port 0: device removed KERN: usb_audio:14.16.698:init_driver::ver.0.0.5 > ------------- All good! no KDLs! -------------