Received: by 2002:ad5:4acb:0:0:0:0:0 with SMTP id n11csp98559imw; Tue, 12 Jul 2022 15:26:52 -0700 (PDT) X-Google-Smtp-Source: AGRyM1v/zMRnXvApNobQxaz7CDvE5rWxvFQU/UkHSeV0efCghONmfFya9bXBRdSbgU6pv75Dc/Ic X-Received: by 2002:a17:907:75d3:b0:72b:48de:e540 with SMTP id jl19-20020a17090775d300b0072b48dee540mr298297ejc.547.1657664812681; Tue, 12 Jul 2022 15:26:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1657664812; cv=none; d=google.com; s=arc-20160816; b=zMR5cDu12VNbLkiz+/OhaZZ7wco59pnT920mrMhHz3zzrBaEOdL8Zwez/vNfDQfDYI 8YUUXZ5s4W/72o/BBRruprv5aUiX9Dv1e8iR+DuXlExb1j+u3zHjff/jU40YOIofF9RK drJaD6GPk22NHwb82oS+Kh5eW0nLGkcjgNCfkaUWw0mroGq1PueiA734EBmU1w3o6whW AtHF8nTpt/T1Oc5YBFAttsS6u16UNEvNGABCIoNRo0IWG37jq9SW+CjVEE/TShqH4CO7 9dIORvUJ1OWEiUmF/ZXE8WgjvfRZshGQArB1isbRyMlRVfnVFraLuIO94e7HbJkQQzgt budg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=XYnmwW7KM7eSMK60O2MVDAmJuJD1iNrDhmXfLQOWhUo=; b=D0162eowL5iIQEYQ4mvpErogvof9qu6uPqShp4IDWupRmOfLA3uw4md4rScLpVRT6m OoAuI5vu3G1DlF0XDsGkQ3Fs5RfH/pQeglhXaWZrEg6wQqqgfVITSJveju+taNJdg+V6 iItrpXT0ONbXX/BrENyuhyGf9E4erfdk3t55n9Vili+F8by3NtGuv6eXdWy9U2H0ZnVP jpAMQE0/lE91PjFXyp2Q/IOH93vSe+D1Jqod3Fn3WgOzEjfC4Thkop5UKKf2JXnD4ixj o4NTSqLy0Nm7nXa732SmvRNYcTdNs9rTO5nW3uGIIIFH69RjbY1kY/B/fEDM7q+9s1J/ YRqg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=YuwrgdZD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y8-20020a056402358800b0043a59e9f4cesi18059108edc.30.2022.07.12.15.26.27; Tue, 12 Jul 2022 15:26:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=YuwrgdZD; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233269AbiGLWY0 (ORCPT + 99 others); Tue, 12 Jul 2022 18:24:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40550 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232386AbiGLWYZ (ORCPT ); Tue, 12 Jul 2022 18:24:25 -0400 Received: from mail-yw1-x112b.google.com (mail-yw1-x112b.google.com [IPv6:2607:f8b0:4864:20::112b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E841739BB1 for ; Tue, 12 Jul 2022 15:24:23 -0700 (PDT) Received: by mail-yw1-x112b.google.com with SMTP id 00721157ae682-31cf1adbf92so95898637b3.4 for ; Tue, 12 Jul 2022 15:24:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=XYnmwW7KM7eSMK60O2MVDAmJuJD1iNrDhmXfLQOWhUo=; b=YuwrgdZDcGuDBD1ffmB+K+wUNZvSNDWk9s9daZGp5K86jbMwbYTZ0RZU6isUxnHFl2 frbUhfluQkhMWz/6Zg9+Ife5C9JFobpBGe3RB8bumuHTjc9SkxDAfKqqlH0CocLf5L2N wBjDJZPytZpG1mnTVLwukpXUSZ3HEWXKRTryY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=XYnmwW7KM7eSMK60O2MVDAmJuJD1iNrDhmXfLQOWhUo=; b=z1Gvd23KhNuvrei0Fy2J0KQIObpa2Ut5FbyB2rFeMYfmhUC2Fz6v87Ehy3yR3pt7IB F7Q1vOrYKBZMe9IJaBwqvTR1B1kySU5SMWfOlIAc7DumZQ6SIXYVUioVSRcYSm+zlDVI EnfyfgE+Y/Plmb6VhE8u/iZv2IzTPWmRDceP17sDUZx+5s1Ndbc66gCMHAdezaQzb23r S5RKHb1HxrT9S020k1J4oF0JlXsEdu8PL6wg80EoasZY+z8BOhJP8uHZ8AkMb5ZFBrkC zIgQO4UmBPLxV3Ls3HaSISGB1EOUpDylIuusefphVsmJe4kCwJ1mH6bWlv7hXuwm2ldV XlTg== X-Gm-Message-State: AJIora8jjm9frEEi69AxxSMsHkSkx58Mu7MPLeNMkmTGUrzumigYr+G3 OOmoL/b6l1Jpd4OWO9NBv5HNC6XvBqpNAHbsxPtwPg== X-Received: by 2002:a81:46c4:0:b0:31c:8a9d:beaa with SMTP id t187-20020a8146c4000000b0031c8a9dbeaamr610466ywa.103.1657664663225; Tue, 12 Jul 2022 15:24:23 -0700 (PDT) MIME-Version: 1.0 References: <20220601011103.12681-1-dlunev@google.com> <20220601111059.v4.2.I692165059274c30b59bed56940b54a573ccb46e4@changeid> In-Reply-To: <20220601111059.v4.2.I692165059274c30b59bed56940b54a573ccb46e4@changeid> From: Daniil Lunev Date: Wed, 13 Jul 2022 08:24:11 +1000 Message-ID: Subject: Re: [PATCH v4 2/2] FUSE: Retire superblock on force unmount To: miklos@szeredi.hu Cc: linux-kernel@vger.kernel.org, fuse-devel@lists.sourceforge.net, Daniil Lunev , linux-fsdevel@vger.kernel.org, viro@zeniv.linux.org.uk, hch@infradead.org, tytso@mit.edu Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Miklos, Can you please take a look at the current patchset and see if you are ok with it? Thanks, Daniil On Wed, Jun 1, 2022 at 11:11 AM Daniil Lunev wrote: > > From: Daniil Lunev > > Force unmount of FUSE severes the connection with the user space, even > if there are still open files. Subsequent remount tries to re-use the > superblock held by the open files, which is meaningless in the FUSE case > after disconnect - reused super block doesn't have userspace counterpart > attached to it and is incapable of doing any IO. > > Signed-off-by: Daniil Lunev > > Signed-off-by: Daniil Lunev > --- > > (no changes since v3) > > Changes in v3: > - No changes > > Changes in v2: > - Use an exported function instead of directly modifying superblock > > fs/fuse/inode.c | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c > index 8c0665c5dff88..8875361544b2a 100644 > --- a/fs/fuse/inode.c > +++ b/fs/fuse/inode.c > @@ -476,8 +476,11 @@ static void fuse_umount_begin(struct super_block *sb) > { > struct fuse_conn *fc = get_fuse_conn_super(sb); > > - if (!fc->no_force_umount) > - fuse_abort_conn(fc); > + if (fc->no_force_umount) > + return; > + > + fuse_abort_conn(fc); > + retire_super(sb); > } > > static void fuse_send_destroy(struct fuse_mount *fm) > -- > 2.31.0 >