From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from zeniv.linux.org.uk ([195.92.253.2]:40704 "EHLO ZenIV.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726925AbeGLQve (ORCPT ); Thu, 12 Jul 2018 12:51:34 -0400 Date: Thu, 12 Jul 2018 17:41:10 +0100 From: Al Viro To: Andy Lutomirski Cc: David Howells , Andy Lutomirski , Linux API , Linux FS Devel , Linus Torvalds , LKML , Jann Horn , tycho@tycho.ws Subject: Re: [PATCH 24/32] vfs: syscall: Add fsopen() to prepare for superblock creation [ver #9] Message-ID: <20180712164110.GX30522@ZenIV.linux.org.uk> References: <153126248868.14533.9751473662727327569.stgit@warthog.procyon.org.uk> <153126264966.14533.3388004240803696769.stgit@warthog.procyon.org.uk> <686E805C-81F3-43D0-A096-50C644C57EE3@amacapital.net> <22370.1531293761@warthog.procyon.org.uk> <7002.1531407244@warthog.procyon.org.uk> <338BC3C4-F3E7-48F0-A82E-2C7295B6640E@amacapital.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <338BC3C4-F3E7-48F0-A82E-2C7295B6640E@amacapital.net> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Thu, Jul 12, 2018 at 09:23:22AM -0700, Andy Lutomirski wrote: > If you make a syscall that attaches a block device to an fscontext, you don’t need any of this. Heck, someone might actually *want* to grab a block device from a different namespace. Fuck, NO. The whole notion of "block device of filesystem" is fucking garbage. It's up to filesystem driver whether it uses any block devices. For backing store or otherwise. Single or multiple. Moreover, it's up to filesystem driver whether it cares if backing store is a block device, or mtd device, or... Repeat after me: syscall that attaches a block device to an fscontext makes as much sense as a syscall that attaches a charset name to the same. With a special syscall for attaching a timestamp granularity, and another for selecting GID semantics on subdirectory creation. Commit vs. write separation is one thing; fuckloads of special syscalls for passing vaguely defined classes of mount options (which device name *is*) is quite different.