[PATCH net-next] net: psample: fix flag being set in wrong skb

Adrian Moreno posted 1 patch 1 year, 5 months ago
There is a newer version of this series
net/psample/psample.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH net-next] net: psample: fix flag being set in wrong skb
Posted by Adrian Moreno 1 year, 5 months ago
A typo makes PSAMPLE_ATTR_SAMPLE_RATE netlink flag be added to the wrong
sk_buff.

Fixes: 7b1b2b60c63f ("net: psample: allow using rate as probability")
Signed-off-by: Adrian Moreno <amorenoz@redhat.com>
---
 net/psample/psample.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/psample/psample.c b/net/psample/psample.c
index f48b5b9cd409..11b7533067b8 100644
--- a/net/psample/psample.c
+++ b/net/psample/psample.c
@@ -498,7 +498,7 @@ void psample_sample_packet(struct psample_group *group, struct sk_buff *skb,
 		goto error;
 
 	if (md->rate_as_probability)
-		nla_put_flag(skb, PSAMPLE_ATTR_SAMPLE_PROBABILITY);
+		nla_put_flag(nl_skb, PSAMPLE_ATTR_SAMPLE_PROBABILITY);
 
 	genlmsg_end(nl_skb, data);
 	genlmsg_multicast_netns(&psample_nl_family, group->net, nl_skb, 0,
-- 
2.45.2
Re: [PATCH net-next] net: psample: fix flag being set in wrong skb
Posted by Ilya Maximets 1 year, 5 months ago
On 7/9/24 22:34, Adrian Moreno wrote:
> A typo makes PSAMPLE_ATTR_SAMPLE_RATE netlink flag be added to the wrong
> sk_buff.
> 
> Fixes: 7b1b2b60c63f ("net: psample: allow using rate as probability")
> Signed-off-by: Adrian Moreno <amorenoz@redhat.com>
> ---
>  net/psample/psample.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/net/psample/psample.c b/net/psample/psample.c
> index f48b5b9cd409..11b7533067b8 100644
> --- a/net/psample/psample.c
> +++ b/net/psample/psample.c
> @@ -498,7 +498,7 @@ void psample_sample_packet(struct psample_group *group, struct sk_buff *skb,
>  		goto error;
>  
>  	if (md->rate_as_probability)
> -		nla_put_flag(skb, PSAMPLE_ATTR_SAMPLE_PROBABILITY);
> +		nla_put_flag(nl_skb, PSAMPLE_ATTR_SAMPLE_PROBABILITY);
>  
>  	genlmsg_end(nl_skb, data);
>  	genlmsg_multicast_netns(&psample_nl_family, group->net, nl_skb, 0,

Uff.  Nasty.

I'd say we should change the function argument to 'const' to avoid such
issues in the future.  There is no reason for this function to modify
the original packet.  What do you think?

Best regards, Ilya Maximets.
Re: [PATCH net-next] net: psample: fix flag being set in wrong skb
Posted by Adrián Moreno 1 year, 5 months ago
On Wed, Jul 10, 2024 at 12:57:14AM GMT, Ilya Maximets wrote:
> On 7/9/24 22:34, Adrian Moreno wrote:
> > A typo makes PSAMPLE_ATTR_SAMPLE_RATE netlink flag be added to the wrong
> > sk_buff.
> >
> > Fixes: 7b1b2b60c63f ("net: psample: allow using rate as probability")
> > Signed-off-by: Adrian Moreno <amorenoz@redhat.com>
> > ---
> >  net/psample/psample.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/net/psample/psample.c b/net/psample/psample.c
> > index f48b5b9cd409..11b7533067b8 100644
> > --- a/net/psample/psample.c
> > +++ b/net/psample/psample.c
> > @@ -498,7 +498,7 @@ void psample_sample_packet(struct psample_group *group, struct sk_buff *skb,
> >  		goto error;
> >
> >  	if (md->rate_as_probability)
> > -		nla_put_flag(skb, PSAMPLE_ATTR_SAMPLE_PROBABILITY);
> > +		nla_put_flag(nl_skb, PSAMPLE_ATTR_SAMPLE_PROBABILITY);
> >
> >  	genlmsg_end(nl_skb, data);
> >  	genlmsg_multicast_netns(&psample_nl_family, group->net, nl_skb, 0,
>
> Uff.  Nasty.
>
> I'd say we should change the function argument to 'const' to avoid such
> issues in the future.  There is no reason for this function to modify
> the original packet.  What do you think?
>

Yes, that's probably a good idea.

Adrián.

> Best regards, Ilya Maximets.
>