Date: Fri, 10 Apr 2020 22:42:15 +0000 (UTC) From: Rick Macklem <rmacklem@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r359785 - head/sys/fs/nfsclient Message-ID: <202004102242.03AMgFMS041540@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: rmacklem Date: Fri Apr 10 22:42:14 2020 New Revision: 359785 URL: https://svnweb.freebsd.org/changeset/base/359785 Log: Replace mbuf macros with the code they would generate in the NFS code. When the code was ported to Mac OS/X, mbuf handling functions were converted to using the Mac OS/X accessor functions. For FreeBSD, they are a simple set of macros in sys/fs/nfs/nfskpiport.h. Since porting to Mac OS/X is no longer a consideration, replacement of these macros with the code generated by them makes the code more readable. When support for external page mbufs is added as needed by the KERN_TLS, the patch becomes simpler if done without the macros. This patch should not result in any semantic change. This conversion will be committed one file at a time. Modified: head/sys/fs/nfsclient/nfs_clcomsubs.c Modified: head/sys/fs/nfsclient/nfs_clcomsubs.c ============================================================================== --- head/sys/fs/nfsclient/nfs_clcomsubs.c Fri Apr 10 22:27:45 2020 (r359784) +++ head/sys/fs/nfsclient/nfs_clcomsubs.c Fri Apr 10 22:42:14 2020 (r359785) @@ -87,8 +87,8 @@ nfsm_uiombuf(struct nfsrv_descript *nd, struct uio *ui NFSMCLGET(mp, M_WAITOK); else NFSMGET(mp); - mbuf_setlen(mp, 0); - mbuf_setnext(mp2, mp); + mp->m_len = 0; + mp2->m_next = mp; mp2 = mp; mlen = M_TRAILINGSPACE(mp); } @@ -97,17 +97,17 @@ nfsm_uiombuf(struct nfsrv_descript *nd, struct uio *ui /* Not Yet.. */ if (uiop->uio_iov->iov_op != NULL) (*(uiop->uio_iov->iov_op)) - (uiocp, NFSMTOD(mp, caddr_t) + mbuf_len(mp), + (uiocp, mtod(mp, caddr_t) + mp->m_len, xfer); else #endif if (uiop->uio_segflg == UIO_SYSSPACE) - NFSBCOPY(uiocp, NFSMTOD(mp, caddr_t) + mbuf_len(mp), + NFSBCOPY(uiocp, mtod(mp, caddr_t) + mp->m_len, xfer); else - copyin(CAST_USER_ADDR_T(uiocp), NFSMTOD(mp, caddr_t) - + mbuf_len(mp), xfer); - mbuf_setlen(mp, mbuf_len(mp) + xfer); + copyin(CAST_USER_ADDR_T(uiocp), mtod(mp, caddr_t) + + mp->m_len, xfer); + mp->m_len += xfer; left -= xfer; uiocp += xfer; uiop->uio_offset += xfer; @@ -122,16 +122,16 @@ nfsm_uiombuf(struct nfsrv_descript *nd, struct uio *ui if (rem > 0) { if (rem > M_TRAILINGSPACE(mp)) { NFSMGET(mp); - mbuf_setlen(mp, 0); - mbuf_setnext(mp2, mp); + mp->m_len = 0; + mp2->m_next = mp; } - cp = NFSMTOD(mp, caddr_t) + mbuf_len(mp); + cp = mtod(mp, caddr_t) + mp->m_len; for (left = 0; left < rem; left++) *cp++ = '\0'; - mbuf_setlen(mp, mbuf_len(mp) + rem); + mp->m_len += rem; nd->nd_bpos = cp; } else - nd->nd_bpos = NFSMTOD(mp, caddr_t) + mbuf_len(mp); + nd->nd_bpos = mtod(mp, caddr_t) + mp->m_len; nd->nd_mb = mp; } @@ -159,7 +159,7 @@ nfsm_uiombuflist(struct uio *uiop, int siz, struct mbu NFSMCLGET(mp, M_WAITOK); else NFSMGET(mp); - mbuf_setlen(mp, 0); + mp->m_len = 0; firstmp = mp2 = mp; while (siz > 0) { left = uiop->uio_iov->iov_len; @@ -174,19 +174,19 @@ nfsm_uiombuflist(struct uio *uiop, int siz, struct mbu NFSMCLGET(mp, M_WAITOK); else NFSMGET(mp); - mbuf_setlen(mp, 0); - mbuf_setnext(mp2, mp); + mp->m_len = 0; + mp2->m_next = mp; mp2 = mp; mlen = M_TRAILINGSPACE(mp); } xfer = (left > mlen) ? mlen : left; if (uiop->uio_segflg == UIO_SYSSPACE) - NFSBCOPY(uiocp, NFSMTOD(mp, caddr_t) + - mbuf_len(mp), xfer); + NFSBCOPY(uiocp, mtod(mp, caddr_t) + + mp->m_len, xfer); else - copyin(uiocp, NFSMTOD(mp, caddr_t) + - mbuf_len(mp), xfer); - mbuf_setlen(mp, mbuf_len(mp) + xfer); + copyin(uiocp, mtod(mp, caddr_t) + + mp->m_len, xfer); + mp->m_len += xfer; left -= xfer; uiocp += xfer; uiop->uio_offset += xfer; @@ -199,7 +199,7 @@ nfsm_uiombuflist(struct uio *uiop, int siz, struct mbu siz -= uiosiz; } if (cpp != NULL) - *cpp = NFSMTOD(mp, caddr_t) + mbuf_len(mp); + *cpp = mtod(mp, caddr_t) + mp->m_len; if (mbp != NULL) *mbp = mp; return (firstmp);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202004102242.03AMgFMS041540>