[riot-notifications] [RIOT-OS/RIOT] cpu/sam0: improve ethernet driver resilience (#16683)

Dylan Laduranty notifications at github.com
Mon Jul 26 21:48:34 CEST 2021


### Contribution description
This PR provides a better resilience to the SAM0 ethernet driver in case of heavy traffic in the network.

In some case interrupts fire faster than the netdev thread can process them and we run out of buffers quickly. With this PR, we now check if we don't have buffers available, so we can flush everything and restart reception properly even if we did drop a few in the operation.



### Testing procedure
See #16451 


### Issues/PRs references
Fixes #16451 
<!--
Examples: Fixes #1234. See also #5678. Depends on PR #9876.

Please use keywords (e.g., fixes, resolve) with the links to the issues you
resolved, this way they will be automatically closed when your pull request
is merged. See https://help.github.com/articles/closing-issues-using-keywords/.
-->

You can view, comment on, or merge this pull request online at:

  https://github.com/RIOT-OS/RIOT/pull/16683

-- Commit Summary --

  * cpu/sam0: improve ethernet driver resilience

-- File Changes --

    M cpu/sam0_common/periph/eth.c (35)
    M cpu/sam0_common/sam0_eth/eth-netdev.c (22)

-- Patch Links --

https://github.com/RIOT-OS/RIOT/pull/16683.patch
https://github.com/RIOT-OS/RIOT/pull/16683.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/RIOT-OS/RIOT/pull/16683
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20210726/69297f56/attachment.htm>


More information about the notifications mailing list