Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753461AbdDKGKV (ORCPT ); Tue, 11 Apr 2017 02:10:21 -0400 Received: from mail-io0-f174.google.com ([209.85.223.174]:33577 "EHLO mail-io0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753273AbdDKGKU (ORCPT ); Tue, 11 Apr 2017 02:10:20 -0400 MIME-Version: 1.0 In-Reply-To: <20170409053956.GB29622@ZenIV.linux.org.uk> References: <20170409053956.GB29622@ZenIV.linux.org.uk> From: Linus Torvalds Date: Mon, 10 Apr 2017 23:10:19 -0700 X-Google-Sender-Auth: fl87rBQn8367U_8veZW-yeCUz5M Message-ID: Subject: Re: [git pull] vfs fixes To: Al Viro Cc: Linux Kernel Mailing List , linux-fsdevel Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 651 Lines: 23 Hey Al, mind looking at fs/namei,c line 2186: if (likely(!nd_jump_root(nd))) return s; nd->root.mnt = NULL; --> rcu_read_unlock(); <-- return ERR_PTR(-ECHILD); because that rcu_read_unlock() looks odd. It looks odd because the lock part is if (flags & LOOKUP_RCU) rcu_read_lock(); ie it's locked conditionally, and the code in between does not seem to return every time LOOKUP_RCU is clear. So mind giving this a look? Is it as obviously buggy as I think it is, or is there something I'm missing? Linus