Skip to content

net: ARP is broken in master (at least) on STM32 #8668

@therealprof

Description

@therealprof

I was trying to introduce networking support to new STM32 boards earlier today and was scratching my head about was was wrong with the driver because I couldn't get a single ARP reply into the ARP cache. Out of desperation I ripped out a known good device (Nucleo-F429ZI) board out of a setup and tried the latest Zephyr version on that one and low-and-behold: it shows the same problem.

So I went back to an older version and it worked fine, so I reduced my sample config and bisected the latest changes. The bisection is not 100% conclusive (because the changes don't seem to be 100% separate) but the build fails somewhere around: 89eeba4.

Signs of the problem are constant ARP resends with the responses being ignored:

[net/arp] [DBG] arp_entry_find_move_first: (0x200064b0): dst 192.168.11.200
[net/arp] [DBG] arp_entry_find_pending: (0x200064b0): dst 192.168.11.200
[net/ethernet] [DBG] net_eth_fill_header: (0x200064b0): iface 0x2000ba20 src 00:80:E1:E1:11:5E dst FF:FF:FF:FF:FF:FF type 0x806 len 0
[net/arp] [DBG] net_arp_prepare: (0x200064b0): Resending ARP 0x20007f40
[net/ethernet] [DBG] ethernet_send: (0x200064b0): Sending arp pkt 0x20007f40 (orig 0x20007f88) to iface 0x2000ba20
[net/ethernet] [DBG] ethernet_recv: (0x200044b8): iface 0x2000ba20 src C8:0E:14:BC:64:B2 dst 00:80:E1:E1:11:5E type 0x806 len 60
[net/ethernet] [DBG] ethernet_recv: (0x200044b8): ARP packet from C8:0E:14:BC:64:B2 received
[net/arp] [DBG] arp_update: (0x200044b8): src 192.168.11.200
[net/arp] [DBG] arp_entry_get_pending: (0x200044b8): dst 192.168.11.200

and net arp always yielding an exactly empty list.

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions