2020-04-03 08:01:43

by Geliang Tang

[permalink] [raw]
Subject: [PATCH] mptcp: move pr_fmt defining to protocol.h

Some of the mptcp logs didn't print out the format string "MPTCP":

[ 129.185774] DSS
[ 129.185774] data_fin=0 dsn64=1 use_map=1 ack64=1 use_ack=1
[ 129.185774] data_ack=5481534886531492085
[ 129.185775] data_seq=15725204003114694615 subflow_seq=1425409 data_len=5216
[ 129.185776] subflow=0000000093526a92 fully established=1 seq=0:0 remaining=28
[ 129.185776] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 data_avail=0 skb=0000000088f05424
[ 129.185777] MPTCP: seq=15725204003114694615 is64=1 ssn=1425409 data_len=5216 data_fin=0
[ 129.185777] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 status=0
[ 129.185778] MPTCP: msk ack_seq=da3b25b9a233c2c7 subflow ack_seq=da3b25b9a233c2c7
[ 129.185778] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 data_avail=1 skb=000000000caed2cc
[ 129.185779] subflow=0000000093526a92 fully established=1 seq=0:0 remaining=28

So this patch moves the pr_fmt defining from protocol.c to protocol.h, which
is included by all the C files. Then we can get the same format string
"MPTCP" in all mptcp logs like this:

[ 141.854787] MPTCP: DSS
[ 141.854788] MPTCP: data_fin=0 dsn64=1 use_map=1 ack64=1 use_ack=1
[ 141.854788] MPTCP: data_ack=18028325517710311871
[ 141.854788] MPTCP: data_seq=6163976859259356786 subflow_seq=3309569 data_len=8192
[ 141.854789] MPTCP: msk=000000005847a66a ssk=0000000022469903 data_avail=0 skb=00000000dd95efc3
[ 141.854789] MPTCP: seq=6163976859259356786 is64=1 ssn=3309569 data_len=8192 data_fin=0
[ 141.854790] MPTCP: msk=000000005847a66a ssk=0000000022469903 status=0
[ 141.854790] MPTCP: msk ack_seq=558ad84b9be1d162 subflow ack_seq=558ad84b9be1d162
[ 141.854791] MPTCP: msk=000000005847a66a ssk=0000000022469903 data_avail=1 skb=000000000b8926f6
[ 141.854791] MPTCP: subflow=00000000e4e4579c fully established=1 seq=0:0 remaining=28
[ 141.854792] MPTCP: subflow=00000000e4e4579c fully established=1 seq=0:dcdf2f3b remaining=28

Signed-off-by: Geliang Tang <[email protected]>
---
net/mptcp/protocol.c | 2 --
net/mptcp/protocol.h | 2 ++
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/net/mptcp/protocol.c b/net/mptcp/protocol.c
index 72f3176dc924..cc86137cd04f 100644
--- a/net/mptcp/protocol.c
+++ b/net/mptcp/protocol.c
@@ -4,8 +4,6 @@
* Copyright (c) 2017 - 2019, Intel Corporation.
*/

-#define pr_fmt(fmt) "MPTCP: " fmt
-
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/netdevice.h>
diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h
index 67448002a2d7..3eff041eeccf 100644
--- a/net/mptcp/protocol.h
+++ b/net/mptcp/protocol.h
@@ -7,6 +7,8 @@
#ifndef __MPTCP_PROTOCOL_H
#define __MPTCP_PROTOCOL_H

+#define pr_fmt(fmt) "MPTCP: " fmt
+
#include <linux/random.h>
#include <net/tcp.h>
#include <net/inet_connection_sock.h>
--
2.17.1


2020-04-03 09:24:11

by Geliang Tang

[permalink] [raw]
Subject: [PATCH v2] mptcp: add some missing pr_fmt defines

Some of the mptcp logs didn't print out the format string:

[ 185.651493] DSS
[ 185.651494] data_fin=0 dsn64=0 use_map=0 ack64=1 use_ack=1
[ 185.651494] data_ack=13792750332298763796
[ 185.651495] MPTCP: msk=00000000c4b81cfc ssk=000000009743af53 data_avail=0 skb=0000000063dc595d
[ 185.651495] MPTCP: msk=00000000c4b81cfc ssk=000000009743af53 status=0
[ 185.651495] MPTCP: msk ack_seq=9bbc894565aa2f9a subflow ack_seq=9bbc894565aa2f9a
[ 185.651496] MPTCP: msk=00000000c4b81cfc ssk=000000009743af53 data_avail=1 skb=0000000012e809e1

