[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.22.394.2210080925390.2928@hadrien>
Date: Sat, 8 Oct 2022 09:33:08 +0200 (CEST)
From: Julia Lawall <julia.lawall@...ia.fr>
To: Kees Cook <keescook@...omium.org>
cc: "Jason A. Donenfeld" <Jason@...c4.com>,
linux-kernel@...r.kernel.org, patches@...ts.linux.dev,
Andreas Noever <andreas.noever@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Borislav Petkov <bp@...en8.de>,
Catalin Marinas <catalin.marinas@....com>,
Christoph Böhmwalder
<christoph.boehmwalder@...bit.com>, Christoph Hellwig <hch@....de>,
Christophe Leroy <christophe.leroy@...roup.eu>,
Daniel Borkmann <daniel@...earbox.net>,
Dave Airlie <airlied@...hat.com>,
Dave Hansen <dave.hansen@...ux.intel.com>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Florian Westphal <fw@...len.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"H. Peter Anvin" <hpa@...or.com>,
Heiko Carstens <hca@...ux.ibm.com>,
Helge Deller <deller@....de>,
Herbert Xu <herbert@...dor.apana.org.au>,
Huacai Chen <chenhuacai@...nel.org>,
Hugh Dickins <hughd@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
"James E. J. Bottomley" <jejb@...ux.ibm.com>,
Jan Kara <jack@...e.com>, Jason Gunthorpe <jgg@...pe.ca>,
Jens Axboe <axboe@...nel.dk>,
Johannes Berg <johannes@...solutions.net>,
Jonathan Corbet <corbet@....net>,
Jozsef Kadlecsik <kadlec@...filter.org>,
KP Singh <kpsingh@...nel.org>, Marco Elver <elver@...gle.com>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Michael Ellerman <mpe@...erman.id.au>,
Pablo Neira Ayuso <pablo@...filter.org>,
Paolo Abeni <pabeni@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Richard Weinberger <richard@....at>,
Russell King <linux@...linux.org.uk>,
Theodore Ts'o <tytso@....edu>,
Thomas Bogendoerfer <tsbogend@...ha.franken.de>,
Thomas Gleixner <tglx@...utronix.de>,
Thomas Graf <tgraf@...g.ch>,
Ulf Hansson <ulf.hansson@...aro.org>,
Vignesh Raghavendra <vigneshr@...com>,
WANG Xuerui <kernel@...0n.name>, Will Deacon <will@...nel.org>,
Yury Norov <yury.norov@...il.com>,
dri-devel@...ts.freedesktop.org, kasan-dev@...glegroups.com,
kernel-janitors@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-block@...r.kernel.org,
linux-crypto@...r.kernel.org, linux-doc@...r.kernel.org,
linux-fsdevel@...r.kernel.org, linux-media@...r.kernel.org,
linux-mips@...r.kernel.org, linux-mm@...ck.org,
linux-mmc@...r.kernel.org, linux-mtd@...ts.infradead.org,
linux-nvme@...ts.infradead.org, linux-parisc@...r.kernel.org,
linux-rdma@...r.kernel.org, linux-s390@...r.kernel.org,
linux-um@...ts.infradead.org, linux-usb@...r.kernel.org,
linux-wireless@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
loongarch@...ts.linux.dev, netdev@...r.kernel.org,
sparclinux@...r.kernel.org, x86@...nel.org, Jan Kara <jack@...e.cz>
Subject: Re: [PATCH v4 2/6] treewide: use prandom_u32_max() when possible
> >> @minus_one@
> >> expression FULL;
> >> @@
> >>
> >> - (get_random_int() & ((FULL) - 1)
> >> + prandom_u32_max(FULL)
> >
> >Ahh, well, okay, this is the example I mentioned above. Only works if
> >FULL is saturated. Any clever way to get coccinelle to prove that? Can
> >it look at the value of constants?
>
> I'm not sure if Cocci will do that without a lot of work. The literals trick I used below would need a lot of fanciness. :)
If FULL is an arbitrary expression, it would not be easy to automate. If
it is a constant then you can use python/ocaml to analyze its value. But
if it's a #define constant then you would need a previous rule to match the
#define and find that value.
For LITERAL, I think you could just do constant int LITERAL; for the
metavariable declaration.
julia
Powered by blists - more mailing lists