mptcp.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [PATCH mptcp-next] mptcp: add MIB counter for invalid mapping
@ 2021-06-03 13:25 Paolo Abeni
  2021-06-03 14:30 ` Maxim Galaganov
  0 siblings, 1 reply; 3+ messages in thread
From: Paolo Abeni @ 2021-06-03 13:25 UTC (permalink / raw)
  To: mptcp

Account this exceptional events for better introspection.

Signed-off-by: Paolo Abeni <pabeni@redhat.com>
---
 net/mptcp/mib.h     | 1 +
 net/mptcp/subflow.c | 4 +++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/net/mptcp/mib.h b/net/mptcp/mib.h
index 92e56c0cfbdd..193466c9b549 100644
--- a/net/mptcp/mib.h
+++ b/net/mptcp/mib.h
@@ -18,6 +18,7 @@ enum linux_mptcp_mib_field {
 	MPTCP_MIB_JOINACKMAC,		/* HMAC was wrong on ACK + MP_JOIN */
 	MPTCP_MIB_DSSNOMATCH,		/* Received a new mapping that did not match the previous one */
 	MPTCP_MIB_INFINITEMAPRX,	/* Received an infinite mapping */
+	MPTCP_MIB_DSSTCPMISMATCH,	/* DSS-mapping did not map with TCP's sequence numbers */
 	MPTCP_MIB_DATACSUMERR,		/* The data checksum fail */
 	MPTCP_MIB_OFOQUEUETAIL,	/* Segments inserted into OoO queue tail */
 	MPTCP_MIB_OFOQUEUE,		/* Segments inserted into OoO queue */
diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c
index 259f99b61c35..ccc07cbab867 100644
--- a/net/mptcp/subflow.c
+++ b/net/mptcp/subflow.c
@@ -1046,8 +1046,10 @@ static enum mapping_status get_mapping_status(struct sock *ssk,
 	/* we revalidate valid mapping on new skb, because we must ensure
 	 * the current skb is completely covered by the available mapping
 	 */
-	if (!validate_mapping(ssk, skb))
+	if (!validate_mapping(ssk, skb)) {
+		MPTCP_INC_STATS(sock_net(ssk), MPTCP_MIB_DSSTCPMISMATCH);
 		return MAPPING_INVALID;
+	}
 
 	skb_ext_del(skb, SKB_EXT_MPTCP);
 
-- 
2.26.3


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH mptcp-next] mptcp: add MIB counter for invalid mapping
  2021-06-03 13:25 [PATCH mptcp-next] mptcp: add MIB counter for invalid mapping Paolo Abeni
@ 2021-06-03 14:30 ` Maxim Galaganov
  2021-06-03 14:41   ` Paolo Abeni
  0 siblings, 1 reply; 3+ messages in thread
From: Maxim Galaganov @ 2021-06-03 14:30 UTC (permalink / raw)
  To: Paolo Abeni; +Cc: mptcp

03.06.2021 16:25, Paolo Abeni пишет:
> Account this exceptional events for better introspection.
> 
> Signed-off-by: Paolo Abeni <pabeni@redhat.com>
> ---
>   net/mptcp/mib.h     | 1 +
>   net/mptcp/subflow.c | 4 +++-
>   2 files changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/net/mptcp/mib.h b/net/mptcp/mib.h
> index 92e56c0cfbdd..193466c9b549 100644
> --- a/net/mptcp/mib.h
> +++ b/net/mptcp/mib.h
> @@ -18,6 +18,7 @@ enum linux_mptcp_mib_field {
>   	MPTCP_MIB_JOINACKMAC,		/* HMAC was wrong on ACK + MP_JOIN */
>   	MPTCP_MIB_DSSNOMATCH,		/* Received a new mapping that did not match the previous one */
>   	MPTCP_MIB_INFINITEMAPRX,	/* Received an infinite mapping */
> +	MPTCP_MIB_DSSTCPMISMATCH,	/* DSS-mapping did not map with TCP's sequence numbers */

Shouldn't there also be a related change to mptcp_snmp_list in mib.c ?

>   	MPTCP_MIB_DATACSUMERR,		/* The data checksum fail */
>   	MPTCP_MIB_OFOQUEUETAIL,	/* Segments inserted into OoO queue tail */
>   	MPTCP_MIB_OFOQUEUE,		/* Segments inserted into OoO queue */
> diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c
> index 259f99b61c35..ccc07cbab867 100644
> --- a/net/mptcp/subflow.c
> +++ b/net/mptcp/subflow.c
> @@ -1046,8 +1046,10 @@ static enum mapping_status get_mapping_status(struct sock *ssk,
>   	/* we revalidate valid mapping on new skb, because we must ensure
>   	 * the current skb is completely covered by the available mapping
>   	 */
> -	if (!validate_mapping(ssk, skb))
> +	if (!validate_mapping(ssk, skb)) {
> +		MPTCP_INC_STATS(sock_net(ssk), MPTCP_MIB_DSSTCPMISMATCH);
>   		return MAPPING_INVALID;
> +	}
>   
>   	skb_ext_del(skb, SKB_EXT_MPTCP);
>   
> 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH mptcp-next] mptcp: add MIB counter for invalid mapping
  2021-06-03 14:30 ` Maxim Galaganov
@ 2021-06-03 14:41   ` Paolo Abeni
  0 siblings, 0 replies; 3+ messages in thread
From: Paolo Abeni @ 2021-06-03 14:41 UTC (permalink / raw)
  To: Maxim Galaganov; +Cc: mptcp

On Thu, 2021-06-03 at 17:30 +0300, Maxim Galaganov wrote:
> 03.06.2021 16:25, Paolo Abeni пишет:
> > Account this exceptional events for better introspection.
> > 
> > Signed-off-by: Paolo Abeni <pabeni@redhat.com>
> > ---
> >   net/mptcp/mib.h     | 1 +
> >   net/mptcp/subflow.c | 4 +++-
> >   2 files changed, 4 insertions(+), 1 deletion(-)
> > 
> > diff --git a/net/mptcp/mib.h b/net/mptcp/mib.h
> > index 92e56c0cfbdd..193466c9b549 100644
> > --- a/net/mptcp/mib.h
> > +++ b/net/mptcp/mib.h
> > @@ -18,6 +18,7 @@ enum linux_mptcp_mib_field {
> >   	MPTCP_MIB_JOINACKMAC,		/* HMAC was wrong on ACK + MP_JOIN */
> >   	MPTCP_MIB_DSSNOMATCH,		/* Received a new mapping that did not match the previous one */
> >   	MPTCP_MIB_INFINITEMAPRX,	/* Received an infinite mapping */
> > +	MPTCP_MIB_DSSTCPMISMATCH,	/* DSS-mapping did not map with TCP's sequence numbers */
> 
> Shouldn't there also be a related change to mptcp_snmp_list in mib.c ?

Indeed! thanks for double checking!

I'll send a v2

/P


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-06-03 16:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-03 13:25 [PATCH mptcp-next] mptcp: add MIB counter for invalid mapping Paolo Abeni
2021-06-03 14:30 ` Maxim Galaganov
2021-06-03 14:41   ` Paolo Abeni

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).