So this patch added these missing pr_fmt defines. Then we can get the same
format string "MPTCP" in all mptcp logs like this:

[ 142.795829] MPTCP: DSS
[ 142.795829] MPTCP: data_fin=0 dsn64=0 use_map=0 ack64=1 use_ack=1
[ 142.795829] MPTCP: data_ack=8089704603109242421
[ 142.795830] MPTCP: msk=00000000133a24e0 ssk=000000002e508c64 data_avail=0 skb=00000000d5f230df
[ 142.795830] MPTCP: msk=00000000133a24e0 ssk=000000002e508c64 status=0
[ 142.795831] MPTCP: msk ack_seq=66790290f1199d9b subflow ack_seq=66790290f1199d9b
[ 142.795831] MPTCP: msk=00000000133a24e0 ssk=000000002e508c64 data_avail=1 skb=00000000de5aca2e

Signed-off-by: Geliang Tang <[email protected]>

---
Changes in v2:
- add pr_fmt to C files, not headers.
---
net/mptcp/options.c | 2 ++
net/mptcp/pm.c | 2 ++
net/mptcp/pm_netlink.c | 2 ++
3 files changed, 6 insertions(+)

diff --git a/net/mptcp/options.c b/net/mptcp/options.c
index bd220ee4aac9..faf57585b892 100644
--- a/net/mptcp/options.c
+++ b/net/mptcp/options.c
@@ -4,6 +4,8 @@
* Copyright (c) 2017 - 2019, Intel Corporation.
*/

+#define pr_fmt(fmt) "MPTCP: " fmt
+
#include <linux/kernel.h>
#include <net/tcp.h>
#include <net/mptcp.h>
diff --git a/net/mptcp/pm.c b/net/mptcp/pm.c
index 064639f72487..977d9c8b1453 100644
--- a/net/mptcp/pm.c
+++ b/net/mptcp/pm.c
@@ -3,6 +3,8 @@
*
* Copyright (c) 2019, Intel Corporation.
*/
+#define pr_fmt(fmt) "MPTCP: " fmt
+
#include <linux/kernel.h>
#include <net/tcp.h>
#include <net/mptcp.h>
diff --git a/net/mptcp/pm_netlink.c b/net/mptcp/pm_netlink.c
index a0ce7f324499..86d61ab34c7c 100644
--- a/net/mptcp/pm_netlink.c
+++ b/net/mptcp/pm_netlink.c
@@ -4,6 +4,8 @@
* Copyright (c) 2020, Red Hat, Inc.
*/

+#define pr_fmt(fmt) "MPTCP: " fmt
+
#include <linux/inet.h>
#include <linux/kernel.h>
#include <net/tcp.h>
--
2.17.1

2020-04-03 10:30:26

by Matthieu Baerts

[permalink] [raw]
Subject: Re: [PATCH] mptcp: move pr_fmt defining to protocol.h

Hi Geliang,

