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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200406020451.GQ23230@ZenIV.linux.org.uk>
Date:   Mon, 6 Apr 2020 03:04:51 +0100
From:   Al Viro <viro@...iv.linux.org.uk>
To:     kernel test robot <rong.a.chen@...el.com>
Cc:     LKML <linux-kernel@...r.kernel.org>, lkp@...ts.01.org
Subject: Re: [non] 2aa3847085: will-it-scale.per_process_ops -32.0% regression

On Mon, Apr 06, 2020 at 09:25:39AM +0800, kernel test robot wrote:
> Greeting,
> 
> FYI, we noticed a -32.0% regression of will-it-scale.per_process_ops due to commit:
> 
> 
> commit: 2aa38470853a65dc9b1b4bd0989d34cd3fc57ebd ("non-RCU analogue of the previous commit")
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master

Arrgghh...  Could you check if vfs.git#fixes recovers that?  FWIW, proposed fix
is this:

commit d98d78cd6ac9eb5ed0506140cc43432d7c7dd480
Author: Al Viro <viro@...iv.linux.org.uk>
Date:   Sun Apr 5 21:59:55 2020 -0400

    fix braino in legitimize_path()
    
    brown paperbag time... wrong order of arguments ended up confusing
    the values to check dentry and mount_lock seqcounts against.
    
    Reported-by: kernel test robot <rong.a.chen@...el.com>
    Fixes: 2aa38470853a ("non-RCU analogue of the previous commit")
    Signed-off-by: Al Viro <viro@...iv.linux.org.uk>

diff --git a/fs/namei.c b/fs/namei.c
index 61fdb77a7d58..a320371899cf 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -610,7 +610,7 @@ static bool __legitimize_path(struct path *path, unsigned seq, unsigned mseq)
 static inline bool legitimize_path(struct nameidata *nd,
 			    struct path *path, unsigned seq)
 {
-	return __legitimize_path(path, nd->m_seq, seq);
+	return __legitimize_path(path, seq, nd->m_seq);
 }
 
 static bool legitimize_links(struct nameidata *nd)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