Re: [PATCH 1/3] net: macb: check constant to define and fix __be32 warnings

From: Simon Horman
Date: Thu Jun 22 2023 - 11:49:47 EST


On Thu, Jun 22, 2023 at 02:05:05PM +0100, Ben Dooks wrote:
> The checks on ipv4 addresses in the filtering code check against
> a constant of 0xFFFFFFFF, so replace it with MACB_IPV4_MASK and
> then make sure it is of __be32 type to avoid the following
> sparse warnigns:
>
> drivers/net/ethernet/cadence/macb_main.c:3448:39: warning: restricted __be32 degrades to integer
> drivers/net/ethernet/cadence/macb_main.c:3453:39: warning: restricted __be32 degrades to integer
> drivers/net/ethernet/cadence/macb_main.c:3483:20: warning: restricted __be32 degrades to integer
> drivers/net/ethernet/cadence/macb_main.c:3497:20: warning: restricted __be32 degrades to integer
>
> Signed-off-by: Ben Dooks <ben.dooks@xxxxxxxxxxxxxxx>
> ---
> drivers/net/ethernet/cadence/macb_main.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c
> index f20ec0d5260b..538d4c7e023b 100644
> --- a/drivers/net/ethernet/cadence/macb_main.c
> +++ b/drivers/net/ethernet/cadence/macb_main.c
> @@ -3418,6 +3418,8 @@ static int macb_get_ts_info(struct net_device *netdev,
> return ethtool_op_get_ts_info(netdev, info);
> }
>
> +#define MACB_IPV4_MASK htonl(0xFFFFFFFF)
> +

Hi Ben,

according to a recent thread, it seems that the preferred approach might be
~(__le32)0.

https://lore.kernel.org/netdev/20230522153615.247577-1-minhuadotchen@xxxxxxxxx/