On 03/04/2020 09:57, Geliang Tang wrote:
> Some of the mptcp logs didn't print out the format string "MPTCP":
>
> [ 129.185774] DSS
> [ 129.185774] data_fin=0 dsn64=1 use_map=1 ack64=1 use_ack=1
> [ 129.185774] data_ack=5481534886531492085
> [ 129.185775] data_seq=15725204003114694615 subflow_seq=1425409 data_len=5216
> [ 129.185776] subflow=0000000093526a92 fully established=1 seq=0:0 remaining=28
> [ 129.185776] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 data_avail=0 skb=0000000088f05424
> [ 129.185777] MPTCP: seq=15725204003114694615 is64=1 ssn=1425409 data_len=5216 data_fin=0
> [ 129.185777] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 status=0
> [ 129.185778] MPTCP: msk ack_seq=da3b25b9a233c2c7 subflow ack_seq=da3b25b9a233c2c7
> [ 129.185778] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 data_avail=1 skb=000000000caed2cc
> [ 129.185779] subflow=0000000093526a92 fully established=1 seq=0:0 remaining=28
>
> So this patch moves the pr_fmt defining from protocol.c to protocol.h, which
> is included by all the C files. Then we can get the same format string
> "MPTCP" in all mptcp logs like this:
>
> [ 141.854787] MPTCP: DSS
> [ 141.854788] MPTCP: data_fin=0 dsn64=1 use_map=1 ack64=1 use_ack=1
> [ 141.854788] MPTCP: data_ack=18028325517710311871
> [ 141.854788] MPTCP: data_seq=6163976859259356786 subflow_seq=3309569 data_len=8192
> [ 141.854789] MPTCP: msk=000000005847a66a ssk=0000000022469903 data_avail=0 skb=00000000dd95efc3
> [ 141.854789] MPTCP: seq=6163976859259356786 is64=1 ssn=3309569 data_len=8192 data_fin=0
> [ 141.854790] MPTCP: msk=000000005847a66a ssk=0000000022469903 status=0
> [ 141.854790] MPTCP: msk ack_seq=558ad84b9be1d162 subflow ack_seq=558ad84b9be1d162
> [ 141.854791] MPTCP: msk=000000005847a66a ssk=0000000022469903 data_avail=1 skb=000000000b8926f6
> [ 141.854791] MPTCP: subflow=00000000e4e4579c fully established=1 seq=0:0 remaining=28
> [ 141.854792] MPTCP: subflow=00000000e4e4579c fully established=1 seq=0:dcdf2f3b remaining=28

Good idea to uniform that.
I think it can be useful for MPTCP devs to add a different prefix in
each MPTCP .c files but this small improvement can be done later.

LGTM, thanks Geliang!

Reviewed-by: Matthieu Baerts <[email protected]>

2020-04-03 11:52:50

by Geliang Tang

[permalink] [raw]
Subject: Re: [PATCH] mptcp: move pr_fmt defining to protocol.h

On Fri, Apr 03, 2020 at 12:29:27PM +0200, Matthieu Baerts wrote:
> Hi Geliang,
>
> On 03/04/2020 09:57, Geliang Tang wrote:
> > Some of the mptcp logs didn't print out the format string "MPTCP":
> >
> > [ 129.185774] DSS
> > [ 129.185774] data_fin=0 dsn64=1 use_map=1 ack64=1 use_ack=1
> > [ 129.185774] data_ack=5481534886531492085
> > [ 129.185775] data_seq=15725204003114694615 subflow_seq=1425409 data_len=5216
> > [ 129.185776] subflow=0000000093526a92 fully established=1 seq=0:0 remaining=28
> > [ 129.185776] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 data_avail=0 skb=0000000088f05424
> > [ 129.185777] MPTCP: seq=15725204003114694615 is64=1 ssn=1425409 data_len=5216 data_fin=0
> > [ 129.185777] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 status=0
> > [ 129.185778] MPTCP: msk ack_seq=da3b25b9a233c2c7 subflow ack_seq=da3b25b9a233c2c7
> > [ 129.185778] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 data_avail=1 skb=000000000caed2cc
> > [ 129.185779] subflow=0000000093526a92 fully established=1 seq=0:0 remaining=28
> >
> > So this patch moves the pr_fmt defining from protocol.c to protocol.h, which
> > is included by all the C files. Then we can get the same format string
> > "MPTCP" in all mptcp logs like this:
> >
> > [ 141.854787] MPTCP: DSS
> > [ 141.854788] MPTCP: data_fin=0 dsn64=1 use_map=1 ack64=1 use_ack=1
> > [ 141.854788] MPTCP: data_ack=18028325517710311871
> > [ 141.854788] MPTCP: data_seq=6163976859259356786 subflow_seq=3309569 data_len=8192
> > [ 141.854789] MPTCP: msk=000000005847a66a ssk=0000000022469903 data_avail=0 skb=00000000dd95efc3
> > [ 141.854789] MPTCP: seq=6163976859259356786 is64=1 ssn=3309569 data_len=8192 data_fin=0
> > [ 141.854790] MPTCP: msk=000000005847a66a ssk=0000000022469903 status=0
> > [ 141.854790] MPTCP: msk ack_seq=558ad84b9be1d162 subflow ack_seq=558ad84b9be1d162
> > [ 141.854791] MPTCP: msk=000000005847a66a ssk=0000000022469903 data_avail=1 skb=000000000b8926f6
> > [ 141.854791] MPTCP: subflow=00000000e4e4579c fully established=1 seq=0:0 remaining=28
> > [ 141.854792] MPTCP: subflow=00000000e4e4579c fully established=1 seq=0:dcdf2f3b remaining=28
>
> Good idea to uniform that.
> I think it can be useful for MPTCP devs to add a different prefix in each
> MPTCP .c files but this small improvement can be done later.
>
> LGTM, thanks Geliang!
>
> Reviewed-by: Matthieu Baerts <[email protected]>

