LVS
lvs-devel
Google
 
Web LinuxVirtualServer.org

Re: [PATCH v1 3/5] treewide: use get_random_u32() when possible

To: "Jason A. Donenfeld" <Jason@xxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx
Subject: Re: [PATCH v1 3/5] treewide: use get_random_u32() when possible
Cc: brcm80211-dev-list.pdl@xxxxxxxxxxxx, cake@xxxxxxxxxxxxxxxxxxxxx, ceph-devel@xxxxxxxxxxxxxxx, coreteam@xxxxxxxxxxxxx, dccp@xxxxxxxxxxxxxxx, dev@xxxxxxxxxxxxxxx, dmaengine@xxxxxxxxxxxxxxx, drbd-dev@xxxxxxxxxxxxxxxx, dri-devel@xxxxxxxxxxxxxxxxxxxxx, kasan-dev@xxxxxxxxxxxxxxxx, linux-actions@xxxxxxxxxxxxxxxxxxx, linux-arm-kernel@xxxxxxxxxxxxxxxxxxx, linux-block@xxxxxxxxxxxxxxx, linux-crypto@xxxxxxxxxxxxxxx, linux-doc@xxxxxxxxxxxxxxx, linux-ext4@xxxxxxxxxxxxxxx, linux-f2fs-devel@xxxxxxxxxxxxxxxxxxxxx, linux-fbdev@xxxxxxxxxxxxxxx, linux-fsdevel@xxxxxxxxxxxxxxx, linux-hams@xxxxxxxxxxxxxxx, linux-media@xxxxxxxxxxxxxxx, linux-mm@xxxxxxxxx, linux-mmc@xxxxxxxxxxxxxxx, linux-mtd@xxxxxxxxxxxxxxxxxxx, linux-nfs@xxxxxxxxxxxxxxx, linux-nvme@xxxxxxxxxxxxxxxxxxx, linux-raid@xxxxxxxxxxxxxxx, linux-rdma@xxxxxxxxxxxxxxx, linux-scsi@xxxxxxxxxxxxxxx, linux-sctp@xxxxxxxxxxxxxxx, linux-stm32@xxxxxxxxxxxxxxxxxxxxxxxxxxxx, linux-usb@xxxxxxxxxxxxxxx, linux-wireless@xxxxxxxxxxxxxxx, linux-xfs@xxxxxxxxxxxxxxx, linuxppc-dev@xxxxxxxxxxxxxxxx, lvs-devel@xxxxxxxxxxxxxxx, netdev@xxxxxxxxxxxxxxx, netfilter-devel@xxxxxxxxxxxxxxx, rds-devel@xxxxxxxxxxxxxx, SHA-cyfmac-dev-list@xxxxxxxxxxxx, target-devel@xxxxxxxxxxxxxxx, tipc-discussion@xxxxxxxxxxxxxxxxxxxxx
From: Joe Perches <joe@xxxxxxxxxxx>
Date: Wed, 12 Oct 2022 12:16:53 -0700
On Wed, 2022-10-05 at 23:48 +0200, Jason A. Donenfeld wrote:
> The prandom_u32() function has been a deprecated inline wrapper around
> get_random_u32() for several releases now, and compiles down to the
> exact same code. Replace the deprecated wrapper with a direct call to
> the real function.
[]
> diff --git a/drivers/infiniband/hw/cxgb4/cm.c 
> b/drivers/infiniband/hw/cxgb4/cm.c
[]
> @@ -734,7 +734,7 @@ static int send_connect(struct c4iw_ep *ep)
>                                  &ep->com.remote_addr;
>       int ret;
>       enum chip_type adapter_type = ep->com.dev->rdev.lldi.adapter_type;
> -     u32 isn = (prandom_u32() & ~7UL) - 1;
> +     u32 isn = (get_random_u32() & ~7UL) - 1;

trivia:

There are somewhat odd size mismatches here.

I had to think a tiny bit if random() returned a value from 0 to 7
and was promoted to a 64 bit value then truncated to 32 bit.

Perhaps these would be clearer as ~7U and not ~7UL

>       struct net_device *netdev;
>       u64 params;
>  
> @@ -2469,7 +2469,7 @@ static int accept_cr(struct c4iw_ep *ep, struct sk_buff 
> *skb,
>       }
>  
>       if (!is_t4(adapter_type)) {
> -             u32 isn = (prandom_u32() & ~7UL) - 1;
> +             u32 isn = (get_random_u32() & ~7UL) - 1;

etc...

drivers/infiniband/hw/cxgb4/cm.c:       u32 isn = (prandom_u32() & ~7UL) - 1;
drivers/infiniband/hw/cxgb4/cm.c:               u32 isn = (prandom_u32() & 
~7UL) - 1;
drivers/net/ethernet/chelsio/inline_crypto/chtls/chtls_cm.c:    rpl5->iss = 
cpu_to_be32((prandom_u32() & ~7UL) - 1);
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c:             u32 isn = (prandom_u32() & 
~7UL) - 1;
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c:             u32 isn = (prandom_u32() & 
~7UL) - 1;
drivers/target/iscsi/cxgbit/cxgbit_cm.c:        rpl5->iss = 
cpu_to_be32((prandom_u32() & ~7UL) - 1);


<Prev in Thread] Current Thread [Next in Thread>