On 1/7/21 10:16 PM, Florian Westphal wrote:
Ben Greear <gree...@candelatech.com> wrote:
I noticed my system has a hung process trying to 'rmmod nf_conntrack'.
I've generally been doing the script that calls rmmod forever,
but only extensively tested on 5.4 kernel and earlier.
If anyone has any ideas, please let me know. This is from 'sysrq t'. I don't
see
any hung-task splats in dmesg.
rmmod on conntrack loops forever until the active conntrack object count
reaches 0.
(plus a walk of the conntrack table to evict/put all entries).
I'll see if it is reproducible and if so will try
with lockdep enabled...
No idea, there was a regression in 5.6, but that was fixed by the time
5.7 was released.
Can't reproduce hangs with a script that injects a few dummy entries
and then removes the module:
added=0
add_and_rmmod()
{
while [ $added -lt 1000 ]; do
conntrack -I -s
$(($RANDOM%256)).$(($RANDOM%256)).$(($RANDOM%256)).$(($RANDOM%255+1)) \
-d
$(($RANDOM%256)).$(($RANDOM%256)).$(($RANDOM%256)).$(($RANDOM%255+1)) \
--protonum 6 --timeout $(((RANDOM%120) + 240)) --state
ESTABLISHED --sport $RANDOM --dport $RANDOM 2> /dev/null || break
added=$((added + 1))
if [ $((added % 1000)) -eq 0 ];then
echo $added
fi
done
echo rmmod after adding $added entries
conntrack -C
rmmod nf_conntrack_netlink
rmmod nf_conntrack
}
add_and_rmmod
I don't see how it would make a difference, but do you have any special
conntrack features enabled
at run time, e.g. reliable netlink events? (If you don't know what I mean the
answer is no).
Not that I know of, but I am using lots of VRF devices, each with their own
routing table, as well
as some wifi stations and AP netdevs.
I'll let you know if I can reproduce it again..
Thanks,
Ben
--
Ben Greear <gree...@candelatech.com>
Candela Technologies Inc http://www.candelatech.com