• Philippe Gerum's avatar
    net/proxy: fix non-rt signal overflow · 5c4d87c7
    Philippe Gerum authored
    rtdm_nrtsig_pend() is based on ipipe_post_root_work(), which keeps a
    copy of every request descriptor internally until it is consumed by
    the secondary mode handler. Triggering rtdm_nrtsig_pend() every time a
    packet is relayed from the stack to the virtual netdev may cause such
    request buffer to overflow under pressure.
    
    To address this issue, trigger the non-rt signal from
    rtnetproxy_recv() only when the proxy RX queue transitions from empty
    to non-empty as a result of enqueuing the next skb. To this end,
    rtskb_queue_tail_check() is introduced.
    Signed-off-by: Philippe Gerum's avatarPhilippe Gerum <rpm@xenomai.org>
    Signed-off-by: Jan Kiszka's avatarJan Kiszka <jan.kiszka@siemens.com>
    5c4d87c7
Name
Last commit
Last update
config Loading commit data...
debian Loading commit data...
demo Loading commit data...
doc Loading commit data...
include Loading commit data...
kernel Loading commit data...
lib Loading commit data...
scripts Loading commit data...
testsuite Loading commit data...
utils Loading commit data...
.clang-format Loading commit data...
.gitignore Loading commit data...
.travis.yml Loading commit data...
CONTRIBUTING.md Loading commit data...
Makefile.am Loading commit data...
README Loading commit data...
configure.ac Loading commit data...