Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1423265AbbENX53 (ORCPT ); Thu, 14 May 2015 19:57:29 -0400 Received: from fn.samba.org ([216.83.154.106]:60416 "EHLO mail.samba.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1423248AbbENX50 (ORCPT ); Thu, 14 May 2015 19:57:26 -0400 Date: Thu, 14 May 2015 16:57:22 -0700 From: Jeremy Allison To: Linus Torvalds Cc: Jeremy Allison , Al Viro , Linux Kernel Mailing List , linux-fsdevel , Christoph Hellwig , Neil Brown , vl@sernet.de Subject: Re: [RFC][PATCHSET v3] non-recursive pathname resolution & RCU symlinks Message-ID: <20150514235722.GC16207@samba2> Reply-To: Jeremy Allison References: <20150505052205.GS889@ZenIV.linux.org.uk> <20150511180650.GA4147@ZenIV.linux.org.uk> <20150513222533.GA24192@ZenIV.linux.org.uk> <20150514033040.GF7232@ZenIV.linux.org.uk> <20150514220932.GC31808@samba2> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3280 Lines: 76 On Thu, May 14, 2015 at 04:24:13PM -0700, Linus Torvalds wrote: > On Thu, May 14, 2015 at 3:09 PM, Jeremy Allison wrote: > > > > Of course we tell people to just set their filesystems > > up using mkfs.xfs -n version=ci :-). > > So ASCII-only case-insensitivity is sufficient for you guys? No it's not enough really. But for specific Windows apps that use restricted namespaces (and there are such) it works. ZFS on *BSD does do full case-insenitive lookups (utf8) as part of FreeNAS. I think if it's configured a SMB-only share they turn that on. > Doing case-insensitive lookups at a vfs layer level wouldn't be > impossible (add some new lookup flag, so it would *not* be > per-filesystem, it would be per-operation!), but the *full* > case-insensitivity space in utf-8 is too much to expect. Especially > since different people have different opinions on what it even should > be. Yeah, Apple are the real sinners here. utf8-compose-characters - pah ! > What else is problematic? I think you want an error on symlinks in the > middle, right? So that you can do those manually? I also assume you > don't like to follow ".." due to containment issues? We already strip . and .. out of incoming pathnames. Once we've walked the path (following links) we then use realpath() to ensure the full path is under the exported share "path =" directive. > Adding (again per-lookup) flags for "no symlinks" and "no dotdot") > would be trivial (much more so than the case insensitivity). Would you > require "error out on non-ascii characters" too, to then handle the > complex cases by hand? Don't need the dot-dot stuff - "no symlinks" would be useful, but you have to remember Samba is still portable to *BSD and Solaris-clones (all that anyone really cares about these days) so we'll have to keep the old code paths too. > I dunno. But it *may* be worth it to really try to give samba what it > wants. Of course, if samba is happy doing all the name caching in user > space, then that's not worth worrying about. Case insensitive pathname lookup is the one I remember Windows sales guys beating us up on benchmarks (create 1,000,000 files in a directory and then have a client that looks for a file that *doesn't* exist :-). Hopefully Volker is also on this thread and can chime in with some requirements of his own :-). > And the reason I don't use samba myself is that I'm not a fan of > network filesystems. I want my filesystems low-latency and right there > on the local ssd, thank you very much. But if you have some > local-machine benchmarkign thing you use, I guess I could use that to > see what the profile looks like... You don't know what you're missing mate ! I use it every day via my local NAS to play music (via SONOS Linux clients) and movies/TV (SageTV Linux boxes) everywhere in the house. I don't even have a Windows box (other than VM's for testing) anywhere. But my house is fully wired for gigabit, I wouldn't do that over wireless :-). Samba, it's not just for Windows anymore :-). -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/