lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 29 Jan 2021 18:35:05 -0700 From: Nathan Chancellor <nathan@...nel.org> To: Vinicius Tinti <viniciustinti@...il.com> Cc: Theodore Ts'o <tytso@....edu>, Andreas Dilger <adilger.kernel@...ger.ca>, Nathan Chancellor <natechancellor@...il.com>, Nick Desaulniers <ndesaulniers@...gle.com>, linux-ext4@...r.kernel.org, linux-kernel@...r.kernel.org, clang-built-linux@...glegroups.com Subject: Re: [PATCH] ext4: Remove unreachable code On Fri, Jan 29, 2021 at 06:58:56PM +0000, Vinicius Tinti wrote: > By enabling -Wunreachable-code-aggressive on Clang the following code > paths are unreachable. > > Commit dd73b5d5cb67 ("ext4: convert dx_probe() to use the ERR_PTR > convention") > Commit ac27a0ec112a ("[PATCH] ext4: initial copy of files from ext3") > > Clang warns: > > fs/ext4/namei.c:831:17: warning: code will never be executed > [-Wunreachable-code] > unsigned n = count - 1; > ^~~~~ > fs/ext4/namei.c:830:7: note: silence by adding parentheses to mark code as > explicitly dead > if (0) { // linear search cross check > ^ > /* DISABLES CODE */ ( ) The commit message might be a little clearer if it were restructured a bit, maybe something like so? By enabling -Wunreachable-code-aggressive on Clang, the following code paths are unreachable: fs/ext4/namei.c:831:17: warning: code will never be executed [-Wunreachable-code] unsigned n = count - 1; ^~~~~ fs/ext4/namei.c:830:7: note: silence by adding parentheses to mark code as explicitly dead if (0) { // linear search cross check ^ /* DISABLES CODE */ ( ) This has been present since commit ac27a0ec112a ("[PATCH] ext4: initial copy of files from ext3") and fs/ext3 had it present at the beginning of git history so it is safe to remove. > Signed-off-by: Vinicius Tinti <viniciustinti@...il.com> Regardless of the commit message, I believe this is the right way to get rid of the warning: Reviewed-by: Nathan Chancellor <nathan@...nel.org> > --- > fs/ext4/namei.c | 15 --------------- > 1 file changed, 15 deletions(-) > > diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c > index cf652ba3e74d..1f64dbd7237b 100644 > --- a/fs/ext4/namei.c > +++ b/fs/ext4/namei.c > @@ -827,21 +827,6 @@ dx_probe(struct ext4_filename *fname, struct inode *dir, > p = m + 1; > } > > - if (0) { // linear search cross check > - unsigned n = count - 1; > - at = entries; > - while (n--) > - { > - dxtrace(printk(KERN_CONT ",")); > - if (dx_get_hash(++at) > hash) > - { > - at--; > - break; > - } > - } > - ASSERT(at == p - 1); > - } > - > at = p - 1; > dxtrace(printk(KERN_CONT " %x->%u\n", > at == entries ? 0 : dx_get_hash(at), > -- > 2.25.1 >
Powered by blists - more mailing lists