diff --git a/net/arp/arp_notify.c b/net/arp/arp_notify.c index c16cbfa7db..562b33ee80 100644 --- a/net/arp/arp_notify.c +++ b/net/arp/arp_notify.c @@ -188,6 +188,9 @@ int arp_wait(FAR struct arp_notify_s *notify, unsigned int timeout) void arp_notify(in_addr_t ipaddr) { FAR struct arp_notify_s *curr; + irqstate_t flags; + + flags = enter_critical_section(); /* Find an entry with the matching IP address in the list of waiters */ @@ -207,6 +210,8 @@ void arp_notify(in_addr_t ipaddr) break; } } + + leave_critical_section(flags); } #endif /* CONFIG_NET_ARP_SEND */