From patchwork Fri Apr 9 14:31:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Aur=C3=A9lien_Aptel?= X-Patchwork-Id: 1464420 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org (client-ip=23.128.96.18; helo=vger.kernel.org; envelope-from=linux-cifs-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=mimecast20200619 header.b=dTeW3PMP; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by ozlabs.org (Postfix) with ESMTP id 4FH0vl6X9gz9sW1 for ; Sat, 10 Apr 2021 00:32:19 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233541AbhDIOcc (ORCPT ); Fri, 9 Apr 2021 10:32:32 -0400 Received: from de-smtp-delivery-102.mimecast.com ([194.104.109.102]:25524 "EHLO de-smtp-delivery-102.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231946AbhDIOcb (ORCPT ); Fri, 9 Apr 2021 10:32:31 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1617978737; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=7DBm6MDrZ34b6GKZHoH7PmdrLfadHZamCJCgD6/1BTw=; b=dTeW3PMP2+foXj/Zpzm/jmRwVXsM2qpIWodiE4VsbN1GRDSHQ7Fyu3aWzlKse0KnbujcAG b8NmQznqkSiFiM88O5QoPdymDyGY185T2l/faF9TKN1n0yaEwmO/+XvHNW0iiAgKPVxCq1 uNRjARjG9vTfM1anLe2Vmu1JdLMjevE= Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04lp2055.outbound.protection.outlook.com [104.47.14.55]) (Using TLS) by relay.mimecast.com with ESMTP id de-mta-25-rPkD1HKUPSSEoMYznfD0Xw-2; Fri, 09 Apr 2021 16:32:06 +0200 X-MC-Unique: rPkD1HKUPSSEoMYznfD0Xw-2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FcRkxT6KUxkEaGNgbtPQZH1O1Ysea9z0v9umEtp2BwbCWnWyFipfkWVVqNTLaJjKJqaNTLTKp8nOc2TNA91XCItqWyYmJiSx9tXnKMXD3dBUM5wrH6VUl+GcDACg3GJgBzTn24htFIUz+58jwmlpovF6R27Ci5jg3mKAguz4x78ycANw96Fp7uwqEBoagh22XAcFWEwzCcxTvLKAySSv+OG/23Luo7NUgblcnlRq3k/DZAn9EhSFzMlXkjKy35iDmedaaY5Qx7U9VgM6CRxlW+lJ1KB7hT42eKXjiswrZlvV6HcjyDx0mAMIMJ4F/mT3JnRuv+FXvuLEHM+Y9RALyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=t3BY0ziaMIBnunZHmR+j61lJVYB5iY3Xh8ZhuMHw+rA=; b=R41kXC3qBTMWhHo+qHBxJGz3WdthwJbD8gmZO0Ohd5lftQFc8w50WVpGH7e93M82ctLZQOy4qAweAeZALyAk4eZmL7nyGTCrVRlzX3/rC4F+G7ENPoHWwJG+NDCDuiK5rceDyp7LSqDGMqlHhXi5ymZbYahDi3Ap1590Y2P0H4Hu5udQTJyKHblEjnwwscjJuYKYs8n7RD69ToJetYKJwLtARWzyhOcxcHOnTK/faQVbi2o5JBUUbk4R3zSSiPkP+UzcCIFerz+vcB9XPDuzCy27rNlelJu/cM4g3cEnI5/wUyZETJakTKHNmWEvSHlrLH0/0A+LL5OY9pDctUDDPA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Authentication-Results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=suse.com; Received: from VI1PR0402MB3359.eurprd04.prod.outlook.com (2603:10a6:803:3::28) by VI1PR0401MB2574.eurprd04.prod.outlook.com (2603:10a6:800:57::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.18; Fri, 9 Apr 2021 14:31:58 +0000 Received: from VI1PR0402MB3359.eurprd04.prod.outlook.com ([fe80::3c87:7c9e:2597:4d94]) by VI1PR0402MB3359.eurprd04.prod.outlook.com ([fe80::3c87:7c9e:2597:4d94%5]) with mapi id 15.20.3999.035; Fri, 9 Apr 2021 14:31:58 +0000 From: =?utf-8?q?Aur=C3=A9lien_Aptel?= To: Steve French , scabrero@suse.com CC: =?utf-8?q?Aur=C3=A9lien_Aptel?= , CIFS Subject: [PATCH v2] cifs: simplify SWN code with dummy funcs instead of ifdefs Date: Fri, 9 Apr 2021 16:31:37 +0200 Message-ID: <20210409143137.30683-1-aaptel@suse.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: References: X-Originating-IP: [2003:fa:705:3046:69ee:cad4:97e6:ea8f] X-ClientProxiedBy: ZR0P278CA0063.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:21::14) To VI1PR0402MB3359.eurprd04.prod.outlook.com (2603:10a6:803:3::28) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost (2003:fa:705:3046:69ee:cad4:97e6:ea8f) by ZR0P278CA0063.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:21::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Fri, 9 Apr 2021 14:31:57 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7e155536-6260-4c74-10ce-08d8fb643b18 X-MS-TrafficTypeDiagnostic: VI1PR0401MB2574: X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:64; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UR7JnSQ1CflDjW9MhgkTnZffUpBLzVUZaMW50nHm2AXFmSJM/eeOGDabXo0vkVwiMR9AhIIL9NjWvHVJf/s/f8oXbOR2rKyB5CNaue8LlJw0+M2KE8weRulU2lZz76ONyrB8tqF1QaZSTQ12AgeCK1jN2TOoMChDfPUIm/GkxsqTNnYmKG4bCGSuWy0ooOQKhPiSScDAsojCBJ/UHVEFLyJ92XkFoKs080ga6LBPcjmDdYDGqP6C++Kc1B3+h/M+ZaP9V3QNHHhnHHDTwOywVCHE2uZnPe1nczvrbNbO9mlfrwVc1dHN0hFoAz9Bq5OvnmeHSRdbZ7KNPfJLzaJzk83AwRNRr7GylENph5gxCDOPu7xPjRFst7j3mmz9gW4jNqeu0wUZBQhLHUwtTXnVJ6sd6imFheptJ3RFBUptJ+VfXQBt3Og/gkJn9V0YTN5/wG8vpKiLssd487t48UNQ8D1IFWR6nETDJEr1BHGQ0ZZD9UG1pv2Gsm5qO77/NlWJjh23JbWX9ZvC1Aiz0czT7ent7GFlIxUSsHaUVJyywpmVBC8JbulNqjBfATAeDlFRsHeKQ2lIOttpZatDnuhB4Zie5eTbHClSLQYKaz86Hvocc6VMIkLMm1uz2XyH2KHescxaLa1r0jC4IwTmcJp/eS4qCwSYtZ1ht5ixDxTjdYK0yo9g4nmSNB55qEMFSiVPd1FDxACuK7UEmoLuwqD0xb7T9+CKJjYDN7793qr1LFJexAAorOqpSp8AU2xhEiiV90hU8md2roQ2zMpZOjGLr0mi0Xg3DNiEZi4QannkTrshlbeBQKPK0obqYgyPiLHmpi+LZdIIydchzjI3BgNqUml8gdbtH1iPvRp0LGVKB15bnfoYoSKSiVpLEJ93ZLvGfBy+N9WPYAvda0eaCXAdBDIKQb+x41lKTRNG57HopcU+IKU7YRN2DXXSjmOEEIVIZYvBk4SvRpMnnJ3Oolhq2LXrM7Im+PT2e4wm2mDcgBI= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:5;SRV:;IPV:NLI;SFV:SPM;H:VI1PR0402MB3359.eurprd04.prod.outlook.com;PTR:;CAT:OSPM;SFS:(39840400004)(366004)(376002)(136003)(346002)(396003)(478600001)(6486002)(38100700001)(66946007)(66476007)(66556008)(6636002)(4326008)(52116002)(86362001)(6496006)(83380400001)(6666004)(16526019)(186003)(8936002)(8676002)(5660300002)(2906002)(36756003)(316002)(1076003)(2616005)(54906003)(23200700001);DIR:OUT;SFP:1501; X-MS-Exchange-AntiSpam-MessageData: O2x2HB5PbqX9iPuOSiEQPvcjtZh1E0E3lf7oNK6ScaHnuwrZBLym4sNZtamK0IopAMGpZ6A7w9p70zbImNj4hIAV08gojiCI2NBQ01hUUbO5wardPi/2Dsry2zUDCKYnh2rrz4zeugvLZbkrEFO5/3fEUF77u11rwUJuWb/xKloQ+kAlqLjG1LJ35Vu+xzbQXdI6RVYzH5aicNSncvxE+KFM9Kkk+DgTY3Pcq2tn1MDKtWOEUPzOGDM0bv2KkgeZ/IZXQlGiJkkr40Zd+WT0g8/rFCjDeMG0UBVR2yjeeGyvbtNdv+H5rOcbPAYHtLsa4BWhMPyb23n3ky4TIw+LAERYkl1WqU7M5psL3LxuwuKltB7Ny3f58mmFnPaGB4evazjMHtW+vcQ/t0nba+0O6fx6KI/MjEHzrEBjdyeQdeLm1xKxDeX5TkU5L74d1UG/jeLyTm2g+pYNiYgr5zOMrNCk+gq+y1S0aAzFuH7J9BsUkQkTZaLlzjWcf1fuQkyyPXnpxl0vD3c10bNVOH/eGnKdZP+CXGAshdzpSd2gRtq5+JZjykdtp1VKIt4kYO44gltbsf1cOno6+PkwCGyMMEBWpjcvWIbm/pYDOeFJ71vl3eUpNSRNImfVIVKIGHiqwIAm9yMNLlz7HqgTmk5PzJTfCGPUeaetc8/zrB3en60KWbSUAqe3D5+jp4JM2LGID2eQyynL8JnG1ZIJFAqp1VzlxEZWST13mioH2ksInxPE8xV9+oHwtTjvGIYD1+gQhnLnZdG5yDAGjOY4W5ury+Pq0Q71HO4fnZ7RqA3VwTG2XyLAOxQiptORiUok8rR3czvm1KtVqzg/3sLh0wqOJxiCKfswzhbX2V2V/qlUQYsnKBd+O4wgxsFeCBalCjGTJJyoIwkCVGMew6hKdTqm7VTyWCo5ylVhbw8r+75Clh1+mvFWs53HMWvjAVGu5OhnZ4Fmmx3+Y0umvQJnVaXJtqzO8q1y56f4v2hmM0UWgUQoXD3mRo5xJAtr+uepylwiWskINxjY4sMXxaevK/ee4+iAcQo6UN1lOiX5kP2Qu1ipdzyI6BzLduTCchLiGaI2M2Dse2VvFCoh0GK3GAv5NdnjRZsI3r8U+l03QBmhyX7C0sRw775lJgxLhg++FRMlLbc1nEW44BEXyMpluhg/ozjzf+2OJFSgi1+tmRP6AVEhSrfbjgqYVVYuvpZ0kX4SIk1jB+7K7qFU9hjNTK8DkErN3OyLT3EinZw1TDatgQ7YJ+3S+hutddV5KCrtUQ6VcIYqexAP4+WghkZSzOviXxuMjqRpTa872FginfZe/k8QKSJNjqAZoDLhOy8R9gycKWue+722W5iboJadvJPIMm9q+w/RQPdqXaWq9WufnOkxojYzUCMw0BD8TqyG7Nhv X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7e155536-6260-4c74-10ce-08d8fb643b18 X-MS-Exchange-CrossTenant-AuthSource: VI1PR0402MB3359.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 14:31:58.0898 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: TqSZGm/9tzz9B+vS3wl20kwREvymI/ihIvVFB15a/8/imC3V0qevhKUwIXj/LkET X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2574 Precedence: bulk List-ID: X-Mailing-List: linux-cifs@vger.kernel.org From: Aurelien Aptel This commit doesn't change the logic of SWN. Add dummy implementation of SWN functions when SWN is disabled instead of using ifdef sections. The dummy functions get optimized out, this leads to clearer code and compile time type-checking regardless of config options with no runtime penalty. Leave the simple ifdefs section as-is. A single bitfield (bool foo:1) on its own will use up one int. Move tcon->use_witness out of ifdefs with the other tcon bitfields. Signed-off-by: Aurelien Aptel --- changes since v1: * updated to apply on current for-next fs/cifs/cifs_debug.c | 8 +------- fs/cifs/cifs_swn.h | 27 +++++++++++++++++++++++++++ fs/cifs/cifsfs.c | 2 -- fs/cifs/cifsglob.h | 4 +--- fs/cifs/connect.c | 25 ++++--------------------- 5 files changed, 33 insertions(+), 33 deletions(-) diff --git a/fs/cifs/cifs_debug.c b/fs/cifs/cifs_debug.c index 88a7958170ee..d8ae961a510f 100644 --- a/fs/cifs/cifs_debug.c +++ b/fs/cifs/cifs_debug.c @@ -23,9 +23,7 @@ #ifdef CONFIG_CIFS_SMB_DIRECT #include "smbdirect.h" #endif -#ifdef CONFIG_CIFS_SWN_UPCALL #include "cifs_swn.h" -#endif void cifs_dump_mem(char *label, void *data, int length) @@ -118,10 +116,8 @@ static void cifs_debug_tcon(struct seq_file *m, struct cifs_tcon *tcon) seq_printf(m, " POSIX Extensions"); if (tcon->ses->server->ops->dump_share_caps) tcon->ses->server->ops->dump_share_caps(m, tcon); -#ifdef CONFIG_CIFS_SWN_UPCALL if (tcon->use_witness) seq_puts(m, " Witness"); -#endif if (tcon->need_reconnect) seq_puts(m, "\tDISCONNECTED "); @@ -490,10 +486,8 @@ static int cifs_debug_data_proc_show(struct seq_file *m, void *v) spin_unlock(&cifs_tcp_ses_lock); seq_putc(m, '\n'); - -#ifdef CONFIG_CIFS_SWN_UPCALL cifs_swn_dump(m); -#endif + /* BB add code to dump additional info such as TCP session info now */ return 0; } diff --git a/fs/cifs/cifs_swn.h b/fs/cifs/cifs_swn.h index 236ecd4959d5..8a9d2a5c9077 100644 --- a/fs/cifs/cifs_swn.h +++ b/fs/cifs/cifs_swn.h @@ -7,11 +7,13 @@ #ifndef _CIFS_SWN_H #define _CIFS_SWN_H +#include "cifsglob.h" struct cifs_tcon; struct sk_buff; struct genl_info; +#ifdef CONFIG_CIFS_SWN_UPCALL extern int cifs_swn_register(struct cifs_tcon *tcon); extern int cifs_swn_unregister(struct cifs_tcon *tcon); @@ -22,4 +24,29 @@ extern void cifs_swn_dump(struct seq_file *m); extern void cifs_swn_check(void); +static inline bool cifs_swn_set_server_dstaddr(struct TCP_Server_Info *server) +{ + if (server->use_swn_dstaddr) { + server->dstaddr = server->swn_dstaddr; + return true; + } + return false; +} + +static inline void cifs_swn_reset_server_dstaddr(struct TCP_Server_Info *server) +{ + server->use_swn_dstaddr = false; +} + +#else + +static inline int cifs_swn_register(struct cifs_tcon *tcon) { return 0; } +static inline int cifs_swn_unregister(struct cifs_tcon *tcon) { return 0; } +static inline int cifs_swn_notify(struct sk_buff *s, struct genl_info *i) { return 0; } +static inline void cifs_swn_dump(struct seq_file *m) {} +static inline void cifs_swn_check(void) {} +static inline bool cifs_swn_set_server_dstaddr(struct TCP_Server_Info *server) { return false; } +static inline void cifs_swn_reset_server_dstaddr(struct TCP_Server_Info *server) {} + +#endif /* CONFIG_CIFS_SWN_UPCALL */ #endif /* _CIFS_SWN_H */ diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c index 5ddd20b62484..1b65ff9e9189 100644 --- a/fs/cifs/cifsfs.c +++ b/fs/cifs/cifsfs.c @@ -656,10 +656,8 @@ cifs_show_options(struct seq_file *s, struct dentry *root) seq_printf(s, ",multichannel,max_channels=%zu", tcon->ses->chan_max); -#ifdef CONFIG_CIFS_SWN_UPCALL if (tcon->use_witness) seq_puts(s, ",witness"); -#endif return 0; } diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h index ec824ab8c5ca..dec0620ccca4 100644 --- a/fs/cifs/cifsglob.h +++ b/fs/cifs/cifsglob.h @@ -1070,6 +1070,7 @@ struct cifs_tcon { bool use_resilient:1; /* use resilient instead of durable handles */ bool use_persistent:1; /* use persistent instead of durable handles */ bool no_lease:1; /* Do not request leases on files or directories */ + bool use_witness:1; /* use witness protocol */ __le32 capabilities; __u32 share_flags; __u32 maximal_access; @@ -1094,9 +1095,6 @@ struct cifs_tcon { int remap:2; struct list_head ulist; /* cache update list */ #endif -#ifdef CONFIG_CIFS_SWN_UPCALL - bool use_witness:1; /* use witness protocol */ -#endif }; /* diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index 24668eb006c6..35dbb9c836ea 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c @@ -62,9 +62,7 @@ #include "dfs_cache.h" #endif #include "fs_context.h" -#ifdef CONFIG_CIFS_SWN_UPCALL #include "cifs_swn.h" -#endif extern mempool_t *cifs_req_poolp; extern bool disable_legacy_dialects; @@ -314,12 +312,8 @@ cifs_reconnect(struct TCP_Server_Info *server) mutex_lock(&server->srv_mutex); -#ifdef CONFIG_CIFS_SWN_UPCALL - if (server->use_swn_dstaddr) { - server->dstaddr = server->swn_dstaddr; - } else { -#endif + if (!cifs_swn_set_server_dstaddr(server)) { #ifdef CONFIG_CIFS_DFS_UPCALL if (cifs_sb && cifs_sb->origin_fullpath) /* @@ -344,9 +338,7 @@ cifs_reconnect(struct TCP_Server_Info *server) #endif -#ifdef CONFIG_CIFS_SWN_UPCALL } -#endif if (cifs_rdma_enabled(server)) rc = smbd_reconnect(server); @@ -363,9 +355,7 @@ cifs_reconnect(struct TCP_Server_Info *server) if (server->tcpStatus != CifsExiting) server->tcpStatus = CifsNeedNegotiate; spin_unlock(&GlobalMid_Lock); -#ifdef CONFIG_CIFS_SWN_UPCALL - server->use_swn_dstaddr = false; -#endif + cifs_swn_reset_server_dstaddr(server); mutex_unlock(&server->srv_mutex); } } while (server->tcpStatus == CifsNeedReconnect); @@ -430,10 +420,8 @@ cifs_echo_request(struct work_struct *work) cifs_dbg(FYI, "Unable to send echo request to server: %s\n", server->hostname); -#ifdef CONFIG_CIFS_SWN_UPCALL /* Check witness registrations */ cifs_swn_check(); -#endif requeue_echo: queue_delayed_work(cifsiod_wq, &server->echo, server->echo_interval); @@ -2009,7 +1997,6 @@ cifs_put_tcon(struct cifs_tcon *tcon) return; } -#ifdef CONFIG_CIFS_SWN_UPCALL if (tcon->use_witness) { int rc; @@ -2019,7 +2006,6 @@ cifs_put_tcon(struct cifs_tcon *tcon) __func__, rc); } } -#endif list_del_init(&tcon->tcon_list); spin_unlock(&cifs_tcp_ses_lock); @@ -2181,9 +2167,9 @@ cifs_get_tcon(struct cifs_ses *ses, struct smb3_fs_context *ctx) } tcon->use_resilient = true; } -#ifdef CONFIG_CIFS_SWN_UPCALL + tcon->use_witness = false; - if (ctx->witness) { + if (IS_ENABLED(CONFIG_CIFS_SWN_UPCALL) && ctx->witness) { if (ses->server->vals->protocol_id >= SMB30_PROT_ID) { if (tcon->capabilities & SMB2_SHARE_CAP_CLUSTER) { /* @@ -2209,7 +2195,6 @@ cifs_get_tcon(struct cifs_ses *ses, struct smb3_fs_context *ctx) goto out_fail; } } -#endif /* If the user really knows what they are doing they can override */ if (tcon->share_flags & SMB2_SHAREFLAG_NO_CACHING) { @@ -3877,9 +3862,7 @@ cifs_construct_tcon(struct cifs_sb_info *cifs_sb, kuid_t fsuid) ctx->sectype = master_tcon->ses->sectype; ctx->sign = master_tcon->ses->sign; ctx->seal = master_tcon->seal; -#ifdef CONFIG_CIFS_SWN_UPCALL ctx->witness = master_tcon->use_witness; -#endif rc = cifs_set_vol_auth(ctx, master_tcon->ses); if (rc) {