[Bug 258994] OS panics on Nanopi Neo when using i2c 16-bit device addressing width
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 07 Oct 2021 23:11:02 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=258994 Bug ID: 258994 Summary: OS panics on Nanopi Neo when using i2c 16-bit device addressing width Product: Base System Version: CURRENT Hardware: arm OS: Any Status: New Severity: Affects Some People Priority: --- Component: arm Assignee: freebsd-arm@FreeBSD.org Reporter: alydiomc@yahoo.com On Nanopi NEO (Allwinner H3), accessing I2C EEPROM with 16-bit addressing width panics the OS. This seems working on RPI. Same issue experienced on: FreeBSD 12.2 Release FreeBSD 13.0 Release FreeBSD 13.0 Stable root@nanopi-neo:~ # uname -a FreeBSD nanopi-neo 14.0-CURRENT FreeBSD 14.0-CURRENT #1 main-n249946-824bbb9a408-dirty: Fri Oct 8 05:34:21 PST 2021 root@media.klyren.net:/zdata0/work/obj/zdata0/src-14-CURRENT/arm.armv7/sys/GENERIC arm root@nanopi-neo:~ # dmesg |grep ii iichb0: <Allwinner Integrated I2C Bus Controller> mem 0x1c2ac00-0x1c2afff irq 40 on simplebus0 iicbus0: <OFW I2C bus> on iichb0 miibus0: <MII bus> on awg0 ukphy0: <Generic IEEE 802.3u media interface> PHY 0 on miibus0 ukphy1: <Generic IEEE 802.3u media interface> PHY 1 on miibus0 iic0: <I2C generic I/O> on iicbus0 root@nanopi-neo:~ # i2c -s -f /dev/iic0 57 68 root@nanopi-neo:~ # i2c -a 0x57 -f /dev/iic0 -d r -o 1 -w 16 -c 1 -m tr panic: Assertion strlen(description) < MAX_W_NAME failed at /zdata0/src-14-CURRENT/sys/kern/subr_witness.c:1914 ðñòóôõö÷øùúûüýþÿtime = 1633646823 KDB: stack backtrace: db_trace_self() at db_trace_self pc = 0xc05b2e24 lr = 0xc007b07c (db_trace_self_wrapper+0x30) sp = 0xd89e8928 fp = 0xd89e8a40 db_trace_self_wrapper() at db_trace_self_wrapper+0x30 pc = 0xc007b07c lr = 0xc02dddbc (vpanic+0x17c) sp = 0xd89e8a48 fp = 0xd89e8a68 r4 = 0x00000100 r5 = 0x00000000 r6 = 0xc0708d0c r7 = 0xc08e8aa8 vpanic() at vpanic+0x17c pc = 0xc02dddbc lr = 0xc02ddb60 (doadump) sp = 0xd89e8a70 fp = 0xd89e8a74 r4 = 0xc10a0878 r5 = 0xc10a0830 r6 = 0xc08be7bc r7 = 0xc079bd0e r8 = 0x0000019e r9 = 0x0000019d r10 = 0xc0ad95f0 doadump() at doadump pc = 0xc02ddb60 lr = 0xc034f3b4 (enroll+0x540) sp = 0xd89e8a7c fp = 0xd89e8aa8 r4 = 0xc0ad95f0 r5 = 0xd89e8a74 r6 = 0xc02ddb60 r10 = 0xd89e8a7c enroll() at enroll+0x540 pc = 0xc034f3b4 lr = 0xc034f878 (witness_init+0xb0) sp = 0xd89e8ab0 fp = 0xd89e8ab8 r4 = 0xd2caffa0 r5 = 0x00000000 r6 = 0xd8f2b754 r7 = 0xc00b1074 r8 = 0xd8cc17c0 r9 = 0xc0889ed0 r10 = 0xd2e0e040 witness_init() at witness_init+0xb0 pc = 0xc034f878 lr = 0xc02e7b04 (sx_init_flags+0x88) sp = 0xd89e8ac0 fp = 0xd89e8ad0 r4 = 0xd2caffa0 r10 = 0xd2e0e040 sx_init_flags() at sx_init_flags+0x88 pc = 0xc02e7b04 lr = 0xc00b10b8 (iicopen+0x44) sp = 0xd89e8ad8 fp = 0xd89e8ae0 r4 = 0xd2caffa0 r5 = 0xd2a4ce00 iicopen() at iicopen+0x44 pc = 0xc00b10b8 lr = 0xc01d8784 (devfs_open+0x12c) sp = 0xd89e8ae8 fp = 0xd89e8b20 r4 = 0xd2a4ce00 r5 = 0x00000000 devfs_open() at devfs_open+0x12c pc = 0xc01d8784 lr = 0xc06a5324 (VOP_OPEN_APV+0x50) sp = 0xd89e8b28 fp = 0xd89e8b40 r4 = 0xd89e8b50 r5 = 0xc08a9fd4 r6 = 0xc09138c5 r7 = 0x00000003 r8 = 0xd8f71e00 r9 = 0xd89e8b50 r10 = 0xd8cc17c0 VOP_OPEN_APV() at VOP_OPEN_APV+0x50 pc = 0xc06a5324 lr = 0xc03e0dec (vn_open_vnode+0x184) sp = 0xd89e8b48 fp = 0xd89e8ba8 r4 = 0xd8f2b754 r5 = 0x00000000 r6 = 0xd2e0e040 r10 = 0xd8cc17c0 vn_open_vnode() at vn_open_vnode+0x184 pc = 0xc03e0dec lr = 0xc03e0828 (vn_open_cred+0x578) sp = 0xd89e8bb0 fp = 0xd89e8cc0 r4 = 0x00000001 r5 = 0xd89e8cf8 r6 = 0x00000003 r7 = 0xd89e8d58 r8 = 0xd89e8dc0 r9 = 0x00000000 r10 = 0x00000000 vn_open_cred() at vn_open_cred+0x578 pc = 0xc03e0828 lr = 0xc03e02a8 (vn_open+0x24) sp = 0xd89e8cc8 fp = 0xd89e8cd0 r4 = 0xd8cc17c0 r5 = 0xd89e8cf8 r6 = 0x00000000 r7 = 0xd89e8cf8 r8 = 0xffffff9c r9 = 0x00000012 r10 = 0xbfbfee4b vn_open() at vn_open+0x24 pc = 0xc03e02a8 lr = 0xc03d6f30 (kern_openat+0x258) sp = 0xd89e8cd8 fp = 0xd89e8db8 kern_openat() at kern_openat+0x258 pc = 0xc03d6f30 lr = 0xc03d71b8 (sys_openat+0x2c) sp = 0xd89e8dc0 fp = 0xd89e8dc8 r4 = 0xd8cc17c0 r5 = 0x00000001 r6 = 0xc08b42bc r7 = 0x00000000 r8 = 0x00000000 r9 = 0xd8cc1a68 r10 = 0xd8cc0530 sys_openat() at sys_openat+0x2c pc = 0xc03d71b8 lr = 0xc05d5128 (swi_handler+0x15c) sp = 0xd89e8dd0 fp = 0xd89e8e40 swi_handler() at swi_handler+0x15c pc = 0xc05d5128 lr = 0xc05b574c (swi_exit) sp = 0xd89e8e48 fp = 0xbfbfe780 r4 = 0x201f8a44 r5 = 0x00044190 r6 = 0xbfbfec98 r7 = 0x000001f3 r8 = 0x00000001 r9 = 0x00010b92 r10 = 0x00000000 swi_exit() at swi_exit pc = 0xc05b574c lr = 0xc05b574c (swi_exit) sp = 0xd89e8e48 fp = 0xbfbfe780 KDB: enter: panic [ thread pid 985 tid 100114 ] Stopped at kdb_enter+0x58: ldrb r15, [r15, r15, ror r15]! db> ps pid ppid pgrp uid state wmesg wchan cmd 985 972 985 0 R+ CPU 1 i2c 972 971 972 0 S+ pause 0xd8cc0928 csh 971 1 971 0 Ss+ wait 0xd2dacc40 login 952 1 952 0 Ss select 0xd2c954a4 sshd 925 1 925 0 Ss nanslp 0xc0ac3d8e cron 914 1 914 123 Ss (threaded) ntpd 100117 S select 0xd2ccb224 ntpd 100122 S usem 0xd2dc5e80 ntpd 870 1 870 0 Ss select 0xd2cb2664 syslogd 682 1 682 0 Ss select 0xd2cb2524 devd 284 1 284 0 Ss select 0xd2cb2624 wpa_supplicant 23 0 0 0 DL mmcsd d 0xd2ccce00 [mmcsd0: mmc/sd card] 22 0 0 0 DL - 0xc0b31af0 [soaiod4] 21 0 0 0 DL - 0xc0b31af0 [soaiod3] 20 0 0 0 DL - 0xc0b31af0 [soaiod2] 19 0 0 0 DL - 0xc0b31af0 [soaiod1] 18 0 0 0 DL syncer 0xc0b32960 [syncer] 17 0 0 0 DL vlruwt 0xd173d388 [vnlru] 16 0 0 0 DL (threaded) [bufdaemon] 100084 D qsleep 0xc0b31fdc [bufdaemon] 100087 D - 0xc0915700 [bufspacedaemon-0] 100104 D sdflush 0xd2d98c84 [/ worker] 15 0 0 0 DL psleep 0xc0b36930 [vmdaemon] 9 0 0 0 DL (threaded) [pagedaemon] 100082 D psleep 0xc0b36290 [dom0] 100092 D launds 0xc0b3629c [laundry: dom0] 100093 D umarcl 0xc056eeb4 [uma] 8 0 0 0 DL - 0xc0939e18 [rand_harvestq] 14 0 0 0 DL (threaded) [usb] 100046 D - 0xd280400c [usbus0] 100047 D - 0xd280403c [usbus0] 100048 D - 0xd280406c [usbus0] 100049 D - 0xd280409c [usbus0] 100050 D - 0xd28040cc [usbus0] 100052 D - 0xd17a6c84 [usbus1] 100053 D - 0xd17a6cb4 [usbus1] 100054 D - 0xd17a6ce4 [usbus1] 100055 D - 0xd17a6d14 [usbus1] 100056 D - 0xd17a6d44 [usbus1] 100058 D - 0xd280daac [usbus2] 100059 D - 0xd280dadc [usbus2] 100060 D - 0xd280db0c [usbus2] 100061 D - 0xd280db3c [usbus2] 100062 D - 0xd280db6c [usbus2] 100064 D - 0xd2838c84 [usbus3] 100065 D - 0xd2838cb4 [usbus3] 100066 D - 0xd2838ce4 [usbus3] 100067 D - 0xd2838d14 [usbus3] 100068 D - 0xd2838d44 [usbus3] 100070 D - 0xd284aaac [usbus4] 100071 D - 0xd284aadc [usbus4] 100072 D - 0xd284ab0c [usbus4] 100073 D - 0xd284ab3c [usbus4] 100074 D - 0xd284ab6c [usbus4] 7 0 0 0 DL (threaded) [cam] 100039 D - 0xc09361c0 [doneq0] 100040 D - 0xc0936140 [async] 100080 D - 0xc093606c [scanner] 6 0 0 0 DL crypto_ 0xc3bbfdac [crypto returns 3] 5 0 0 0 DL crypto_ 0xc3bbfd7c [crypto returns 2] 4 0 0 0 DL crypto_ 0xc3bbfd4c [crypto returns 1] 3 0 0 0 DL crypto_ 0xc3bbfd1c [crypto returns 0] 2 0 0 0 DL crypto_ 0xc0b352ec [crypto] 13 0 0 0 DL seqstat 0xd0495dcc [sequencer 00] 12 0 0 0 DL (threaded) [geom] 100026 D - 0xc0ab2d38 [g_event] 100027 D - 0xc0ab2d3c [g_up] 100028 D - 0xc0ab2d40 [g_down] 11 0 0 0 WL (threaded) [intr] 100010 I [swi6: Giant taskq] 100016 I [swi5: fast taskq] 100018 I [swi6: task queue] 100019 I [swi1: netisr 0] 100020 I [swi4: clock (0)] 100021 I [swi4: clock (1)] 100022 I [swi4: clock (2)] 100023 I [swi4: clock (3)] 100024 I [swi3: vm] 100041 I [gic0,s11: gpio0] 100042 I [gic0,s45: gpio1] 100043 I [gic0,s50: a31dmac0] 100044 I [gic0,s60: aw_mmc0] 100045 I [gic0,s71: musbotg0] 100051 I [gic0,s72: ehci0] 100057 I [gic0,s73: ohci0] 100063 I [gic0,s78: ehci1] 100069 I [gic0,s79: ohci1] 100075 I [gic0,s82: awg0] 100076 I [swi0: uart] 100077 I [gic0,s31:-_thermal0] 100081 I [gic0,s6: iichb0] 10 0 0 0 RL (threaded) [idle] 100002 Run CPU 0 [idle: cpu0] 100003 CanRun [idle: cpu1] 100004 Run CPU 2 [idle: cpu2] 100005 Run CPU 3 [idle: cpu3] 1 0 1 0 SLs wait 0xc29fdc40 [init] 0 0 0 0 DLs (threaded) [kernel] 100000 D swapin 0xc0ab31c0 [swapper] 100006 D - 0xc3bc0400 [softirq_0] 100007 D - 0xc3bc0300 [softirq_1] 100008 D - 0xc3bc0200 [softirq_2] 100009 D - 0xc3bc0100 [softirq_3] 100011 D - 0xd0453e00 [in6m_free taskq] 100012 D - 0xd0453d00 [thread taskq] 100013 D - 0xd0453c00 [aiod_kick taskq] 100014 D - 0xd0453b00 [deferred_unmount ta] 100015 D - 0xd0453a00 [inm_free taskq] 100017 D - 0xd0453800 [kqueue_ctx taskq] 100025 D - 0xd0453600 [firmware taskq] 100030 D - 0xd0453500 [crypto_0] 100031 D - 0xd0453500 [crypto_1] 100032 D - 0xd0453500 [crypto_2] 100033 D - 0xd0453500 [crypto_3] 100079 D - 0xd173fa00 [CAM taskq] 100095 D - 0xd2cdce00 [rtwn0 net80211 task] db> -- You are receiving this mail because: You are the assignee for the bug.