From patchwork Wed Nov 13 21:52:55 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jeff Layton X-Patchwork-Id: 3179761 Return-Path: X-Original-To: patchwork-linux-nfs@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id EED2BC045C for ; Wed, 13 Nov 2013 21:53:09 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 3A17D208E7 for ; Wed, 13 Nov 2013 21:53:09 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 6E2AE208EC for ; Wed, 13 Nov 2013 21:53:08 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751617Ab3KMVxH (ORCPT ); Wed, 13 Nov 2013 16:53:07 -0500 Received: from mail-gg0-f170.google.com ([209.85.161.170]:33287 "EHLO mail-gg0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751883Ab3KMVxG (ORCPT ); Wed, 13 Nov 2013 16:53:06 -0500 Received: by mail-gg0-f170.google.com with SMTP id 4so452822ggm.15 for ; Wed, 13 Nov 2013 13:53:05 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=LoaQnZLbIeFbbmMlxelcMUQ4bpXXgZzghArAmUL3C/k=; b=NSO8UT0rilkwhFnZfKCQ/V4fvqBOCXaDm3ZzqxYyNinmA6jFAp8JQAkNZ89HV6wfTt FVDcT1dFBf76uZD6TyzPKf5bX+sHiWxsbWXuxvEdK9i/+dqta+KZcOGYzXKLjXjaI2FY p0uAGhEk0L++3Qjjx9wiCtL57b4NcmA21VihRGLZlQazEPvlMJTyUzDlapy93zUJqq8m 7Nhvt1NT4Dsmpg3ETPakYL7E3YClXhvbnGyAc8tY/AfZK7ovRYu+6b8MUbaXsNngjPeT AZCwHyQyAluKkj5evbuFqhDVoRNJdiBAT7gFMNnPAjtFybHfW8xvB1hVQ5ldsaD3qnYm Ukbg== X-Gm-Message-State: ALoCoQl95vIxY8TD2XkFWRQUI0WH4rPwF7tJUjXcdqZB502ydAukKTfxiEx2Sw0YvXotmr7eZRMT X-Received: by 10.236.46.36 with SMTP id q24mr532042yhb.184.1384379585517; Wed, 13 Nov 2013 13:53:05 -0800 (PST) Received: from salusa.poochiereds.net (cpe-107-015-124-230.nc.res.rr.com. [107.15.124.230]) by mx.google.com with ESMTPSA id v96sm59696188yhp.3.2013.11.13.13.53.03 for (version=TLSv1.2 cipher=AES128-GCM-SHA256 bits=128/128); Wed, 13 Nov 2013 13:53:04 -0800 (PST) From: Jeff Layton To: trond.myklebust@netapp.com Cc: chuck.lever@oracle.com, neilb@suse.de, steved@redhat.com, linux-nfs@vger.kernel.org Subject: [PATCH v3 3/3] nfs: check if gssd is running before attempting to use krb5i auth in SETCLIENTID call Date: Wed, 13 Nov 2013 16:52:55 -0500 Message-Id: <1384379575-8997-4-git-send-email-jlayton@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1384379575-8997-1-git-send-email-jlayton@redhat.com> References: <1384379575-8997-1-git-send-email-jlayton@redhat.com> Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Currently, the client will attempt to use krb5i in the SETCLIENTID call even if rpc.gssd is running. If that fails, it'll then fall back to RPC_AUTH_UNIX. This introduced a delay when mounting if rpc.gssd isn't running, and causes warning messages to pop up in the ring buffer. Check to see if rpc.gssd is running before even attempting to use krb5i auth, and just silently skip trying to do so if it isn't. Signed-off-by: Jeff Layton --- fs/nfs/nfs4client.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/fs/nfs/nfs4client.c b/fs/nfs/nfs4client.c index b4a160a..37643fe 100644 --- a/fs/nfs/nfs4client.c +++ b/fs/nfs/nfs4client.c @@ -10,6 +10,7 @@ #include #include #include +#include #include "internal.h" #include "callback.h" #include "delegation.h" @@ -370,7 +371,10 @@ struct nfs_client *nfs4_init_client(struct nfs_client *clp, __set_bit(NFS_CS_INFINITE_SLOTS, &clp->cl_flags); __set_bit(NFS_CS_DISCRTRY, &clp->cl_flags); __set_bit(NFS_CS_NO_RETRANS_TIMEOUT, &clp->cl_flags); - error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_GSS_KRB5I); + + error = -EINVAL; + if (gssd_running(clp->cl_net)) + error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_GSS_KRB5I); if (error == -EINVAL) error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_UNIX); if (error < 0)