Print this page
patch lower-case-segops

@@ -1481,11 +1481,11 @@
 
         if (p->p_brksize != 0)
                 addr += p->p_brksize - 1;
         seg = as_segat(p->p_as, addr);
         if (seg != NULL && seg->s_ops == &segvn_ops &&
-            (SEGOP_GETVP(seg, seg->s_base, &vp) != 0 || vp == NULL))
+            (segop_getvp(seg, seg->s_base, &vp) != 0 || vp == NULL))
                 return (seg);
         return (NULL);
 }
 
 /*

@@ -1646,25 +1646,25 @@
 
                         mp = pr_iol_newbuf(iolhead, sizeof (*mp));
 
                         mp->pr_vaddr = (uintptr_t)saddr;
                         mp->pr_size = naddr - saddr;
-                        mp->pr_offset = SEGOP_GETOFFSET(seg, saddr);
+                        mp->pr_offset = segop_getoffset(seg, saddr);
                         mp->pr_mflags = 0;
                         if (prot & PROT_READ)
                                 mp->pr_mflags |= MA_READ;
                         if (prot & PROT_WRITE)
                                 mp->pr_mflags |= MA_WRITE;
                         if (prot & PROT_EXEC)
                                 mp->pr_mflags |= MA_EXEC;
-                        if (SEGOP_GETTYPE(seg, saddr) & MAP_SHARED)
+                        if (segop_gettype(seg, saddr) & MAP_SHARED)
                                 mp->pr_mflags |= MA_SHARED;
-                        if (SEGOP_GETTYPE(seg, saddr) & MAP_NORESERVE)
+                        if (segop_gettype(seg, saddr) & MAP_NORESERVE)
                                 mp->pr_mflags |= MA_NORESERVE;
                         if (seg->s_ops == &segspt_shmops ||
                             (seg->s_ops == &segvn_ops &&
-                            (SEGOP_GETVP(seg, saddr, &vp) != 0 || vp == NULL)))
+                            (segop_getvp(seg, saddr, &vp) != 0 || vp == NULL)))
                                 mp->pr_mflags |= MA_ANON;
                         if (seg == brkseg)
                                 mp->pr_mflags |= MA_BREAK;
                         else if (seg == stkseg) {
                                 mp->pr_mflags |= MA_STACK;

@@ -1686,11 +1686,11 @@
                         /*
                          * Manufacture a filename for the "object" directory.
                          */
                         vattr.va_mask = AT_FSID|AT_NODEID;
                         if (seg->s_ops == &segvn_ops &&
-                            SEGOP_GETVP(seg, saddr, &vp) == 0 &&
+                            segop_getvp(seg, saddr, &vp) == 0 &&
                             vp != NULL && vp->v_type == VREG &&
                             VOP_GETATTR(vp, &vattr, 0, CRED(), NULL) == 0) {
                                 if (vp == p->p_exec)
                                         (void) strcpy(mp->pr_mapname, "a.out");
                                 else

@@ -1757,25 +1757,25 @@
 
                         mp = pr_iol_newbuf(iolhead, sizeof (*mp));
 
                         mp->pr_vaddr = (caddr32_t)(uintptr_t)saddr;
                         mp->pr_size = (size32_t)(naddr - saddr);
-                        mp->pr_offset = SEGOP_GETOFFSET(seg, saddr);
+                        mp->pr_offset = segop_getoffset(seg, saddr);
                         mp->pr_mflags = 0;
                         if (prot & PROT_READ)
                                 mp->pr_mflags |= MA_READ;
                         if (prot & PROT_WRITE)
                                 mp->pr_mflags |= MA_WRITE;
                         if (prot & PROT_EXEC)
                                 mp->pr_mflags |= MA_EXEC;
-                        if (SEGOP_GETTYPE(seg, saddr) & MAP_SHARED)
+                        if (segop_gettype(seg, saddr) & MAP_SHARED)
                                 mp->pr_mflags |= MA_SHARED;
-                        if (SEGOP_GETTYPE(seg, saddr) & MAP_NORESERVE)
+                        if (segop_gettype(seg, saddr) & MAP_NORESERVE)
                                 mp->pr_mflags |= MA_NORESERVE;
                         if (seg->s_ops == &segspt_shmops ||
                             (seg->s_ops == &segvn_ops &&
-                            (SEGOP_GETVP(seg, saddr, &vp) != 0 || vp == NULL)))
+                            (segop_getvp(seg, saddr, &vp) != 0 || vp == NULL)))
                                 mp->pr_mflags |= MA_ANON;
                         if (seg == brkseg)
                                 mp->pr_mflags |= MA_BREAK;
                         else if (seg == stkseg) {
                                 mp->pr_mflags |= MA_STACK;

@@ -1798,11 +1798,11 @@
                         /*
                          * Manufacture a filename for the "object" directory.
                          */
                         vattr.va_mask = AT_FSID|AT_NODEID;
                         if (seg->s_ops == &segvn_ops &&
-                            SEGOP_GETVP(seg, saddr, &vp) == 0 &&
+                            segop_getvp(seg, saddr, &vp) == 0 &&
                             vp != NULL && vp->v_type == VREG &&
                             VOP_GETATTR(vp, &vattr, 0, CRED(), NULL) == 0) {
                                 if (vp == p->p_exec)
                                         (void) strcpy(mp->pr_mapname, "a.out");
                                 else

@@ -1951,11 +1951,11 @@
                          * subtlely even though we're holding as->a_lock
                          * due to the nondeterminism of page_exists() in
                          * the presence of asychronously flushed pages or
                          * mapped files whose sizes are changing.
                          * page_exists() may be called indirectly from
-                         * pr_getprot() by a SEGOP_INCORE() routine.
+                         * pr_getprot() by a segop_incore() routine.
                          * If this happens we need to make sure we don't
                          * overrun the buffer whose size we computed based
                          * on the initial iteration through the segments.
                          * Once we've detected an overflow, we need to clean
                          * up the temporary memory allocated in pr_getprot()

@@ -1977,35 +1977,35 @@
 
                         php->pr_nmap++;
                         php->pr_npage += npage;
                         pmp->pr_vaddr = (uintptr_t)saddr;
                         pmp->pr_npage = npage;
-                        pmp->pr_offset = SEGOP_GETOFFSET(seg, saddr);
+                        pmp->pr_offset = segop_getoffset(seg, saddr);
                         pmp->pr_mflags = 0;
                         if (prot & PROT_READ)
                                 pmp->pr_mflags |= MA_READ;
                         if (prot & PROT_WRITE)
                                 pmp->pr_mflags |= MA_WRITE;
                         if (prot & PROT_EXEC)
                                 pmp->pr_mflags |= MA_EXEC;
-                        if (SEGOP_GETTYPE(seg, saddr) & MAP_SHARED)
+                        if (segop_gettype(seg, saddr) & MAP_SHARED)
                                 pmp->pr_mflags |= MA_SHARED;
-                        if (SEGOP_GETTYPE(seg, saddr) & MAP_NORESERVE)
+                        if (segop_gettype(seg, saddr) & MAP_NORESERVE)
                                 pmp->pr_mflags |= MA_NORESERVE;
                         if (seg->s_ops == &segspt_shmops ||
                             (seg->s_ops == &segvn_ops &&
-                            (SEGOP_GETVP(seg, saddr, &vp) != 0 || vp == NULL)))
+                            (segop_getvp(seg, saddr, &vp) != 0 || vp == NULL)))
                                 pmp->pr_mflags |= MA_ANON;
                         if (seg->s_ops == &segspt_shmops)
                                 pmp->pr_mflags |= MA_ISM | MA_SHM;
                         pmp->pr_pagesize = PAGESIZE;
                         /*
                          * Manufacture a filename for the "object" directory.
                          */
                         vattr.va_mask = AT_FSID|AT_NODEID;
                         if (seg->s_ops == &segvn_ops &&
-                            SEGOP_GETVP(seg, saddr, &vp) == 0 &&
+                            segop_getvp(seg, saddr, &vp) == 0 &&
                             vp != NULL && vp->v_type == VREG &&
                             VOP_GETATTR(vp, &vattr, 0, CRED(), NULL) == 0) {
                                 if (vp == p->p_exec)
                                         (void) strcpy(pmp->pr_mapname, "a.out");
                                 else

@@ -2098,11 +2098,11 @@
                          * subtlely even though we're holding as->a_lock
                          * due to the nondeterminism of page_exists() in
                          * the presence of asychronously flushed pages or
                          * mapped files whose sizes are changing.
                          * page_exists() may be called indirectly from
-                         * pr_getprot() by a SEGOP_INCORE() routine.
+                         * pr_getprot() by a segop_incore() routine.
                          * If this happens we need to make sure we don't
                          * overrun the buffer whose size we computed based
                          * on the initial iteration through the segments.
                          * Once we've detected an overflow, we need to clean
                          * up the temporary memory allocated in pr_getprot()

@@ -2124,35 +2124,35 @@
 
                         php->pr_nmap++;
                         php->pr_npage += npage;
                         pmp->pr_vaddr = (caddr32_t)(uintptr_t)saddr;
                         pmp->pr_npage = (size32_t)npage;
-                        pmp->pr_offset = SEGOP_GETOFFSET(seg, saddr);
+                        pmp->pr_offset = segop_getoffset(seg, saddr);
                         pmp->pr_mflags = 0;
                         if (prot & PROT_READ)
                                 pmp->pr_mflags |= MA_READ;
                         if (prot & PROT_WRITE)
                                 pmp->pr_mflags |= MA_WRITE;
                         if (prot & PROT_EXEC)
                                 pmp->pr_mflags |= MA_EXEC;
-                        if (SEGOP_GETTYPE(seg, saddr) & MAP_SHARED)
+                        if (segop_gettype(seg, saddr) & MAP_SHARED)
                                 pmp->pr_mflags |= MA_SHARED;
-                        if (SEGOP_GETTYPE(seg, saddr) & MAP_NORESERVE)
+                        if (segop_gettype(seg, saddr) & MAP_NORESERVE)
                                 pmp->pr_mflags |= MA_NORESERVE;
                         if (seg->s_ops == &segspt_shmops ||
                             (seg->s_ops == &segvn_ops &&
-                            (SEGOP_GETVP(seg, saddr, &vp) != 0 || vp == NULL)))
+                            (segop_getvp(seg, saddr, &vp) != 0 || vp == NULL)))
                                 pmp->pr_mflags |= MA_ANON;
                         if (seg->s_ops == &segspt_shmops)
                                 pmp->pr_mflags |= MA_ISM | MA_SHM;
                         pmp->pr_pagesize = PAGESIZE;
                         /*
                          * Manufacture a filename for the "object" directory.
                          */
                         vattr.va_mask = AT_FSID|AT_NODEID;
                         if (seg->s_ops == &segvn_ops &&
-                            SEGOP_GETVP(seg, saddr, &vp) == 0 &&
+                            segop_getvp(seg, saddr, &vp) == 0 &&
                             vp != NULL && vp->v_type == VREG &&
                             VOP_GETATTR(vp, &vattr, 0, CRED(), NULL) == 0) {
                                 if (vp == p->p_exec)
                                         (void) strcpy(pmp->pr_mapname, "a.out");
                                 else

@@ -3326,11 +3326,11 @@
                 retry:
 
                         if ((pwp->wp_prot != prot ||
                             (pwp->wp_flags & WP_NOWATCH)) &&
                             (seg = as_segat(as, addr)) != NULL) {
-                                err = SEGOP_SETPROT(seg, addr, PAGESIZE, prot);
+                                err = segop_setprot(seg, addr, PAGESIZE, prot);
                                 if (err == IE_RETRY) {
                                         ASSERT(retrycnt == 0);
                                         retrycnt++;
                                         goto retry;
                                 }

@@ -3432,11 +3432,11 @@
 
         if (!(p->p_flag & SVFWAIT)) {
                 vaddr = pwp->wp_vaddr;
                 if (pwp->wp_oprot == 0 &&
                     (seg = as_segat(as, vaddr)) != NULL) {
-                        SEGOP_GETPROT(seg, vaddr, 0, &prot);
+                        (void) segop_getprot(seg, vaddr, 0, &prot);
                         pwp->wp_oprot = (uchar_t)prot;
                         pwp->wp_prot = (uchar_t)prot;
                 }
                 if (pwp->wp_oprot != 0) {
                         prot = pwp->wp_oprot;

@@ -3638,11 +3638,11 @@
         if (pagev->pg_incore != NULL) {
                 /*
                  * INCORE cleverly has different semantics than GETPROT:
                  * it returns info on pages up to but NOT including addr + len.
                  */
-                SEGOP_INCORE(seg, addr, len, pagev->pg_incore);
+                (void) segop_incore(seg, addr, len, pagev->pg_incore);
                 pn = pagev->pg_pnbase;
 
                 do {
                         /*
                          * Guilty knowledge here:  We know that segvn_incore

@@ -3666,11 +3666,11 @@
         /*
          * Need to take len - 1 because addr + len is the address of the
          * first byte of the page just past the end of what we want.
          */
 out:
-        SEGOP_GETPROT(seg, saddr, len - 1, pagev->pg_protv);
+        (void) segop_getprot(seg, saddr, len - 1, pagev->pg_protv);
         return (addr);
 }
 
 static caddr_t
 pr_pagev_nextprot(prpagev_t *pagev, struct seg *seg,

@@ -3787,16 +3787,16 @@
                 vattr_t vattr;
                 vnode_t *vp;
 
                 vattr.va_mask = AT_SIZE;
 
-                if (SEGOP_GETVP(seg, seg->s_base, &vp) == 0 &&
+                if (segop_getvp(seg, seg->s_base, &vp) == 0 &&
                     vp != NULL && vp->v_type == VREG &&
                     VOP_GETATTR(vp, &vattr, 0, CRED(), NULL) == 0) {
 
                         u_offset_t fsize = vattr.va_size;
-                        u_offset_t offset = SEGOP_GETOFFSET(seg, seg->s_base);
+                        u_offset_t offset = segop_getoffset(seg, seg->s_base);
 
                         if (fsize < offset)
                                 fsize = 0;
                         else
                                 fsize -= offset;

@@ -3822,11 +3822,11 @@
          * reservation of virtual address space and has no actual size.
          * Such segments are backed by segdev and have type set to neither
          * MAP_SHARED nor MAP_PRIVATE.
          */
         if (seg->s_ops == &segdev_ops &&
-            ((SEGOP_GETTYPE(seg, seg->s_base) &
+            ((segop_gettype(seg, seg->s_base) &
             (MAP_SHARED | MAP_PRIVATE)) == 0))
                 return (0);
 
         /*
          * If this segment doesn't match one of the special types we handle,

@@ -4053,25 +4053,25 @@
 
                                 mp = pr_iol_newbuf(iolhead, sizeof (*mp));
 
                                 mp->pr_vaddr = (uintptr_t)saddr;
                                 mp->pr_size = naddr - saddr;
-                                mp->pr_offset = SEGOP_GETOFFSET(seg, saddr);
+                                mp->pr_offset = segop_getoffset(seg, saddr);
                                 mp->pr_mflags = 0;
                                 if (prot & PROT_READ)
                                         mp->pr_mflags |= MA_READ;
                                 if (prot & PROT_WRITE)
                                         mp->pr_mflags |= MA_WRITE;
                                 if (prot & PROT_EXEC)
                                         mp->pr_mflags |= MA_EXEC;
-                                if (SEGOP_GETTYPE(seg, saddr) & MAP_SHARED)
+                                if (segop_gettype(seg, saddr) & MAP_SHARED)
                                         mp->pr_mflags |= MA_SHARED;
-                                if (SEGOP_GETTYPE(seg, saddr) & MAP_NORESERVE)
+                                if (segop_gettype(seg, saddr) & MAP_NORESERVE)
                                         mp->pr_mflags |= MA_NORESERVE;
                                 if (seg->s_ops == &segspt_shmops ||
                                     (seg->s_ops == &segvn_ops &&
-                                    (SEGOP_GETVP(seg, saddr, &vp) != 0 ||
+                                    (segop_getvp(seg, saddr, &vp) != 0 ||
                                     vp == NULL)))
                                         mp->pr_mflags |= MA_ANON;
                                 if (seg == brkseg)
                                         mp->pr_mflags |= MA_BREAK;
                                 else if (seg == stkseg)

@@ -4090,11 +4090,11 @@
                                  * Manufacture a filename for the "object" dir.
                                  */
                                 mp->pr_dev = PRNODEV;
                                 vattr.va_mask = AT_FSID|AT_NODEID;
                                 if (seg->s_ops == &segvn_ops &&
-                                    SEGOP_GETVP(seg, saddr, &vp) == 0 &&
+                                    segop_getvp(seg, saddr, &vp) == 0 &&
                                     vp != NULL && vp->v_type == VREG &&
                                     VOP_GETATTR(vp, &vattr, 0, CRED(),
                                     NULL) == 0) {
                                         mp->pr_dev = vattr.va_fsid;
                                         mp->pr_ino = vattr.va_nodeid;

@@ -4122,11 +4122,12 @@
 
                                 npages = ((uintptr_t)(naddr - saddr)) >>
                                     PAGESHIFT;
                                 parr = kmem_zalloc(npages, KM_SLEEP);
 
-                                SEGOP_INCORE(seg, saddr, naddr - saddr, parr);
+                                (void) segop_incore(seg, saddr, naddr - saddr,
+                                    parr);
 
                                 for (pagenum = 0; pagenum < npages; pagenum++) {
                                         if (parr[pagenum] & SEG_PAGE_INCORE)
                                                 mp->pr_rss++;
                                         if (parr[pagenum] & SEG_PAGE_ANON)

@@ -4237,25 +4238,25 @@
 
                                 mp = pr_iol_newbuf(iolhead, sizeof (*mp));
 
                                 mp->pr_vaddr = (caddr32_t)(uintptr_t)saddr;
                                 mp->pr_size = (size32_t)(naddr - saddr);
-                                mp->pr_offset = SEGOP_GETOFFSET(seg, saddr);
+                                mp->pr_offset = segop_getoffset(seg, saddr);
                                 mp->pr_mflags = 0;
                                 if (prot & PROT_READ)
                                         mp->pr_mflags |= MA_READ;
                                 if (prot & PROT_WRITE)
                                         mp->pr_mflags |= MA_WRITE;
                                 if (prot & PROT_EXEC)
                                         mp->pr_mflags |= MA_EXEC;
-                                if (SEGOP_GETTYPE(seg, saddr) & MAP_SHARED)
+                                if (segop_gettype(seg, saddr) & MAP_SHARED)
                                         mp->pr_mflags |= MA_SHARED;
-                                if (SEGOP_GETTYPE(seg, saddr) & MAP_NORESERVE)
+                                if (segop_gettype(seg, saddr) & MAP_NORESERVE)
                                         mp->pr_mflags |= MA_NORESERVE;
                                 if (seg->s_ops == &segspt_shmops ||
                                     (seg->s_ops == &segvn_ops &&
-                                    (SEGOP_GETVP(seg, saddr, &vp) != 0 ||
+                                    (segop_getvp(seg, saddr, &vp) != 0 ||
                                     vp == NULL)))
                                         mp->pr_mflags |= MA_ANON;
                                 if (seg == brkseg)
                                         mp->pr_mflags |= MA_BREAK;
                                 else if (seg == stkseg)

@@ -4274,11 +4275,11 @@
                                  * Manufacture a filename for the "object" dir.
                                  */
                                 mp->pr_dev = PRNODEV32;
                                 vattr.va_mask = AT_FSID|AT_NODEID;
                                 if (seg->s_ops == &segvn_ops &&
-                                    SEGOP_GETVP(seg, saddr, &vp) == 0 &&
+                                    segop_getvp(seg, saddr, &vp) == 0 &&
                                     vp != NULL && vp->v_type == VREG &&
                                     VOP_GETATTR(vp, &vattr, 0, CRED(),
                                     NULL) == 0) {
                                         (void) cmpldev(&mp->pr_dev,
                                             vattr.va_fsid);

@@ -4307,11 +4308,12 @@
 
                                 npages = ((uintptr_t)(naddr - saddr)) >>
                                     PAGESHIFT;
                                 parr = kmem_zalloc(npages, KM_SLEEP);
 
-                                SEGOP_INCORE(seg, saddr, naddr - saddr, parr);
+                                (void) segop_incore(seg, saddr, naddr - saddr,
+                                    parr);
 
                                 for (pagenum = 0; pagenum < npages; pagenum++) {
                                         if (parr[pagenum] & SEG_PAGE_INCORE)
                                                 mp->pr_rss++;
                                         if (parr[pagenum] & SEG_PAGE_ANON)