Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp4246245ybz; Mon, 20 Apr 2020 19:15:41 -0700 (PDT) X-Google-Smtp-Source: APiQypIDE8RCZn2/1NDfjUo4UX6bOcokWFdVsDYYIScTZGczmTZkCyym/Ag6Fpw0Qk8UFb9B9hXJ X-Received: by 2002:a17:906:f1d7:: with SMTP id gx23mr519780ejb.176.1587435341143; Mon, 20 Apr 2020 19:15:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587435341; cv=none; d=google.com; s=arc-20160816; b=njmbVElYfIio5/mo2Y0P5m8werqgLMfvHpM7SrvaHHBOE2/WGCACf0ZUNl8sI4g2NJ Mb7u/3u3/1K1CfWHo0XhWN3vFhn9NRjey2C1T9OWIZiZtw/9HhGzCuJf81QO6C7z5Izm i1e9u2roBFXvuSi0nhVtzwmxjAp3grC4jXSNLMbZbHTGH8fPLhv3Y6HncmfC4o1Qqynk rJFUdQo9kTiE9E3KcPDzqGVWvVahET7P3u5yYx2/Nwr/lJ5lIbXlAUk9lyeKNLTAz+Pb lHyy6UVHjLh5LV7sPeyIDs+aejg3EBb+oV6BzgRDOY0ZAnNdlyg683TyM84Fzjshi/G0 nhsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=ue82uDYWA62Hy59Wvk+2+qxFCKkQmMn/AGbB8RRC57I=; b=iBVNhSssi25gmf2jh6MjbGGh+MSETwE0DFDriz7jyP9sOsMKuhq0veBPhgHJ7aBHsR BMB5IZL3M+TSd0AZbsX5mJjOAuEChBTeuIrDtQN78lB4ORNAwqhNDQOJXp7sEDLrcKfp M8hYd+EmnyW/tsUIFXUJXYCd5uUYaDS9As4Hs7WtI2TQeMu8DVwNOxcYk9B6upR1LJ5Q WDWTLpP/zUWKLUwvrNUTzU5MzvGEIUbdHpKEuBkdvPmFX7Nva+Xzk4POQDWIY+MHWJ74 GwwD26N14V/XGv3He4fqsum/HSrYs0UNT7PVIP0x1x2y62Qc3/xOOeb0d/9h5M0jqsDV Ro4g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=tyCqA5Wb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ce2si883116edb.26.2020.04.20.19.15.16; Mon, 20 Apr 2020 19:15:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=tyCqA5Wb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726413AbgDUCOH (ORCPT + 99 others); Mon, 20 Apr 2020 22:14:07 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48076 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1725829AbgDUCOH (ORCPT ); Mon, 20 Apr 2020 22:14:07 -0400 Received: from mail-io1-xd44.google.com (mail-io1-xd44.google.com [IPv6:2607:f8b0:4864:20::d44]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D0D41C061A0E; Mon, 20 Apr 2020 19:14:06 -0700 (PDT) Received: by mail-io1-xd44.google.com with SMTP id e9so5845186iok.9; Mon, 20 Apr 2020 19:14:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ue82uDYWA62Hy59Wvk+2+qxFCKkQmMn/AGbB8RRC57I=; b=tyCqA5WbnRlAG1A0UEbtRMXCtwlCbvvBqUfyP/iw4MncAbCWHIEtQExSiFvOL65Qn4 hjbMRds+nQeTSof2Lekw0gY96gefVlO/613LP61ywtYGcdaB3qHD2hmv48Bgj3Lbm/uE D7Y/j68rCMduqxPiwj80p7ISto7gqEjYpDu8L0bg3m31ygrEYrZA3pIYzctRoKZxxHew 5qXNsA5B8KlZS3zzfE6RCq+R7wRZTaeGdxCHXWOWEAevfHZgyk41VRAWNgTuNbHN+QRr 7jnf1UstgTC6qTgBkOzrWAEJbWvRTBAegJVIhdlV7HXDS3qr5IejnGWBu6wVk6/7QimB /jdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ue82uDYWA62Hy59Wvk+2+qxFCKkQmMn/AGbB8RRC57I=; b=F/0C308sjQiJweZbPxfNAqJFmD6qC6eEPU58BG7gFSgX0+e9EJZQSFDAbbexipULJX H9AM1u2hRz8ARyPIzafazqQjniis2WqRgzo5amHZdi8pXtxAdtXdZPRqUa7hvsfP8PT5 5yjfKFvFTEkI02xbMOsGZrV9AiULX9jU5jfL8qucybZw4w9t+ynR+tuvIoVIyxfJifgx EfjaNTojSydtp/y4YbvCmSSkZnJhf/BZahL5hmKC3lVO/0KxnqEuirHoX4RNJTR5kv/8 U21v658mw53R41dXdv3SOMlYT1G1ah5zBO3kD4APsE80XDyujVJ5Is9gX+TfHtPWmQuY uxhw== X-Gm-Message-State: AGi0PuaRPfJ2FU681qy9O/zPSBlEcWgFeFL8B7P/fwh294AUk2cJ3IfY +aORC38zn6TMrFcxPueiNYB6qsMlR+gNTVVKMMg= X-Received: by 2002:a5d:8b57:: with SMTP id c23mr18541347iot.161.1587435246122; Mon, 20 Apr 2020 19:14:06 -0700 (PDT) MIME-Version: 1.0 References: <20200417110723.12235-1-gmayyyha@gmail.com> In-Reply-To: From: Yanhu Cao Date: Tue, 21 Apr 2020 10:13:55 +0800 Message-ID: Subject: Re: [v3] ceph: if we are blacklisted, __do_request returns directly To: Jeff Layton Cc: Sage Weil , Ilya Dryomov , ceph-devel , LKML Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Apr 20, 2020 at 8:16 PM Jeff Layton wrote: > > On Fri, 2020-04-17 at 19:07 +0800, Yanhu Cao wrote: > > If we mount cephfs by the recover_session option, > > __do_request can return directly until the client automatically reconnects. > > > > Signed-off-by: Yanhu Cao > > --- > > fs/ceph/mds_client.c | 6 ++++++ > > 1 file changed, 6 insertions(+) > > > > diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c > > index 486f91f9685b..16ac5e5f7f79 100644 > > --- a/fs/ceph/mds_client.c > > +++ b/fs/ceph/mds_client.c > > @@ -2708,6 +2708,12 @@ static void __do_request(struct ceph_mds_client *mdsc, > > > > put_request_session(req); > > > > + if (mdsc->fsc->blacklisted && > > + ceph_test_mount_opt(mdsc->fsc, CLEANRECOVER)) { > > + err = -EBLACKLISTED; > > + goto finish; > > + } > > + > > Why check for CLEANRECOVER? If we're mounted with recover_session=no > wouldn't we want to do the same thing here? > > Either way, it's still blacklisted. The only difference is that it won't > attempt to automatically recover the session that way. I think mds will clear the blacklist. In addition to loading cephfs via recover_session=clean, I didn't find a location where fsc->blacklisted is set to false. If the client has been blacklisted, should it always be blacklisted (fsc->blacklisted=true)? Or is there another way to set fsc->blacklised to false? > > > > mds = __choose_mds(mdsc, req, &random); > > if (mds < 0 || > > ceph_mdsmap_get_state(mdsc->mdsmap, mds) < CEPH_MDS_STATE_ACTIVE) { > -- > Jeff Layton >