From: "Jason A. Donenfeld" <Jason@zx2c4.com>
To: Kees Cook <keescook@chromium.org>
Cc: "Andrew Lunn" <andrew@lunn.ch>,
"Darrick J . Wong" <djwong@kernel.org>,
"Ulf Hansson" <ulf.hansson@linaro.org>,
dri-devel@lists.freedesktop.org,
"Andrii Nakryiko" <andrii@kernel.org>,
"Hans Verkuil" <hverkuil@xs4all.nl>,
linux-sctp@vger.kernel.org,
"Md . Haris Iqbal" <haris.iqbal@ionos.com>,
"Miquel Raynal" <miquel.raynal@bootlin.com>,
"Yehezkel Bernat" <YehezkelShB@gmail.com>,
"Christoph Hellwig" <hch@lst.de>,
"Andy Gospodarek" <andy@greyhouse.net>,
"Sergey Matyukevich" <geomatsi@gmail.com>,
"Rohit Maheshwari" <rohitm@chelsio.com>,
"Michael Ellerman" <mpe@ellerman.id.au>,
ceph-devel@vger.kernel.org,
"Christophe Leroy" <christophe.leroy@csgroup.eu>,
"Jozsef Kadlecsik" <kadlec@netfilter.org>,
"Nilesh Javali" <njavali@marvell.com>,
"Jean-Paul Roubelat" <jpr@f6fbb.org>,
"Dick Kennedy" <dick.kennedy@broadcom.com>,
"Jay Vosburgh" <j.vosburgh@gmail.com>,
"Potnuri Bharat Teja" <bharat@chelsio.com>,
"Vinay Kumar Yadav" <vinay.yadav@chelsio.com>,
linux-nfs@vger.kernel.org, "Nicholas Piggin" <npiggin@gmail.com>,
"Igor Mitsyanko" <imitsyanko@quantenna.com>,
"Andy Lutomirski" <luto@kernel.org>,
linux-hams@vger.kernel.org,
"Thomas Gleixner" <tglx@linutronix.de>,
"Trond Myklebust" <trond.myklebust@hammerspace.com>,
linux-raid@vger.kernel.org, "Neil Horman" <nhorman@tuxdriver.com>,
"Hante Meuleman" <hante.meuleman@broadcom.com>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
linux-usb@vger.kernel.org,
"Michael Chan" <michael.chan@broadcom.com>,
linux-kernel@vger.kernel.org, "Varun Prakash" <varun@chelsio.com>,
"Chuck Lever" <chuck.lever@oracle.com>,
netfilter-devel@vger.kernel.org,
"Masami Hiramatsu" <mhiramat@kernel.org>,
"Jiri Olsa" <jolsa@kernel.org>, "Jan Kara" <jack@suse.com>,
linux-fsdevel@vger.kernel.org,
"Lars Ellenberg" <lars.ellenberg@linbit.com>,
linux-media@vger.kernel.org,
"Claudiu Beznea" <claudiu.beznea@microchip.com>,
"Sharvari Harisangam" <sharvari.harisangam@nxp.com>,
linux-fbdev@vger.kernel.org, linux-doc@vger.kernel.org,
linux-mmc@vger.kernel.org,
"Dave Hansen" <dave.hansen@linux.intel.com>,
"Song Liu" <song@kernel.org>,
"Eric Dumazet" <edumazet@google.com>,
target-devel@vger.kernel.org, "John Stultz" <jstultz@google.com>,
"Stanislav Fomichev" <sdf@google.com>,
"Gregory Greenman" <gregory.greenman@intel.com>,
drbd-dev@lists.linbit.com, dev@openvswitch.org,
"Leon Romanovsky" <leon@kernel.org>,
"Helge Deller" <deller@gmx.de>, "Hugh Dickins" <hughd@google.com>,
"James Smart" <james.smart@broadcom.com>,
"Anil S Keshavamurthy" <anil.s.keshavamurthy@intel.com>,
"Pravin B Shelar" <pshelar@ovn.org>,
"Julian Anastasov" <ja@ssi.bg>,
coreteam@netfilter.org, "Veaceslav Falico" <vfalico@gmail.com>,
"Yonghong Song" <yhs@fb.com>,
"Namjae Jeon" <linkinjeon@kernel.org>,
linux-crypto@vger.kernel.org,
"Santosh Shilimkar" <santosh.shilimkar@oracle.com>,
"Ganapathi Bhat" <ganapathi017@gmail.com>,
linux-actions@lists.infradead.org,
"Simon Horman" <horms@verge.net.au>,
"Jaegeuk Kim" <jaegeuk@kernel.org>,
"Mika Westerberg" <mika.westerberg@linux.intel.com>,
"Andrew Morton" <akpm@linux-foundation.org>,
"OGAWA Hirofumi" <hirofumi@mail.parknet.co.jp>,
"Hao Luo" <haoluo@google.com>, "Theodore Ts'o" <tytso@mit.edu>,
"Stephen Boyd" <sboyd@kernel.org>,
"Dennis Dalessandro" <dennis.dalessandro@cornelisnetworks.com>,
"Florian Westphal" <fw@strlen.de>,
"Andreas Färber" <afaerber@suse.de>,
"Jon Maloy" <jmaloy@redhat.com>,
"Vlad Yasevich" <vyasevich@gmail.com>,
"Anna Schumaker" <anna@kernel.org>,
"Haoyue Xu" <xuhaoyue1@hisilicon.com>,
"Heiner Kallweit" <hkallweit1@gmail.com>,
linux-wireless@vger.kernel.org,
"Marcelo Ricardo Leitner" <marcelo.leitner@gmail.com>,
"Rasmus Villemoes" <linux@rasmusvillemoes.dk>,
linux-nvme@lists.infradead.org,
"Michal Januszewski" <spock@gentoo.org>,
linux-mtd@lists.infradead.org, kasan-dev@googlegroups.com,
"Cong Wang" <xiyou.wangcong@gmail.com>,
"Thomas Sailer" <t.sailer@alumni.ethz.ch>,
"Ajay Singh" <ajay.kathat@microchip.com>,
"Xiubo Li" <xiubli@redhat.com>,
"Sagi Grimberg" <sagi@grimberg.me>,
"Daniel Borkmann" <daniel@iogearbox.net>,
"Jonathan Corbet" <corbet@lwn.net>,
linux-rdma@vger.kernel.org, lvs-devel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
"Naveen N . Rao" <naveen.n.rao@linux.ibm.com>,
"Ilya Dryomov" <idryomov@gmail.com>,
"Paolo Abeni" <pabeni@redhat.com>,
"Pablo Neira Ayuso" <pablo@netfilter.org>,
"Marco Elver" <elver@google.com>,
"Yury Norov" <yury.norov@gmail.com>,
"James E . J . Bottomley" <jejb@linux.ibm.com>,
"Jamal Hadi Salim" <jhs@mojatatu.com>,
"KP Singh" <kpsingh@kernel.org>, "Borislav Petkov" <bp@alien8.de>,
"Keith Busch" <kbusch@kernel.org>,
"Dan Williams" <dan.j.williams@intel.com>,
"Mauro Carvalho Chehab" <mchehab@kernel.org>,
"Franky Lin" <franky.lin@broadcom.com>,
"Arend van Spriel" <aspriel@gmail.com>,
linux-ext4@vger.kernel.org,
"Wenpeng Liang" <liangwenpeng@huawei.com>,
"Martin K . Petersen" <martin.petersen@oracle.com>,
"Xinming Hu" <huxinming820@gmail.com>,
linux-stm32@st-md-mailman.stormreply.com,
"Jeff Layton" <jlayton@kernel.org>,
SHA-cyfmac-dev-list@infineon.com, linux-xfs@vger.kernel.org,
netdev@vger.kernel.org, "Ying Xue" <ying.xue@windriver.com>,
"Manish Rangankar" <mrangankar@marvell.com>,
"David S . Miller" <davem@davemloft.net>,
"Toke Høiland-Jørgensen" <toke@toke.dk>,
"Vignesh Raghavendra" <vigneshr@ti.com>,
"Peter Zijlstra" <peterz@infradead.org>,
"H . Peter Anvin" <hpa@zytor.com>,
"Alexandre Torgue" <alexandre.torgue@foss.st.com>,
"Amitkumar Karwar" <amitkarwar@gmail.com>,
linux-mm@kvack.org, "Andreas Dilger" <adilger.kernel@dilger.ca>,
"Ayush Sawal" <ayush.sawal@chelsio.com>,
"Andreas Noever" <andreas.noever@gmail.com>,
"Jiri Pirko" <jiri@resnulli.us>,
linux-f2fs-devel@lists.sourceforge.net,
"Jack Wang" <jinpu.wang@ionos.com>,
"Steffen Klassert" <steffen.klassert@secunet.com>,
rds-devel@oss.oracle.com,
"Herbert Xu" <herbert@gondor.apana.org.au>,
linux-scsi@vger.kernel.org, dccp@vger.kernel.org,
"Richard Weinberger" <richard@nod.at>,
"Russell King" <linux@armlinux.org.uk>,
"Jaehoon Chung" <jh80.chung@samsung.com>,
"Jason Gunthorpe" <jgg@ziepe.ca>,
"Ingo Molnar" <mingo@redhat.com>,
"Jakub Kicinski" <kuba@kernel.org>,
"John Fastabend" <john.fastabend@gmail.com>,
"Maxime Coquelin" <mcoquelin.stm32@gmail.com>,
"Manivannan Sadhasivam" <mani@kernel.org>,
"Michael Jamet" <michael.jamet@intel.com>,
"Kalle Valo" <kvalo@kernel.org>, "Chao Yu" <chao@kernel.org>,
"Akinobu Mita" <akinobu.mita@gmail.com>,
linux-block@vger.kernel.org, dmaengine@vger.kernel.org,
"Hannes Reinecke" <hare@suse.de>,
"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
"Dmitry Vyukov" <dvyukov@google.com>,
"Jens Axboe" <axboe@kernel.dk>,
cake@lists.bufferbloat.net, brcm80211-dev-list.pdl@broadcom.com,
"Yishai Hadas" <yishaih@nvidia.com>,
"Hideaki YOSHIFUJI" <yoshfuji@linux-ipv6.org>,
linuxppc-dev@lists.ozlabs.org, "David Ahern" <dsahern@kernel.org>,
"Philipp Reisner" <philipp.reisner@linbit.com>,
"Stephen Hemminger" <stephen@networkplumber.org>,
"Vinod Koul" <vkoul@kernel.org>,
tipc-discussion@lists.sourceforge.net,
"Thomas Graf" <tgraf@suug.ch>,
"Johannes Berg" <johannes@sipsolutions.net>,
"Sungjong Seo" <sj1557.seo@samsung.com>,
"Martin KaFai Lau" <martin.lau@linux.dev>
Subject: Re: [Drbd-dev] [PATCH v1 1/5] treewide: use prandom_u32_max() when possible
Date: Thu, 6 Oct 2022 06:45:25 -0600 [thread overview]
Message-ID: <Yz7N5WsqmKiUl+6b@zx2c4.com> (raw)
In-Reply-To: <202210052035.A1020E3@keescook>
Hi Kees,
On Wed, Oct 05, 2022 at 09:16:50PM -0700, Kees Cook wrote:
> On Wed, Oct 05, 2022 at 11:48:40PM +0200, Jason A. Donenfeld wrote:
> > Rather than incurring a division or requesting too many random bytes for
> > the given range, use the prandom_u32_max() function, which only takes
> > the minimum required bytes from the RNG and avoids divisions.
>
> Yes please!
>
> Since this is a treewide patch, it's helpful for (me at least) doing
> reviews to detail the mechanism of the transformation.
This is hand done. There were also various wrong seds done. And then I'd
edit the .diff manually, and then reapply it, as an iterative process.
No internet on the airplane, and oddly no spatch already on my laptop (I
think I had some Gentoo ocaml issues at some point and removed it?).
> e.g. I imagine this could be done with something like Coccinelle and
Feel free to check the work here by using Coccinelle if you're into
that.
> > static inline int ubi_dbg_is_bitflip(const struct ubi_device *ubi)
> > {
> > if (ubi->dbg.emulate_bitflips)
> > - return !(prandom_u32() % 200);
> > + return !(prandom_u32_max(200));
> > return 0;
> > }
> >
>
> Because some looks automated (why the parens?)
I saw this before going out and thought I'd fixed it but I guess I sent
the wrong one.
Jason
next prev parent reply other threads:[~2022-10-06 12:55 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-05 21:48 [Drbd-dev] [PATCH v1 0/5] treewide cleanup of random integer usage Jason A. Donenfeld
2022-10-05 21:48 ` [Drbd-dev] [PATCH v1 1/5] treewide: use prandom_u32_max() when possible Jason A. Donenfeld
2022-10-06 4:16 ` Kees Cook
2022-10-06 4:22 ` KP Singh
2022-10-06 12:45 ` Jason A. Donenfeld [this message]
2022-10-06 12:55 ` Jason Gunthorpe
2022-10-06 13:05 ` Andy Shevchenko
2022-10-06 9:07 ` Christoph Böhmwalder
2022-10-05 21:48 ` [Drbd-dev] [PATCH v1 2/5] treewide: use get_random_{u8, u16}() " Jason A. Donenfeld
2022-10-06 4:38 ` Kees Cook
2022-10-06 12:28 ` Jason A. Donenfeld
2022-10-05 21:48 ` [Drbd-dev] [PATCH v1 3/5] treewide: use get_random_u32() " Jason A. Donenfeld
2022-10-06 8:43 ` Jan Kara
2022-10-06 12:33 ` [Drbd-dev] [f2fs-dev] " Jason A. Donenfeld
2022-10-06 13:01 ` Andy Shevchenko
2022-10-06 13:07 ` Jason A. Donenfeld
2022-10-06 12:47 ` [Drbd-dev] " Jason Gunthorpe
2022-10-06 13:05 ` Jason A. Donenfeld
2022-10-06 13:15 ` Jason Gunthorpe
2022-10-06 13:20 ` Andy Shevchenko
2022-10-12 19:16 ` Joe Perches
2022-10-12 21:29 ` David Laight
2022-10-13 1:37 ` Joe Perches
2022-10-05 21:48 ` [Drbd-dev] [PATCH v1 4/5] treewide: use get_random_bytes " Jason A. Donenfeld
2022-10-06 4:45 ` Kees Cook
2022-10-06 4:48 ` Kees Cook
2022-10-05 21:48 ` [Drbd-dev] [PATCH v1 5/5] prandom: remove unused functions Jason A. Donenfeld
2022-10-06 4:39 ` Kees Cook
2022-10-06 4:55 ` [Drbd-dev] [PATCH v1 0/5] treewide cleanup of random integer usage Kees Cook
2022-10-06 5:40 ` Kees Cook
2022-10-06 12:53 ` Jason A. Donenfeld
2022-10-06 13:49 ` [Drbd-dev] [f2fs-dev] " Jason A. Donenfeld
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=Yz7N5WsqmKiUl+6b@zx2c4.com \
--to=jason@zx2c4.com \
--cc=SHA-cyfmac-dev-list@infineon.com \
--cc=YehezkelShB@gmail.com \
--cc=adilger.kernel@dilger.ca \
--cc=afaerber@suse.de \
--cc=ajay.kathat@microchip.com \
--cc=akinobu.mita@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=alexandre.torgue@foss.st.com \
--cc=amitkarwar@gmail.com \
--cc=andreas.noever@gmail.com \
--cc=andrew@lunn.ch \
--cc=andrii@kernel.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=andy@greyhouse.net \
--cc=anil.s.keshavamurthy@intel.com \
--cc=anna@kernel.org \
--cc=aspriel@gmail.com \
--cc=axboe@kernel.dk \
--cc=ayush.sawal@chelsio.com \
--cc=bharat@chelsio.com \
--cc=bp@alien8.de \
--cc=brcm80211-dev-list.pdl@broadcom.com \
--cc=cake@lists.bufferbloat.net \
--cc=ceph-devel@vger.kernel.org \
--cc=chao@kernel.org \
--cc=christophe.leroy@csgroup.eu \
--cc=chuck.lever@oracle.com \
--cc=claudiu.beznea@microchip.com \
--cc=corbet@lwn.net \
--cc=coreteam@netfilter.org \
--cc=dan.j.williams@intel.com \
--cc=daniel@iogearbox.net \
--cc=dave.hansen@linux.intel.com \
--cc=davem@davemloft.net \
--cc=dccp@vger.kernel.org \
--cc=deller@gmx.de \
--cc=dennis.dalessandro@cornelisnetworks.com \
--cc=dev@openvswitch.org \
--cc=dick.kennedy@broadcom.com \
--cc=djwong@kernel.org \
--cc=dmaengine@vger.kernel.org \
--cc=drbd-dev@lists.linbit.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=dsahern@kernel.org \
--cc=dvyukov@google.com \
--cc=edumazet@google.com \
--cc=elver@google.com \
--cc=franky.lin@broadcom.com \
--cc=fw@strlen.de \
--cc=ganapathi017@gmail.com \
--cc=geomatsi@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=gregory.greenman@intel.com \
--cc=hante.meuleman@broadcom.com \
--cc=haoluo@google.com \
--cc=hare@suse.de \
--cc=haris.iqbal@ionos.com \
--cc=hch@lst.de \
--cc=herbert@gondor.apana.org.au \
--cc=hirofumi@mail.parknet.co.jp \
--cc=hkallweit1@gmail.com \
--cc=horms@verge.net.au \
--cc=hpa@zytor.com \
--cc=hughd@google.com \
--cc=huxinming820@gmail.com \
--cc=hverkuil@xs4all.nl \
--cc=idryomov@gmail.com \
--cc=imitsyanko@quantenna.com \
--cc=j.vosburgh@gmail.com \
--cc=ja@ssi.bg \
--cc=jack@suse.com \
--cc=jaegeuk@kernel.org \
--cc=james.smart@broadcom.com \
--cc=jejb@linux.ibm.com \
--cc=jgg@ziepe.ca \
--cc=jh80.chung@samsung.com \
--cc=jhs@mojatatu.com \
--cc=jinpu.wang@ionos.com \
--cc=jiri@resnulli.us \
--cc=jlayton@kernel.org \
--cc=jmaloy@redhat.com \
--cc=johannes@sipsolutions.net \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=jpr@f6fbb.org \
--cc=jstultz@google.com \
--cc=kadlec@netfilter.org \
--cc=kasan-dev@googlegroups.com \
--cc=kbusch@kernel.org \
--cc=keescook@chromium.org \
--cc=kpsingh@kernel.org \
--cc=kuba@kernel.org \
--cc=kvalo@kernel.org \
--cc=lars.ellenberg@linbit.com \
--cc=leon@kernel.org \
--cc=liangwenpeng@huawei.com \
--cc=linkinjeon@kernel.org \
--cc=linux-actions@lists.infradead.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-f2fs-devel@lists.sourceforge.net \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-hams@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-mmc@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-nfs@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=linux-raid@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=linux-sctp@vger.kernel.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=linux-usb@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=linux-xfs@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=linux@rasmusvillemoes.dk \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=luto@kernel.org \
--cc=lvs-devel@vger.kernel.org \
--cc=mani@kernel.org \
--cc=marcelo.leitner@gmail.com \
--cc=martin.lau@linux.dev \
--cc=martin.petersen@oracle.com \
--cc=mchehab@kernel.org \
--cc=mcoquelin.stm32@gmail.com \
--cc=mhiramat@kernel.org \
--cc=michael.chan@broadcom.com \
--cc=michael.jamet@intel.com \
--cc=mika.westerberg@linux.intel.com \
--cc=mingo@redhat.com \
--cc=miquel.raynal@bootlin.com \
--cc=mpe@ellerman.id.au \
--cc=mrangankar@marvell.com \
--cc=naveen.n.rao@linux.ibm.com \
--cc=netdev@vger.kernel.org \
--cc=netfilter-devel@vger.kernel.org \
--cc=nhorman@tuxdriver.com \
--cc=njavali@marvell.com \
--cc=npiggin@gmail.com \
--cc=pabeni@redhat.com \
--cc=pablo@netfilter.org \
--cc=peterz@infradead.org \
--cc=philipp.reisner@linbit.com \
--cc=pshelar@ovn.org \
--cc=rds-devel@oss.oracle.com \
--cc=richard@nod.at \
--cc=rohitm@chelsio.com \
--cc=sagi@grimberg.me \
--cc=santosh.shilimkar@oracle.com \
--cc=sboyd@kernel.org \
--cc=sdf@google.com \
--cc=sharvari.harisangam@nxp.com \
--cc=sj1557.seo@samsung.com \
--cc=song@kernel.org \
--cc=spock@gentoo.org \
--cc=steffen.klassert@secunet.com \
--cc=stephen@networkplumber.org \
--cc=t.sailer@alumni.ethz.ch \
--cc=target-devel@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=tgraf@suug.ch \
--cc=tipc-discussion@lists.sourceforge.net \
--cc=toke@toke.dk \
--cc=trond.myklebust@hammerspace.com \
--cc=tytso@mit.edu \
--cc=ulf.hansson@linaro.org \
--cc=varun@chelsio.com \
--cc=vfalico@gmail.com \
--cc=vigneshr@ti.com \
--cc=vinay.yadav@chelsio.com \
--cc=vkoul@kernel.org \
--cc=vyasevich@gmail.com \
--cc=xiubli@redhat.com \
--cc=xiyou.wangcong@gmail.com \
--cc=xuhaoyue1@hisilicon.com \
--cc=yhs@fb.com \
--cc=ying.xue@windriver.com \
--cc=yishaih@nvidia.com \
--cc=yoshfuji@linux-ipv6.org \
--cc=yury.norov@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox