summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcperciva <cperciva@FreeBSD.org>2016-12-20 08:42:47 +0000
committercperciva <cperciva@FreeBSD.org>2016-12-20 08:42:47 +0000
commitc728ef7f71b06e9bfd9df58bc1230abfe94c54ea (patch)
tree1b9d84240d36be4b00eb061a271688d26dfdd328
parentaf93e7bbffb883adfbde38697424bd2822cf54ea (diff)
downloadFreeBSD-src-c728ef7f71b06e9bfd9df58bc1230abfe94c54ea.zip
FreeBSD-src-c728ef7f71b06e9bfd9df58bc1230abfe94c54ea.tar.gz
MFC r308708: Reduce verbosity of warnings about truncating NFS fileids to
32-bit inode numbers.
-rw-r--r--sys/fs/nfs/nfs_commonsubs.c25
1 files changed, 21 insertions, 4 deletions
diff --git a/sys/fs/nfs/nfs_commonsubs.c b/sys/fs/nfs/nfs_commonsubs.c
index 7d45673..60615cd 100644
--- a/sys/fs/nfs/nfs_commonsubs.c
+++ b/sys/fs/nfs/nfs_commonsubs.c
@@ -827,6 +827,11 @@ nfsv4_loadattr(struct nfsrv_descript *nd, vnode_t vp,
struct dqblk dqb;
uid_t savuid;
#endif
+ static struct timeval last64fileid;
+ static size_t count64fileid;
+ static struct timeval last64mountfileid;
+ static size_t count64mountfileid;
+ static struct timeval warninterval = { 60, 0 };
if (compare) {
retnotsup = 0;
@@ -1196,8 +1201,14 @@ nfsv4_loadattr(struct nfsrv_descript *nd, vnode_t vp,
*retcmpp = NFSERR_NOTSAME;
}
} else if (nap != NULL) {
- if (*tl++)
- printf("NFSv4 fileid > 32bits\n");
+ if (*tl++) {
+ count64fileid++;
+ if (ratecheck(&last64fileid, &warninterval)) {
+ printf("NFSv4 fileid > 32bits (%zu occurrences)\n",
+ count64fileid);
+ count64fileid = 0;
+ }
+ }
nap->na_fileid = thyp;
}
attrsum += NFSX_HYPER;
@@ -1734,8 +1745,14 @@ nfsv4_loadattr(struct nfsrv_descript *nd, vnode_t vp,
}
}
} else if (nap != NULL) {
- if (*tl++)
- printf("NFSv4 mounted on fileid > 32bits\n");
+ if (*tl++) {
+ count64mountfileid++;
+ if (ratecheck(&last64mountfileid, &warninterval)) {
+ printf("NFSv4 mounted on fileid > 32bits (%zu occurrences)\n",
+ count64mountfileid);
+ count64mountfileid = 0;
+ }
+ }
nap->na_mntonfileno = thyp;
}
attrsum += NFSX_HYPER;
OpenPOWER on IntegriCloud