Hi Matthieu,

Thanks for your reply.

I have already resend this patch to you, patch v2, a better version, add
pr_fmt defines in each .c files.

-Geliang

2020-04-03 12:32:07

by Geliang Tang

[permalink] [raw]
Subject: Re: [PATCH] mptcp: move pr_fmt defining to protocol.h

On Fri, Apr 03, 2020 at 12:29:27PM +0200, Matthieu Baerts wrote:
> Hi Geliang,
>
> On 03/04/2020 09:57, Geliang Tang wrote:
> > Some of the mptcp logs didn't print out the format string "MPTCP":
> >
> > [ 129.185774] DSS
> > [ 129.185774] data_fin=0 dsn64=1 use_map=1 ack64=1 use_ack=1
> > [ 129.185774] data_ack=5481534886531492085
> > [ 129.185775] data_seq=15725204003114694615 subflow_seq=1425409 data_len=5216
> > [ 129.185776] subflow=0000000093526a92 fully established=1 seq=0:0 remaining=28
> > [ 129.185776] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 data_avail=0 skb=0000000088f05424
> > [ 129.185777] MPTCP: seq=15725204003114694615 is64=1 ssn=1425409 data_len=5216 data_fin=0
> > [ 129.185777] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 status=0
> > [ 129.185778] MPTCP: msk ack_seq=da3b25b9a233c2c7 subflow ack_seq=da3b25b9a233c2c7
> > [ 129.185778] MPTCP: msk=00000000d5a704a6 ssk=00000000b5aabc31 data_avail=1 skb=000000000caed2cc
> > [ 129.185779] subflow=0000000093526a92 fully established=1 seq=0:0 remaining=28
> >
> > So this patch moves the pr_fmt defining from protocol.c to protocol.h, which
> > is included by all the C files. Then we can get the same format string
> > "MPTCP" in all mptcp logs like this:
> >
> > [ 141.854787] MPTCP: DSS
> > [ 141.854788] MPTCP: data_fin=0 dsn64=1 use_map=1 ack64=1 use_ack=1
> > [ 141.854788] MPTCP: data_ack=18028325517710311871
> > [ 141.854788] MPTCP: data_seq=6163976859259356786 subflow_seq=3309569 data_len=8192
> > [ 141.854789] MPTCP: msk=000000005847a66a ssk=0000000022469903 data_avail=0 skb=00000000dd95efc3
> > [ 141.854789] MPTCP: seq=6163976859259356786 is64=1 ssn=3309569 data_len=8192 data_fin=0
> > [ 141.854790] MPTCP: msk=000000005847a66a ssk=0000000022469903 status=0
> > [ 141.854790] MPTCP: msk ack_seq=558ad84b9be1d162 subflow ack_seq=558ad84b9be1d162
> > [ 141.854791] MPTCP: msk=000000005847a66a ssk=0000000022469903 data_avail=1 skb=000000000b8926f6
> > [ 141.854791] MPTCP: subflow=00000000e4e4579c fully established=1 seq=0:0 remaining=28
> > [ 141.854792] MPTCP: subflow=00000000e4e4579c fully established=1 seq=0:dcdf2f3b remaining=28
>
> Good idea to uniform that.
> I think it can be useful for MPTCP devs to add a different prefix in each
> MPTCP .c files but this small improvement can be done later.
>
> LGTM, thanks Geliang!
>
> Reviewed-by: Matthieu Baerts <[email protected]>

Hi Matthieu,

Thanks for your reply.

I have already resend this patch to you, a better version, v2, added pr_fmt
in each .c files.

-Geliang

2020-04-03 12:34:59

by Matthieu Baerts

[permalink] [raw]
Subject: Re: [PATCH v2] mptcp: add some missing pr_fmt defines

Hi Geliang,

