RT-Thread / RT-Thread/rt-thread

rndis长时间通信出现死机或网卡禁用无法通信,可重现

Open
#2,804 0 comments 0 reactions 1 assignee View on GitHub

@lymzzyh is already working on this.

Since Jun 25, 2019.

bug
Dominant language
C
Stars
12.2k
Forks
5.4k
Avg merge
4d 12h
Merged PRs (30d)
40

Description

使用最新代码,一段时间后出现死机,死机log如下
<4>May 31 13:07:51 RNDIS etx: wait for buffer free timeout
<7>May 31 13:08:01 RNDIS usbd: REMOTE_NDIS_INITIALIZE_MSG
<7>May 31 13:08:01 RNDIS usbd: REMOTE_NDIS_SET_MSG
<7>May 31 13:08:01 RNDIS usbd: OID_GEN_CURRENT_PACKET_FILTER
<7>May 31 13:08:07 RNDIS usbd: REMOTE_NDIS_KEEPALIVE_MSG
psr: 0x61009800
r00: 0x20092c6b
r01: 0x2001143a
r02: 0x0000002c
r03: 0x00000040
r04: 0x20011380
r05: 0x0000002e
r06: 0x200124c4
r07: 0x20011438
r08: 0xdeadbeef
r09: 0xdeadbeef
r10: 0xdeadbeef
r11: 0xdeadbeef
r12: 0x00000000
lr: 0x08032c29
pc: 0x08000bc0
hard fault on thread: usbd

thread pri status sp stack size max used left tick error


gui 30 suspend 0x0000011c 0x00000600 71% 0x00000005 000
telnet 25 suspend 0x0000016c 0x00000800 21% 0x00000002 000
tcpserv 15 suspend 0x000001cc 0x00000800 49% 0x00000002 000
uartServ 10 suspend 0x000000ac 0x00000800 08% 0x00000013 000
main_t 30 ready 0x000000fc 0x00000400 45% 0x00000001 000
tshell 20 suspend 0x00000084 0x00000400 45% 0x00000006 000
usbd 8 ready 0x000000ac 0x00000400 51% 0x0000000d 000
ulog_asy 30 suspend 0x00000084 0x00000400 25% 0x00000001 000
tcpip 12 suspend 0x000000c4 0x00000800 32% 0x00000013 000
etx 14 suspend 0x00000098 0x00000400 42% 0x0000000a 000
erx 14 suspend 0x00000098 0x00000400 39% 0x0000000b 000
tidle 31 ready 0x00000044 0x00000100 26% 0x0000000c 000
timer 4 suspend 0x000000e4 0x00000400 80% 0x00000008 000
main 10 close 0x000000f4 0x00000800 37% 0x00000004 000
bus fault:
SCB_CFSR_BFSR:0x04 IMPRECISERR
或者出现网卡禁用无法使能。
或者出现网卡link down状态无法通信
后者初选网卡是link up状态也无法通信

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.