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: [email protected]
Reporter: [email protected]
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
[email protected]:/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.
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.