Return-Path: Received: from ironport-1.zdv.net ([134.93.178.241]:50443 "EHLO ironport-1.zdv.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750891AbeEQIDY (ORCPT ); Thu, 17 May 2018 04:03:24 -0400 Subject: Re: Regression in [v2] nfs: Fix ugly referral attributes ? To: CC: Chuck Lever , , , <898165-forwarded@bugs.debian.org>, <898165@bugs.debian.org>, , Pradeep References: <20171105204404.10847.33767.stgit@manet.1015granger.net> From: Moritz Schlarb Message-ID: <19d4d696-3abc-42cd-28fb-86a24b572ddd@uni-mainz.de> Date: Thu, 17 May 2018 09:53:33 +0200 MIME-Version: 1.0 In-Reply-To: <20171105204404.10847.33767.stgit@manet.1015granger.net> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="LGbpIwX8A2tT2yBfQpwnuKwkVXFpDHfk5" Sender: linux-nfs-owner@vger.kernel.org List-ID: --LGbpIwX8A2tT2yBfQpwnuKwkVXFpDHfk5 Content-Type: multipart/mixed; boundary="LRX6o10FlXbbReNTOIZjz0wn9f3ol73AS"; protected-headers="v1" From: Moritz Schlarb To: linux-nfs@vger.kernel.org Cc: Chuck Lever , trond.myklebust@primarydata.com, anna.schumaker@netapp.com, 898165-forwarded@bugs.debian.org, 898165@bugs.debian.org, ben@decadent.org.uk, Pradeep Message-ID: <19d4d696-3abc-42cd-28fb-86a24b572ddd@uni-mainz.de> Subject: Re: Regression in [v2] nfs: Fix ugly referral attributes ? References: <20171105204404.10847.33767.stgit@manet.1015granger.net> In-Reply-To: <20171105204404.10847.33767.stgit@manet.1015granger.net> --LRX6o10FlXbbReNTOIZjz0wn9f3ol73AS Content-Type: multipart/mixed; boundary="------------B2BFAA4B41BA1422E458E83F" Content-Language: en-US This is a multi-part message in MIME format. --------------B2BFAA4B41BA1422E458E83F Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi everyone, there might be a regression coming from this patch: Since it got included in 3.16.54, our clients running a recent 3.16 kernel (like from Debian jessie-security) did not follow NFS 4.1 referrals (issued by nfs-ganesha) anymore. I have built that exact Debian kernel package with just this patch reversed and it worked again, so I got pretty confident that this patch is at least strongly related to the problem. Pradeep also confirmed the problem happening in 3.16.54 but not in 3.16.5= 1. Interestingly, this does *not* happen with 4.9 kernels, although the patch was part of 4.9.80... I have attached a pcap file of a machine running 3.16.56-1+deb8u1 in which I try to login as a user where my home directory is /uni-mainz.de/homes/schlarbm (with nfsrefer.zdv.uni-mainz.de:/ on /uni-mainz.de) which is then referred to fs02.uni-mainz.de:/vol/ma17/homes/schlarbm but that referral is not followed by the client. Please let me know if you need additional information to reproduce or have suggestions on what we could try. Best regards, Moritz On 05.11.2017 21:45, Chuck Lever wrote: > Before traversing a referral and performing a mount, the mounted-on > directory looks strange: >=20 > dr-xr-xr-x. 2 4294967294 4294967294 0 Dec 31 1969 dir.0 >=20 > nfs4_get_referral is wiping out any cached attributes with what was > returned via GETATTR(fs_locations), but the bit mask for that > operation does not request any file attributes. >=20 > Retrieve owner and timestamp information so that the memcpy in > nfs4_get_referral fills in more attributes. >=20 > Changes since v1: > - Don't request attributes that the client unconditionally replaces > - Request only MOUNTED_ON_FILEID or FILEID attribute, not both > - encode_fs_locations() doesn't use the third bitmask word >=20 > Fixes: 6b97fd3da1ea ("NFSv4: Follow a referral") > Suggested-by: Pradeep Thomas > Signed-off-by: Chuck Lever > Cc: stable@vger.kernel.org > --- > fs/nfs/nfs4proc.c | 18 ++++++++---------- > 1 file changed, 8 insertions(+), 10 deletions(-) >=20 > I could send this as an incremental, but that just seems to piss > off distributors, who will just squash them all together anyway. >=20 >=20 > -- > To unsubscribe from this list: send the line "unsubscribe linux-nfs" in= > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html >=20 > diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c > index 6c61e2b..2662879 100644 > --- a/fs/nfs/nfs4proc.c > +++ b/fs/nfs/nfs4proc.c > @@ -254,15 +254,12 @@ static int nfs4_map_errors(int err) > }; > =20 > const u32 nfs4_fs_locations_bitmap[3] =3D { > - FATTR4_WORD0_TYPE > - | FATTR4_WORD0_CHANGE > + FATTR4_WORD0_CHANGE > | FATTR4_WORD0_SIZE > | FATTR4_WORD0_FSID > | FATTR4_WORD0_FILEID > | FATTR4_WORD0_FS_LOCATIONS, > - FATTR4_WORD1_MODE > - | FATTR4_WORD1_NUMLINKS > - | FATTR4_WORD1_OWNER > + FATTR4_WORD1_OWNER > | FATTR4_WORD1_OWNER_GROUP > | FATTR4_WORD1_RAWDEV > | FATTR4_WORD1_SPACE_USED > @@ -6763,9 +6760,7 @@ static int _nfs4_proc_fs_locations(struct rpc_cln= t *client, struct inode *dir, > struct page *page) > { > struct nfs_server *server =3D NFS_SERVER(dir); > - u32 bitmask[3] =3D { > - [0] =3D FATTR4_WORD0_FSID | FATTR4_WORD0_FS_LOCATIONS, > - }; > + u32 bitmask[3]; > struct nfs4_fs_locations_arg args =3D { > .dir_fh =3D NFS_FH(dir), > .name =3D name, > @@ -6784,12 +6779,15 @@ static int _nfs4_proc_fs_locations(struct rpc_c= lnt *client, struct inode *dir, > =20 > dprintk("%s: start\n", __func__); > =20 > + bitmask[0] =3D nfs4_fattr_bitmap[0] | FATTR4_WORD0_FS_LOCATIONS; > + bitmask[1] =3D nfs4_fattr_bitmap[1]; > + > /* Ask for the fileid of the absent filesystem if mounted_on_fileid > * is not supported */ > if (NFS_SERVER(dir)->attr_bitmask[1] & FATTR4_WORD1_MOUNTED_ON_FILEID= ) > - bitmask[1] |=3D FATTR4_WORD1_MOUNTED_ON_FILEID; > + bitmask[0] &=3D ~FATTR4_WORD0_FILEID; > else > - bitmask[0] |=3D FATTR4_WORD0_FILEID; > + bitmask[1] &=3D ~FATTR4_WORD1_MOUNTED_ON_FILEID; > =20 > nfs_fattr_init(&fs_locations->fattr); > fs_locations->server =3D server; >=20 --------------B2BFAA4B41BA1422E458E83F Content-Type: application/vnd.tcpdump.pcap; name="nfs-referral-broken.pcap" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="nfs-referral-broken.pcap" 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 --------------B2BFAA4B41BA1422E458E83F Content-Type: text/x-vcard; charset=utf-8; name="schlarbm.vcf" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="schlarbm.vcf" begin:vcard fn:Moritz Schlarb n:Schlarb;Moritz org;quoted-printable;quoted-printable:Johannes Gutenberg-Universit=3DC3=3D= A4t Mainz;Zentrum f=3DC3=3DBCr Datenverarbeitung adr;dom:;;;Mainz email;internet:schlarbm@uni-mainz.de tel;work:+49 6131 39 29441 note;quoted-printable:OpenPGP Fingerprint: DF01 2247 BFC6=3D0D=3D0A=3D 5501 AFF2 8445 0C24 B841 C7DD BAAF version:2.1 end:vcard --------------B2BFAA4B41BA1422E458E83F-- --LRX6o10FlXbbReNTOIZjz0wn9f3ol73AS-- --LGbpIwX8A2tT2yBfQpwnuKwkVXFpDHfk5 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEE3wEiR7/GVQGv8oRFDCS4Qcfduq8FAlr9NP0ACgkQDCS4Qcfd uq+GExAAyTCgBFf9LVlesHCNl/AydgGST6xZeK/2MoJWyCI3eP8zUGRVIyrl2aMd dV3ynhACqUa3TGZRtnuXStalJCVcYQcm5h7TTNl0G/i4wiKn/MKgCLg7mcbhP/+o AjNJzc7/lf82XFin7t9GKFYQwxuzubzm8PytoNnUryDJEFKAMBJ9wbO+W3lBFGXt KTJr74wEkJN1F/30iS0b+g3RxlGZ1wYFptwHck0Xl1LQojuHmDTigx5C/V2NpiVE NWmtdvTH/IiGZbZkGp5nf6LSEQEnkD7FNS7tqIdZ3nQl5ow28mvk9g07iYZ6teMd uYyOlILFOnzrlOWu+/fc8kFcyGpfrsk0S/QJGOdS/JyNtq1Khr4oPZfaYISZxguB NSyXLlo9sWe/1Za3dPZ1Bj2R90DLAVRXKQSIKUNyRmThEIOyKprzrXk3HiAQwY2w TWD35U8YqmKxIMh/trROnuf3nS765txyp19SQ5cJoDE3TrVzV5wD99dHN2tz60j7 CelLnatqrJy/+VUzKjZzD5oLFgjhCfob9HPgsPawU3VQ4uKIl9QqysAlMMG+km8F YIcaoo9AyytD2W39RIjMDoFVcKvV5QIzPoGRjyDBqoNGIuVh4s65a2OZ6mRDM+qn k4irtUYvsz6V10JgTpdU3GZhH8H85ahV3LwlsfmPurZnox6LNt8= =2zIH -----END PGP SIGNATURE----- --LGbpIwX8A2tT2yBfQpwnuKwkVXFpDHfk5--