From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 371B5C07E9D for ; Mon, 19 Jul 2021 13:07:49 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 254CA6100C for ; Mon, 19 Jul 2021 13:07:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237210AbhGSM1I (ORCPT ); Mon, 19 Jul 2021 08:27:08 -0400 Received: from pio-pvt-msa3.bahnhof.se ([79.136.2.42]:43362 "EHLO pio-pvt-msa3.bahnhof.se" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237287AbhGSM1H (ORCPT ); Mon, 19 Jul 2021 08:27:07 -0400 Received: from localhost (localhost [127.0.0.1]) by pio-pvt-msa3.bahnhof.se (Postfix) with ESMTP id 67B9D3F5EA for ; Mon, 19 Jul 2021 15:07:44 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at bahnhof.se Received: from pio-pvt-msa3.bahnhof.se ([127.0.0.1]) by localhost (pio-pvt-msa3.bahnhof.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XkUnA2fiD0jg for ; Mon, 19 Jul 2021 15:07:43 +0200 (CEST) Received: by pio-pvt-msa3.bahnhof.se (Postfix) with ESMTPA id 35A663F4EE for ; Mon, 19 Jul 2021 15:07:42 +0200 (CEST) Received: from [192.168.0.10] (port=49614) by tnonline.net with esmtpsa (TLS1.3) tls TLS_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1m5SzY-000MNA-31 for linux-btrfs@vger.kernel.org; Mon, 19 Jul 2021 15:07:42 +0200 Subject: Re: cannot use btrfs for nfs server From: Forza To: Btrfs BTRFS References: <20210708221731.GB8249@tik.uni-stuttgart.de> <56c40592-0937-060a-5f8a-969d8a88d541@cobb.uk.net> <20210709065320.GC8249@tik.uni-stuttgart.de> <20210710065612.GF1548@tik.uni-stuttgart.de> <20210712072525.GI1548@tik.uni-stuttgart.de> <294e8449-383f-1c90-62be-fb618332862e@cobb.uk.net> <20210712161618.GA913@tik.uni-stuttgart.de> <8506b846-4c4d-6e8f-09ee-e0f2736aac4e@cobb.uk.net> <20210713073721.GA5047@tik.uni-stuttgart.de> <2b53b9dd-4353-a73e-59b3-c87b6419ebf4@tnonline.net> Message-ID: Date: Mon, 19 Jul 2021 15:07:42 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.12.0 MIME-Version: 1.0 In-Reply-To: <2b53b9dd-4353-a73e-59b3-c87b6419ebf4@tnonline.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org On 2021-07-19 14:06, Forza wrote: > > > On 2021-07-13 09:37, Ulli Horlacher wrote: >> On Mon 2021-07-12 (23:56), g.btrfs@cobb.uk.net wrote: >> >>>> root@tsmsrvj:/etc# du -Hs /nfs/localhost/snapshots >>>> du: WARNING: Circular directory structure. >>>> This almost certainly means that you have a corrupted file system. >>>> NOTIFY YOUR SYSTEM MANAGER. >>>> The following directory is part of the cycle: >>>>    /nfs/localhost/snapshots/spool >>> >>> Sure. But it makes the useful operations work. du, find, ls -R, etc all >>> work properly on /nfs/localhost/fex. >> >> Properly on /nfs/localhost/fex : yes >> Properly on /nfs/localhost/snapshots : NO >> >> And the error messages are annoying! >> >> root@tsmsrvj:/etc# exportfs -v >> /data/fex >> localhost.localdomain(rw,async,wdelay,crossmnt,no_root_squash,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash) >> >> /data/snapshots >> localhost.localdomain(rw,async,wdelay,crossmnt,no_root_squash,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash) >> >> >> root@tsmsrvj:/etc# mount -o vers=3 localhost:/data/fex /nfs/localhost/fex >> root@tsmsrvj:/etc# mount -o vers=3 localhost:/data/snapshots >> /nfs/localhost/snapshots >> root@tsmsrvj:/etc# mount | grep localhost >> localhost:/data/fex on /nfs/localhost/fex type nfs >> (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=127.0.0.1,mountvers=3,mountport=37961,mountproto=udp,local_lock=none,addr=127.0.0.1) >> >> localhost:/data/snapshots on /nfs/localhost/snapshots type nfs >> (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=127.0.0.1,mountvers=3,mountport=37961,mountproto=udp,local_lock=none,addr=127.0.0.1) >> >> > > What kind of NFS server is this? Isn't UDP mounts legacy and not > normally used by default? > > Can you switch to an nfs4 server and try again? I also still think you > should use fsid export option. > > > I'm replying to myself here because I booted up a VM with Fedora 34 and tested a similar setup as Mr Horlacher's and can reproduce the errors. Setup: 1) create a subvolume /mnt/rootvol/nfs 2) create some snapshots: btrfs sub snap /mnt/rootvol/nfs /mnt/rootvol/nfs/.snapshots/nfs-1 btrfs sub snap /mnt/rootvol/nfs /mnt/rootvol/nfs/.snapshots/nfs-2 3) export as: /mnt/rootvol/nfs/ *(fsid=1234,no_root_squash) 4) mount -o vers=4 localhost:/mnt/rootvol/nfs /media/nfs-mnt/ 5) "du -sh /media/nfs-mnt" fails with "WARNING: Circular directory structure." 6) "ls -alR /mnt/nfs-mnt" fails with "not listing already-listed directory" In addition I have tried with various export options such as crossmnt, nohide and subtree_check. They do not improve the situation. Also the behaviour is the same with nfs3 as with nfs4. Full outputs are available at https://paste.ee/p/pkHLh