From: David Ahern <dsahern@gmail.com>
To: Crestez Dan Leonard <cdleonard@gmail.com>, netdev@vger.kernel.org
Subject: Re: [RFC] tcp md5 use of alloc_percpu
Date: Wed, 22 Oct 2014 22:40:36 -0600 [thread overview]
Message-ID: <544886C4.4020702@gmail.com> (raw)
In-Reply-To: <5447FDB2.2010906@gmail.com>
On 10/22/14, 12:55 PM, Crestez Dan Leonard wrote:
> Hello,
>
> It seems that the TCP MD5 feature allocates a percpu struct tcp_md5sig_pool and uses part of that memory for a scratch buffer to do crypto on. Here is the relevant code:
This is a forward port of a local change to address the problem (local
kernel version is 3.4 so perhaps my quick bump to top of tree is off but
it shows the general idea). Been on my to-do list to figure out why this
is needed, but it seems related to your problem:
diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c
index 1bec4e76d88c..833a676bd4b0 100644
--- a/net/ipv4/tcp.c
+++ b/net/ipv4/tcp.c
@@ -2941,7 +2941,7 @@ struct tcp_md5sig_pool *tcp_get_md5sig_pool(void)
local_bh_disable();
p = ACCESS_ONCE(tcp_md5sig_pool);
if (p)
- return raw_cpu_ptr(p);
+ return __va(per_cpu_ptr_to_phys(raw_cpu_ptr(p)));
local_bh_enable();
return NULL;
David
next prev parent reply other threads:[~2014-10-23 4:40 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-22 18:55 [RFC] tcp md5 use of alloc_percpu Crestez Dan Leonard
2014-10-22 19:12 ` Eric Dumazet
2014-10-22 21:35 ` Jonathan Toppins
2014-10-22 23:05 ` Crestez Dan Leonard
2014-10-24 9:33 ` Herbert Xu
2014-10-22 21:53 ` David Miller
2014-10-22 23:38 ` Jonathan Toppins
2014-10-23 1:00 ` Crestez Dan Leonard
2014-10-23 1:47 ` Eric Dumazet
2014-10-23 4:40 ` David Ahern [this message]
2014-10-23 5:23 ` Eric Dumazet
2014-10-23 5:38 ` Eric Dumazet
2014-10-23 6:58 ` Jonathan Toppins
2014-10-23 13:21 ` Eric Dumazet
2014-10-23 14:43 ` Eric Dumazet
2014-10-23 16:17 ` Crestez Dan Leonard
2014-10-23 19:22 ` Eric Dumazet
2014-10-23 16:33 ` [PATCH net] tcp: md5: percpu tcp_md5sig_pool must not span pages Eric Dumazet
2014-10-23 19:34 ` Eric Dumazet
2014-10-23 19:58 ` [PATCH v2 net] tcp: md5: do not use alloc_percpu() Eric Dumazet
2014-10-23 20:44 ` David Ahern
2014-10-23 22:57 ` Eric Dumazet
2014-10-23 23:36 ` David Ahern
2014-10-24 3:45 ` David Ahern
2014-10-25 20:11 ` David Miller
2014-10-23 14:46 ` [RFC] tcp md5 use of alloc_percpu Crestez Dan Leonard
2014-10-23 13:03 ` Crestez Dan Leonard
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=544886C4.4020702@gmail.com \
--to=dsahern@gmail.com \
--cc=cdleonard@gmail.com \
--cc=netdev@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).