View | Details | Raw Unified | Return to bug 254816 | Differences between
and this patch

Collapse All | Expand All

(-)sys/fs/nfsserver/nfs_nfsdkrpc.c (-1 / +6 lines)
Lines 410-417 nfs_proc(struct nfsrv_descript *nd, u_int32_t xid, SVC Link Here
410
				m = NULL;
410
				m = NULL;
411
			if ((nd->nd_flag & ND_HASSEQUENCE) != 0)
411
			if ((nd->nd_flag & ND_HASSEQUENCE) != 0)
412
				nfsrv_cache_session(nd, &m);
412
				nfsrv_cache_session(nd, &m);
413
			if (nd->nd_repstat == NFSERR_REPLYFROMCACHE)
413
			if (nd->nd_repstat == NFSERR_REPLYFROMCACHE) {
414
				nd->nd_repstat = 0;
414
				nd->nd_repstat = 0;
415
				if (m != NULL) {
416
					m_freem(nd->nd_mreq);
417
					nd->nd_mreq = m;
418
				}
419
			}
415
			cacherep = RC_REPLY;
420
			cacherep = RC_REPLY;
416
		} else {
421
		} else {
417
			if (nd->nd_repstat == NFSERR_DONTREPLY)
422
			if (nd->nd_repstat == NFSERR_DONTREPLY)
(-)sys/fs/nfsserver/nfs_nfsdsubs.c (+2 lines)
Lines 1553-1558 nfsd_errmap(struct nfsrv_descript *nd) Link Here
1553
		else if (nd->nd_repstat == NFSERR_MINORVERMISMATCH ||
1553
		else if (nd->nd_repstat == NFSERR_MINORVERMISMATCH ||
1554
			 nd->nd_repstat == NFSERR_OPILLEGAL)
1554
			 nd->nd_repstat == NFSERR_OPILLEGAL)
1555
			return (txdr_unsigned(nd->nd_repstat));
1555
			return (txdr_unsigned(nd->nd_repstat));
1556
		else if (nd->nd_repstat == NFSERR_REPLYFROMCACHE)
1557
			return (txdr_unsigned(NFSERR_IO));
1556
		else if ((nd->nd_flag & ND_NFSV41) != 0) {
1558
		else if ((nd->nd_flag & ND_NFSV41) != 0) {
1557
			if (nd->nd_repstat == EOPNOTSUPP)
1559
			if (nd->nd_repstat == EOPNOTSUPP)
1558
				nd->nd_repstat = NFSERR_NOTSUPP;
1560
				nd->nd_repstat = NFSERR_NOTSUPP;

Return to bug 254816