Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp1317514imm; Fri, 17 Aug 2018 16:15:20 -0700 (PDT) X-Google-Smtp-Source: AA+uWPyeveuwmyWhLCn/ne14DQSzj5ZPND7gOFAhlk8+39DlNHaGeDJpF5fQHjlITHHkSj9UNkaw X-Received: by 2002:a17:902:aa8f:: with SMTP id d15-v6mr35732320plr.64.1534547720418; Fri, 17 Aug 2018 16:15:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1534547720; cv=none; d=google.com; s=arc-20160816; b=t/kVEZQnWSu9lrRc+157UFULH9yuiKScANce+jTrYCSQKQJaSEcJ0pg9dXYfwdB63B aZUw75TMewFTcUE4Hve5/AUVKkqTI0AwvujmV3WDwnEEptLB1JWKi7CwXpVk3esSKM2u 9VeGByVZJgofElrj03NdrRf+2CjvXrc5AwLGH3/UjATHrLtvqqS+mA7bpe4tzt4HnqzT 38RdIQ0MDh8coTF2rESDa6KIalIeUxriCJMdGJDRfPs6KxDwENVwmTrUlX13osnBuer9 M8lqh2C+3PW6Q8g3vI8TWS0dmRxhfy6QowYt1uOAbVNOUpdCoS1nZnRktMRqTEYqMqum FaPA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:arc-authentication-results; bh=k5YbUG9mMaa/RizoVCqoUmR4y1V+kwIh6ezGaTU+Xqs=; b=udGBCeET8Dz69CNTeV5b5oMsDwTjZcy0QNTasJCaOtIJMXwFYQMZ/0qZe7Axe6b/zZ h35XIx1jOx+wh2CVHOtKfVIhqJpzPoXbMkY1wveRYOvqz24RdhXV8gsEex75hcZMQO5D mD/+HNcZwpwjUMtFgTZPtESwQvyVxH30igh9lp6ot30Ca5PJgRaoJFmstFzl2CpDOM15 gPFXuRombZD5bOSFhxjO98medjb8Q5NArXLVs2oair2+q3xyQuidKFjOh5F8EoBkmtL8 lLphX3kh/sNoUWPEzyIq+sp9gP77Et01Fz4vYt6hHKXtNHQcHciwfBreRJod1UUVOV2p QqsQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p9-v6si3213415pgi.553.2018.08.17.16.14.39; Fri, 17 Aug 2018 16:15:20 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726302AbeHRCRN (ORCPT + 99 others); Fri, 17 Aug 2018 22:17:13 -0400 Received: from zeniv.linux.org.uk ([195.92.253.2]:58686 "EHLO ZenIV.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725825AbeHRCRN (ORCPT ); Fri, 17 Aug 2018 22:17:13 -0400 Received: from viro by ZenIV.linux.org.uk with local (Exim 4.87 #1 (Red Hat Linux)) id 1fqntz-0003A0-DY; Fri, 17 Aug 2018 23:11:31 +0000 Date: Sat, 18 Aug 2018 00:11:31 +0100 From: Al Viro To: "Eric W. Biederman" Cc: David Howells , trond.myklebust@hammerspace.com, anna.schumaker@netapp.com, sfrench@samba.org, steved@redhat.com, torvalds@linux-foundation.org, "Eric W. Biederman" , linux-api@vger.kernel.org, linux-security-module@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-nfs@vger.kernel.org, linux-cifs@vger.kernel.org, linux-afs@lists.infradead.org, ceph-devel@vger.kernel.org, v9fs-developer@lists.sourceforge.net Subject: Re: Should we split the network filesystem setup into two phases? Message-ID: <20180817231131.GI6515@ZenIV.linux.org.uk> References: <153313703562.13253.5766498657900728120.stgit@warthog.procyon.org.uk> <17763.1534350685@warthog.procyon.org.uk> <87pnyiew8x.fsf@xmission.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87pnyiew8x.fsf@xmission.com> User-Agent: Mutt/1.9.1 (2017-09-22) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Aug 16, 2018 at 12:06:06AM -0500, Eric W. Biederman wrote: > So I don't think we can completely abandon the option for filesystems > to always create a new filesystem instance when mount(8) is called. Huh? If filesystem wants to create a new instance on each ->mount(), it can bloody well do so. Quite a few do - if that fs can handle that, more power to it. The problem is what to do with filesystems that *can't* do that. You really, really can't have two ext4 (or xfs, etc.) instances over the same device at the same time. Cache coherency, locking, etc. will kill you. And that's not to mention the joy of defining the semantics of having the same ext4 mounted with two logs at the same time ;-) I've seen "reject unless the options are compatible/identical/whatever", but that ignores the real problem with existing policy. It's *NOT* "I've mounted this and got an existing instance with non-matching options". That's a minor annoyance (and back when that decision had been made, mount(2) was very definitly root-only). The real problem is different and much worse - it's remount. I have asked to mount something and it had already been mounted, with identical options. OK, so what happens if I do mount -o remount on my instance? *IF* we are operating in the "only sysadmin can mount new filesystems", it's not a big deal - there are already lots of ways you can shoot yourself in the foot and mount(2) is certainly a powerful one. But if we get to "Joe R. Luser can do it in his container", we have a big problem. Decision back then had been mostly for usability reasons - it was back in 2001 (well before the containermania, userns or anything of that sort) and it was more about "how many hoops does one have to jump through to get something mounted, assuming the sanity of sysadmin doing that?". If *anything* like userns had been a concern back then, it probably would've been different. However, it's 17 years too late and if anyone has a functional TARDIS, I can easily think of better uses for it...