Re: [PATCH net-next] net: tipc: fix FB_MTU eat two pages
From: Jon Maloy
Date: Tue Jun 08 2021 - 18:37:47 EST
On 6/7/21 8:51 AM, Menglong Dong wrote:
On Sat, Jun 05, 2021 at 10:25:53AM -0400, Jon Maloy wrote:
On 6/4/21 9:28 PM, Menglong Dong wrote:
Hello Maloy,
On Sat, Jun 5, 2021 at 3:20 AM Jon Maloy <jmaloy@xxxxxxxxxx> wrote:
[...]
So if I use the non-crypto version, the size allocated will be:
PAGE_SIZE - BUF_HEADROOM_non-crypto - BUF_TAILROOM_non-crypt +
BUF_HEADROOM_crypto + BUF_TAILROOM_crypto
which is larger than PAGE_SIZE.
So, I think the simple way is to define FB_MTU in 'crypto.h'. Is this
acceptable?
Thanks!
Menglong Dong
I spent a little more time looking into this. I think the best we can do
is to keep FB_MTU internal to msg.c, and then add an outline function to
msg.c that can be used by bcast.c. The way it is used is never time
critical.
I also see that we could need a little cleanup around this. There is a
redundant align() function that should be removed and replaced with the
global ALIGN() macro.
Even tipc_buf_acquire() should use this macro instead of the explicit
method that is used now.
In general, I stongly dislike conditional code, and it is not necessary
in this function. If we redefine the non-crypto BUF_TAILROOM to 0
instead of 16 (it is not used anywhere else) we could get rid of this too.
But I leave that to you. If you only fix the FB_MTU macro I am content.
///jon