All of lore.kernel.org
 help / color / mirror / Atom feed
From: Guenter Roeck <linux@roeck-us.net>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: "David S . Miller" <davem@davemloft.net>,
	Jakub Kicinski <kuba@kernel.org>, netdev <netdev@vger.kernel.org>,
	Eric Dumazet <edumazet@google.com>
Subject: Re: [PATCH net] net: igmp: increase size of mr_ifc_count
Date: Wed, 11 Aug 2021 13:14:46 -0700	[thread overview]
Message-ID: <20210811201446.GA1088467@roeck-us.net> (raw)

On Wed, Aug 11, 2021 at 12:57:15PM -0700, Eric Dumazet wrote:
> From: Eric Dumazet <edumazet@google.com>
> 
> Some arches support cmpxchg() on 4-byte and 8-byte only.
> Increase mr_ifc_count width to 32bit to fix this problem.
> 
> Fixes: 4a2b285e7e10 ("net: igmp: fix data-race in igmp_ifc_timer_expire()")
> Signed-off-by: Eric Dumazet <edumazet@google.com>
> Reported-by: Guenter Roeck <linux@roeck-us.net>

This patch fixes the build problems I had observed.

Tested-by: Guenter Roeck <linux@roeck-us.net>

Thanks,
Guenter

> ---
>  include/linux/inetdevice.h | 2 +-
>  net/ipv4/igmp.c            | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/inetdevice.h b/include/linux/inetdevice.h
> index 53aa0343bf694cb817e00ff597b52ce046e29d2c..aaf4f1b4c277c4ad38e1f0742bb480d3bb003287 100644
> --- a/include/linux/inetdevice.h
> +++ b/include/linux/inetdevice.h
> @@ -41,7 +41,7 @@ struct in_device {
>  	unsigned long		mr_qri;		/* Query Response Interval */
>  	unsigned char		mr_qrv;		/* Query Robustness Variable */
>  	unsigned char		mr_gq_running;
> -	unsigned char		mr_ifc_count;
> +	u32			mr_ifc_count;
>  	struct timer_list	mr_gq_timer;	/* general query timer */
>  	struct timer_list	mr_ifc_timer;	/* interface change timer */
>  
> diff --git a/net/ipv4/igmp.c b/net/ipv4/igmp.c
> index a51360087b19845a28408c827032e08dabf99838..00576bae183d30518e376ad3846d4fe6025aaea7 100644
> --- a/net/ipv4/igmp.c
> +++ b/net/ipv4/igmp.c
> @@ -803,7 +803,7 @@ static void igmp_gq_timer_expire(struct timer_list *t)
>  static void igmp_ifc_timer_expire(struct timer_list *t)
>  {
>  	struct in_device *in_dev = from_timer(in_dev, t, mr_ifc_timer);
> -	u8 mr_ifc_count;
> +	u32 mr_ifc_count;
>  
>  	igmpv3_send_cr(in_dev);
>  restart:
> -- 
> 2.32.0.605.g8dce9f2422-goog
> 

             reply	other threads:[~2021-08-11 20:14 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-11 20:14 Guenter Roeck [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-08-11 19:57 [PATCH net] net: igmp: increase size of mr_ifc_count Eric Dumazet
2021-08-11 23:10 ` patchwork-bot+netdevbpf

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=20210811201446.GA1088467@roeck-us.net \
    --to=linux@roeck-us.net \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=eric.dumazet@gmail.com \
    --cc=kuba@kernel.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.