Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp5912208imu; Wed, 30 Jan 2019 05:47:34 -0800 (PST) X-Google-Smtp-Source: ALg8bN4plgBhUSoYw31sOTNxDQjRDYGRo1TmV8UvWPBtuCNuCGpfS74U3ugiulzw5oac1WnmTvOX X-Received: by 2002:a17:902:2:: with SMTP id 2mr31264022pla.228.1548856054816; Wed, 30 Jan 2019 05:47:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548856054; cv=none; d=google.com; s=arc-20160816; b=QrOCEUXrT9FlT/myU4LPfLqrNyqi0JAVxSc6QileTgnPxts2yqLxygU5HuwbiNNIu0 OfPvXSDbJzqA9+eKo6K/O7QTdpB8X83hfR+oJrBnFsMCh0BD/5+NIaH2nrj+Vk6DiQ+A 02i8Z5Eb9cF3OOlY70n03XqI5EEHKXd5jkaZfr/wKt8/GYZbnW7rv+xSmDhLZCN3bV7o rM5xGekQF6PfCIjADc0GRgLnbJYqifAhYwBeoo8iidAtDlbuMBNvnupVV9lByRscXquQ iuIEYBuG93kvxI8luuYNppthtguHJ6+qeEwO3wusZqv16h1/Nz38jnTgoPgFXg3PpGDf JTYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:subject:mime-version:user-agent :message-id:in-reply-to:date:references:cc:to:from; bh=tc97OYNCi8cnrx5B2S9tZPLPokp7a3fJgxuwDZ/5xDU=; b=T8WB6ScLBhTtZEAvdtCO1OXXzS6PcTMd+6WsqXLGBCSqRjKjMchMRczl4sRBfRjnzw Q10ePy/bn1MIjJXM9A0Ds/0+J+5q3Kd+9a5KowGdWGRd/e/PY8zNvFMgJsQV+OiZ3/n0 gpjrVhbsesU8jJu921mXfDW28mnT2G1BwfB9rihJO2hzik1zjJuVxUgWC2wqcVYmlJAe 82e10jMh/Id8vJDMx3oXqJnZ3ovOq4jN095S4eyJ+NnVbLWGGr4jaODnyt9P2eQDhQ66 r13xKt7yJby5pzoJRisjQxkRdeoLIOVF4helbhMqkD/qs40fULtbUqAguyLS7tH1jhf8 TDdA== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=xmission.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a16si1589387pls.146.2019.01.30.05.47.18; Wed, 30 Jan 2019 05:47:34 -0800 (PST) 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=xmission.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730966AbfA3Npm (ORCPT + 99 others); Wed, 30 Jan 2019 08:45:42 -0500 Received: from out01.mta.xmission.com ([166.70.13.231]:34573 "EHLO out01.mta.xmission.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726151AbfA3Npl (ORCPT ); Wed, 30 Jan 2019 08:45:41 -0500 Received: from in02.mta.xmission.com ([166.70.13.52]) by out01.mta.xmission.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.87) (envelope-from ) id 1goqBQ-0004WJ-6O; Wed, 30 Jan 2019 06:45:40 -0700 Received: from ip68-227-174-240.om.om.cox.net ([68.227.174.240] helo=x220.xmission.com) by in02.mta.xmission.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.87) (envelope-from ) id 1goqBP-000898-Ix; Wed, 30 Jan 2019 06:45:40 -0700 From: ebiederm@xmission.com (Eric W. Biederman) To: Karel Zak Cc: linux-api@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Al Viro , David Howells , Miklos Szeredi , Linus Torvalds , util-linux@vger.kernel.org, Andy Lutomirski References: <87va2716mh.fsf@xmission.com> <20190130120654.q5zqcexquca7u337@ws.net.home> Date: Wed, 30 Jan 2019 07:45:31 -0600 In-Reply-To: <20190130120654.q5zqcexquca7u337@ws.net.home> (Karel Zak's message of "Wed, 30 Jan 2019 13:06:54 +0100") Message-ID: <877eemqmx0.fsf@xmission.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-XM-SPF: eid=1goqBP-000898-Ix;;;mid=<877eemqmx0.fsf@xmission.com>;;;hst=in02.mta.xmission.com;;;ip=68.227.174.240;;;frm=ebiederm@xmission.com;;;spf=neutral X-XM-AID: U2FsdGVkX18ZPWffP5QwSJqsnLWhS+ET0er6VxPUvd8= X-SA-Exim-Connect-IP: 68.227.174.240 X-SA-Exim-Mail-From: ebiederm@xmission.com X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on sa06.xmission.com X-Spam-Level: X-Spam-Status: No, score=-0.2 required=8.0 tests=ALL_TRUSTED,BAYES_50, DCC_CHECK_NEGATIVE,T_TM2_M_HEADER_IN_MSG autolearn=disabled version=3.4.2 X-Spam-Report: * -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP * 0.8 BAYES_50 BODY: Bayes spam probability is 40 to 60% * [score: 0.5000] * 0.0 T_TM2_M_HEADER_IN_MSG BODY: No description available. * -0.0 DCC_CHECK_NEGATIVE Not listed in DCC * [sa06 1397; Body=1 Fuz1=1 Fuz2=1] X-Spam-DCC: XMission; sa06 1397; Body=1 Fuz1=1 Fuz2=1 X-Spam-Combo: ;Karel Zak X-Spam-Relay-Country: X-Spam-Timing: total 272 ms - load_scoreonly_sql: 0.04 (0.0%), signal_user_changed: 2.3 (0.8%), b_tie_ro: 1.53 (0.6%), parse: 0.72 (0.3%), extract_message_metadata: 2.8 (1.0%), get_uri_detail_list: 1.13 (0.4%), tests_pri_-1000: 3.7 (1.4%), tests_pri_-950: 1.26 (0.5%), tests_pri_-900: 1.05 (0.4%), tests_pri_-90: 27 (10.1%), check_bayes: 26 (9.5%), b_tokenize: 6 (2.2%), b_tok_get_all: 9 (3.5%), b_comp_prob: 2.2 (0.8%), b_tok_touch_all: 5 (1.9%), b_finish: 0.61 (0.2%), tests_pri_0: 217 (80.0%), check_dkim_signature: 0.48 (0.2%), check_dkim_adsp: 2.2 (0.8%), poll_dns_idle: 0.56 (0.2%), tests_pri_10: 2.4 (0.9%), tests_pri_500: 6 (2.0%), rewrite_mail: 0.00 (0.0%) Subject: Re: [RFD] A mount api that notices previous mounts X-Spam-Flag: No X-SA-Exim-Version: 4.2.1 (built Thu, 05 May 2016 13:38:54 -0600) X-SA-Exim-Scanned: Yes (on in02.mta.xmission.com) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Karel Zak writes: > On Tue, Jan 29, 2019 at 03:44:22PM -0600, Eric W. Biederman wrote: >> so I am proposing we change this in the new mount api. > > Well, this forces me to ask what the new API is? :-) > > It seems that David uses fsconfig() and fsinfo() to set and get > mount options, and your patch introduces fsset() and fsoptions(). > > IMHO differentiate between FS driver and FS instance is a good idea it > makes things more extendable. The sequence number in the instance is a > good example. > > But for me David's fsinfo() seems better that fsoptions() and > fsspecifier(). I'm not sure about "all mount options as one string" > From your example is pretty obvious how much energy is necessary to > split and join the strings. > > It seems more elegant is to ask for Nth option as expected by fsinfo(). > It also seems that fsinfo() is able to replace fsname() and fstype(). > > It would be better to extend David's fsinfo() to work with FS instance > and to return specifiers. And use fsconfig() rather than fsset(). As David has pointed out with cifs having a sep= option we need a better story of parsing the options in the kernel. What my branch does is demonstrate there is at least one way we can avoid mount options being silently different from what userspace expects. Which means my branch is fine for looking at semantics and possible system calls, but not much else. I actually used multiple system calls just so I could avoid dealing with multi-plexor systems calls. Eric