Received: by 2002:a05:6a10:c7c6:0:0:0:0 with SMTP id h6csp1358528pxy; Sun, 1 Aug 2021 22:38:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwydjh5hTBdpJFfxSkNAf0tm0rVKx6fTxPefVQ27dHv1fYbW3ekNbuHrKin8BpvBn+2qCRa X-Received: by 2002:a05:6638:1356:: with SMTP id u22mr13356588jad.39.1627882685519; Sun, 01 Aug 2021 22:38:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1627882685; cv=none; d=google.com; s=arc-20160816; b=hP5zbVbW5SkibW80iAr9eH51GtekKoXv5mb+Od+SBZ4ZLFpXQPFWZ5lkeGwYGonjE0 fuRERuEkAE210eP6TVHakzKoMjQyJDm/0+OEw0eHVIU/ZXdR8PbfWSDXgkwgjuvl/zt7 x+9HKX1vHNS1ldwFO2OXf07mu/hQUtWLsFknf1XAcfZaKNFze92bw4vYnPelE5hqCmHY d9+xbKBQd+wfpcugUS73TV4LnqVF9kB05o+6/E/ygblPGpery4ofnrA9nAoQ4sqqvCGk QD7B4AZnekJw5uyA6No96jk4G9T6UgRMDhaJ+PN9xNehd19NgEy6063FK3qYFlAyOTxd LXPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=HxccKzSPgJxa1uJvRBK/0NWWMWLYroqY/P/uHQ0YZEc=; b=WZiVMpzW6BZcQ37+fw5ID0Fj4/WOmMwzDTv0xs/bhaCdjVFQQvMMFOTV9r7muKyZ85 NHyVb30WDLQJ3D+UqB3Tp9EL3Tjxm5YJkC+zLR1D7U6DLHQ+x2LwafPIdbdQUt93vjrR cyfFJeqTzSBMenuR7ppHZBVKcvketTNp2rJNSGQGnvbGaP7Ul50IpnnENkaxbPxUFb/j myMZSbSO8TNs4DALCFDqVG8oh4zI1tPDUpdM/VRi6uNRKACkGgfCjgkLZcs1pl7Puvtk MP5fnJs3DsQc2P0ROX0THma3JLF8GGN6h/+1oZF+HDc/XBW8r9efZcqjFsLCXQKXnPNz 1OMw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h13si11746473iop.97.2021.08.01.22.37.37; Sun, 01 Aug 2021 22:38:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229734AbhHBFdN (ORCPT + 99 others); Mon, 2 Aug 2021 01:33:13 -0400 Received: from zeniv-ca.linux.org.uk ([142.44.231.140]:60134 "EHLO zeniv-ca.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229792AbhHBFdM (ORCPT ); Mon, 2 Aug 2021 01:33:12 -0400 Received: from viro by zeniv-ca.linux.org.uk with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1mAQSS-005v4j-Vb; Mon, 02 Aug 2021 05:25:49 +0000 Date: Mon, 2 Aug 2021 05:25:48 +0000 From: Al Viro To: NeilBrown Cc: Miklos Szeredi , Christoph Hellwig , Josef Bacik , "J. Bruce Fields" , Chuck Lever , Chris Mason , David Sterba , linux-fsdevel@vger.kernel.org, Linux NFS list , Btrfs BTRFS Subject: Re: A Third perspective on BTRFS nfsd subvol dev/inode number issues. Message-ID: References: <162742539595.32498.13687924366155737575.stgit@noble.brown> <162742546548.32498.10889023150565429936.stgit@noble.brown> <162762290067.21659.4783063641244045179@noble.neil.brown.name> <162762562934.21659.18227858730706293633@noble.neil.brown.name> <162763043341.21659.15645923585962859662@noble.neil.brown.name> <162787790940.32159.14588617595952736785@noble.neil.brown.name> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <162787790940.32159.14588617595952736785@noble.neil.brown.name> Sender: Al Viro Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org On Mon, Aug 02, 2021 at 02:18:29PM +1000, NeilBrown wrote: > It think we need to bite-the-bullet and decide that 64bits is not > enough, and in fact no number of bits will ever be enough. overlayfs > makes this clear. Sure - let's go for broke and use XML. Oh, wait - it's 8 months too early... > So I think we need to strongly encourage user-space to start using > name_to_handle_at() whenever there is a need to test if two things are > the same. ... and forgetting the inconvenient facts, such as that two different fhandles may correspond to the same object. > I accept that I'm proposing some BIG changes here, and they might break > things. But btrfs is already broken in various ways. I think we need a > goal to work towards which will eventually remove all breakage and still > have room for expansion. I think that must include: > > - providing as-unique-as-practical inode numbers across the whole > filesystem, and deprecating the internal use of different device > numbers. Make it possible to mount without them ASAP, and aim to > make that the default eventually. > - working with user-space tool/library developers to use > name_to_handle_at() to identify inodes, only using st_ino > as a fall-back > - adding filehandles to various /proc etc files as needed, either > duplicating lines or duplicating files. And helping application which > use these files to migrate (I would *NOT* change the dev numbers in > the current file to report the internal btrfs dev numbers the way that > SUSE does. I would prefer that current breakage could be used to > motivate developers towards depending instead on fhandles). > - exporting subtree (aka subvol) id to user-space, possibly paralleling > proj_id in some way, and extending various tools to understand > subtrees > > Who's with me?? Cf. "Poe Law"...