diff options
author | cperciva <cperciva@FreeBSD.org> | 2016-12-20 08:42:47 +0000 |
---|---|---|
committer | cperciva <cperciva@FreeBSD.org> | 2016-12-20 08:42:47 +0000 |
commit | c728ef7f71b06e9bfd9df58bc1230abfe94c54ea (patch) | |
tree | 1b9d84240d36be4b00eb061a271688d26dfdd328 | |
parent | af93e7bbffb883adfbde38697424bd2822cf54ea (diff) | |
download | FreeBSD-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.c | 25 |
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; |