From: Chris J Arges <chris.j.arges@canonical.com>
To: lvs-devel@vger.kernel.org
Cc: Jesper Dangaard Brouer <brouer@redhat.com>, Julian Anastasov <ja@ssi.bg>
Subject: ip_vs: bug in ip_vs_out when CONFIG_IP_VS_IPV6 is enabled
Date: Thu, 21 Aug 2014 14:44:36 -0500 [thread overview]
Message-ID: <53F64C24.1080309@canonical.com> (raw)
A bug was reported against our kernel, which looks to be an upstream
issue after some testing (as of 3.17-rc1).
In short, it seems that using ip_vs with something like dnsmasq-tftp to
send data will cause the transfer to stop at some point where the read
will error giving EPERM. It was discovered that CONFIG_IP_VS_IPV6 was
the change that introduce this difference in behavor.
The bug report is here:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1349768
Which includes a test case in order to reproduce this issue:
https://launchpadlibrarian.net/182765875/lp1349768.sh
We've just recently enabled CONFIG_IP_VS_IPV6, which exposed this issue;
and the user is not using IPV6 functionality.
I've traced through the code and found that this segment in
net/netfilter/ipvs/ip_vs_core.c
function ip_vs_out is what triggers this issue, if commented out the
problem does not occur:
#ifdef CONFIG_IP_VS_IPV6
if (af == AF_INET6) {
if (unlikely(iph.protocol == IPPROTO_ICMPV6)) {
int related;
int verdict = ip_vs_out_icmp_v6(skb, &related,
hooknum, &iph);
if (related)
return verdict;
}
} else
#endif
Printk'ing further into this, I see that ip_vs_out_icmp_v6 utimately
fails as frag_safe_skb_hp return NULL when packets are no longer being
sent with the test case.
Any suggestions for a fix for this issue, or a places to continue
looking? I'd be happy to continue hacking on this and provide testing.
(Resending because I sent to the incorrect ML address...)
Thanks,
--chris j arges
next reply other threads:[~2014-08-21 19:44 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-21 19:44 Chris J Arges [this message]
2014-08-21 22:22 ` ip_vs: bug in ip_vs_out when CONFIG_IP_VS_IPV6 is enabled Julian Anastasov
2014-08-22 13:51 ` Chris J Arges
2014-08-22 14:51 ` Julian Anastasov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53F64C24.1080309@canonical.com \
--to=chris.j.arges@canonical.com \
--cc=brouer@redhat.com \
--cc=ja@ssi.bg \
--cc=lvs-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.