LoginSignup
0
0

More than 1 year has passed since last update.

RT1310のif

Last updated at Posted at 2023-02-01

ドライバーを作ってみたのですが、落ちます。

# dhcpcd fv1
dhcpcd-9.4.1 starting
dhcpcd-9.4.1 starting
spawned manager process on PID 97
fv1: executing: /libexec/dhcpcd-run-hooks PREINIT
fv1: waiting for carrier
fv1: waiting for carrier
fv1: carrier unknown, assuming up
fv1: carrier unknown, assuming up
fv1: executing: /libexec/dhcpcd-run-hooks CARRIER
DUID 00:01:00:01:2b:62:f4:64:d4:94:a1:97:03:94
DUID 00:01:00:01:2b:62:f4:64:d4:94:a1:97:03:94
fv1: IAID a1:97:03:94
fv1: IAID a1:97:03:94
fv1: delaying IPv4 for 0.4 seconds
fv1: reading lease: /var/db/dhcpcd/fv1.lease
fv1: soliciting a DHCP lease
fv1: soliciting a DHCP lease
fv1: sending DISCOVER (xid 0xca661586), next in 3.9 seconds
fv1: offered 10.0.2.157 from 10.0.2.1
fv1: offered 10.0.2.157 from 10.0.2.1
fv1: sending REQUEST (xid 0xca661586), next in 3.0 seconds
fv1: acknowledged 10.0.2.157 from 10.0.2.1
fv1: adding IP address 10.0.2.157/24 broadcast 10.0.2.255

[   7.0500524] uvm_fault(0xc05f06a0, 0, 1) -> e
[   7.0706743] Fatal kernel mode data abort: 'Translation Fault (P)'
[   7.0889626] trapframe: 0xc3d1fde0
[   7.0889626] FSR=00000017, FAR=0000000c, spsr=60000013
[   7.1101287] r0 =c3d1fe3c, r1 =0000000c, r2 =00000002, r3 =00000040
[   7.1326088] r4 =00000000, r5 =c3d1fea4, r6 =00000000, r7 =00000000
[   7.1511641] r8 =00ff00ff, r9 =c215c700, r10=00000000, r11=c3d1fe64
[   7.1697209] r12=00000028, ssp=c3d1fe30, slr=c017e8a0, pc =c01b960c

Stopped in pid 0.3 (system) at  netbsd:__aeabi_memcpy+0x9c:     ldrb    r3, [r1]
, #0x001
db> trace
0xc3d1fe64: netbsd:bpf_filter_ext+0x10
0xc3d1ff24: netbsd:bpf_deliver+0x2c8
0xc3d1ff44: netbsd:_bpf_mtap+0x94
0xc3d1ff6c: netbsd:if_percpuq_softint+0x9c
0xc3d1ffac: netbsd:softint_thread+0x94
db> 

たまにうまくいったりしますが、じきに落ちます。謎です。

このSOCのMACは設定用のパケットを送信してMACアドレスをMACに設定します。

RXのディスクリプタに貼った、mbufが腐る事があるようです。とりあえずmtod()して0だったら捨てるワークアラウンドを入れたら、どうにか落ちないようになりました。なんで腐るのかを調べる必要がありそうです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0