On 03/04/2020 11:14, Geliang Tang wrote:
> Some of the mptcp logs didn't print out the format string:
>
> [ 185.651493] DSS
> [ 185.651494] data_fin=0 dsn64=0 use_map=0 ack64=1 use_ack=1
> [ 185.651494] data_ack=13792750332298763796
> [ 185.651495] MPTCP: msk=00000000c4b81cfc ssk=000000009743af53 data_avail=0 skb=0000000063dc595d
> [ 185.651495] MPTCP: msk=00000000c4b81cfc ssk=000000009743af53 status=0
> [ 185.651495] MPTCP: msk ack_seq=9bbc894565aa2f9a subflow ack_seq=9bbc894565aa2f9a
> [ 185.651496] MPTCP: msk=00000000c4b81cfc ssk=000000009743af53 data_avail=1 skb=0000000012e809e1
>
> So this patch added these missing pr_fmt defines. Then we can get the same
> format string "MPTCP" in all mptcp logs like this:
>
> [ 142.795829] MPTCP: DSS
> [ 142.795829] MPTCP: data_fin=0 dsn64=0 use_map=0 ack64=1 use_ack=1
> [ 142.795829] MPTCP: data_ack=8089704603109242421
> [ 142.795830] MPTCP: msk=00000000133a24e0 ssk=000000002e508c64 data_avail=0 skb=00000000d5f230df
> [ 142.795830] MPTCP: msk=00000000133a24e0 ssk=000000002e508c64 status=0
> [ 142.795831] MPTCP: msk ack_seq=66790290f1199d9b subflow ack_seq=66790290f1199d9b
> [ 142.795831] MPTCP: msk=00000000133a24e0 ssk=000000002e508c64 data_avail=1 skb=00000000de5aca2e
>
> Signed-off-by: Geliang Tang <[email protected]>
>
> ---
> Changes in v2:
> - add pr_fmt to C files, not headers.

Thank you for this v2 (sorry, it was in my spam folder).

I thought checkpatch.pl would have forced you to add a new blank line in
net/mptcp/pm.c after the copyright comment and before the beginning of
the code but it seems not. And there was no blank line before so I guess
it's OK like that!

Reviewed-by: Matthieu Baerts <[email protected]>

2020-04-03 23:07:36

by David Miller

[permalink] [raw]
Subject: Re: [PATCH v2] mptcp: add some missing pr_fmt defines

From: Geliang Tang <[email protected]>
Date: Fri, 3 Apr 2020 17:14:08 +0800

> Some of the mptcp logs didn't print out the format string:
>
> [ 185.651493] DSS
> [ 185.651494] data_fin=0 dsn64=0 use_map=0 ack64=1 use_ack=1
> [ 185.651494] data_ack=13792750332298763796
> [ 185.651495] MPTCP: msk=00000000c4b81cfc ssk=000000009743af53 data_avail=0 skb=0000000063dc595d
> [ 185.651495] MPTCP: msk=00000000c4b81cfc ssk=000000009743af53 status=0
> [ 185.651495] MPTCP: msk ack_seq=9bbc894565aa2f9a subflow ack_seq=9bbc894565aa2f9a
> [ 185.651496] MPTCP: msk=00000000c4b81cfc ssk=000000009743af53 data_avail=1 skb=0000000012e809e1
>
> So this patch added these missing pr_fmt defines. Then we can get the same
> format string "MPTCP" in all mptcp logs like this:
>
> [ 142.795829] MPTCP: DSS
> [ 142.795829] MPTCP: data_fin=0 dsn64=0 use_map=0 ack64=1 use_ack=1
> [ 142.795829] MPTCP: data_ack=8089704603109242421
> [ 142.795830] MPTCP: msk=00000000133a24e0 ssk=000000002e508c64 data_avail=0 skb=00000000d5f230df
> [ 142.795830] MPTCP: msk=00000000133a24e0 ssk=000000002e508c64 status=0
> [ 142.795831] MPTCP: msk ack_seq=66790290f1199d9b subflow ack_seq=66790290f1199d9b
> [ 142.795831] MPTCP: msk=00000000133a24e0 ssk=000000002e508c64 data_avail=1 skb=00000000de5aca2e
>
> Signed-off-by: Geliang Tang <[email protected]>

Applied, thanks.