[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180805094835.3e2njq2f3plj7njj@breakpoint.cc>
Date: Sun, 5 Aug 2018 11:48:35 +0200
From: Florian Westphal <fw@...len.de>
To: Satish Patel <satish.txt@...il.com>
Cc: netdev@...r.kernel.org
Subject: Re: Linux kernel error stack
Satish Patel <satish.txt@...il.com> wrote:
> I am installing openstack and as you know i have lots of bridges and
> vlan interface on my Linux CentOS 7.5
>
> I was getting following error stack on 3.10 kernel and found this is
> kernel bug which required kernel upgrade so now i have upgraded my
> kernel to 4.17.12 but i am still seeing same kernel stack error on my
> dmesg
>
> I have disable TSO, LRO, SG & GSO on my NIC but still getting error
> just wanted to understand what is this and why it popping up
Get rid of CHECKSUM target in the iptables rules.
This thing was added 8 years ago to work around dhcp bugs, I don't
think its use is needed anymore.
Try removing it and see that all VMs can still retrieve IP address
via DHCP.
I'm curious as to the rules, normally CHECKSUM target should be
limited to -p udp --dport bootp; its bad idea to feed it normal
packets, its expensive to do this in software rather than have device
do the checksumming.
As for fix, I'm tempted to send patch to make checksum target
eval a no-op & add deprecation warning on init...
Other "fix" is to
diff --git a/net/netfilter/xt_CHECKSUM.c b/net/netfilter/xt_CHECKSUM.c
index 9f4151ec3e06..23a17dda604d 100644
--- a/net/netfilter/xt_CHECKSUM.c
+++ b/net/netfilter/xt_CHECKSUM.c
@@ -25,8 +25,12 @@ MODULE_ALIAS("ip6t_CHECKSUM");
static unsigned int
checksum_tg(struct sk_buff *skb, const struct xt_action_param *par)
{
- if (skb->ip_summed == CHECKSUM_PARTIAL)
- skb_checksum_help(skb);
+ if (skb->ip_summed == CHECKSUM_PARTIAL) {
+ if (skb_shinfo(skb)->gso_size)
+ skb->ip_summed = CHECKSUM_NONE;
+ else
+ skb_checksum_help(skb);
+ }
return XT_CONTINUE;
}
(unfortunately, the target isn't restricted to POSTROUTING, sigh).
Powered by blists - more mailing lists