From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754755AbaI2UpH (ORCPT ); Mon, 29 Sep 2014 16:45:07 -0400 Received: from mail-vc0-f173.google.com ([209.85.220.173]:59659 "EHLO mail-vc0-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750968AbaI2UpF (ORCPT ); Mon, 29 Sep 2014 16:45:05 -0400 MIME-Version: 1.0 In-Reply-To: <20140929190421.GK7996@ZenIV.linux.org.uk> References: <20140927183139.GT7996@ZenIV.linux.org.uk> <20140927191657.GU7996@ZenIV.linux.org.uk> <20140928074747.GZ7996@ZenIV.linux.org.uk> <20140928180556.GA7996@ZenIV.linux.org.uk> <20140929155918.GG7996@ZenIV.linux.org.uk> <20140929162714.GH7996@ZenIV.linux.org.uk> <20140929190421.GK7996@ZenIV.linux.org.uk> Date: Mon, 29 Sep 2014 13:45:03 -0700 X-Google-Sender-Auth: S3pGXpYjYTP75JErz9wMUIoQFlk Message-ID: Subject: Re: [PATCH v2] vfs: Don't exchange "short" filenames unconditionally. From: Linus Torvalds To: Al Viro Cc: Linux Kernel Mailing List , linux-fsdevel , "Paul E. McKenney" , Mikhail Efremov Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Sep 29, 2014 at 12:04 PM, Al Viro wrote: >> >> "dname_external()". > > That we do... Why is it in dcache.h, BTW? No users outside of fs/dcache.c > and I can't imagine a valid use for it in a module, let alone out-of-tree > one... Yeah, no, remove the declaration in dcache.h, and make it static to fs/dcache.c. I don't think there's any possible valid use outside of dcache. > ObAnnoyance: gcc not figuring out that this container_of() isn't going to be > NULL... Sure, somebody might put (char *)16 into dentry->d_name.name, but... > As it is, it makes for messier code generation; I can work around that, of > course, but it's uglier than it ought to be ;-/ You could possibly play games with __attribute__((nonnull)) or whatever it's called. Although I think you can only annotate arguments that way (and you do it not by annotating the argument, but by making it a function attribute, which I think is horrible, but whatever). Linus