Lines Matching refs:raddr
832 caddr_t raddr; /* rounded down addr */ in as_fault() local
880 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_fault()
882 (size_t)raddr; in as_fault()
891 if (as == &kas && segkmap && segkmap->s_base <= raddr && in as_fault()
892 raddr + size < segkmap->s_base + segkmap->s_size) { in as_fault()
898 seg = as_segat(as, raddr); in as_fault()
909 addrsav = raddr; in as_fault()
912 for (; rsize != 0; rsize -= ssize, raddr += ssize) { in as_fault()
913 if (raddr >= seg->s_base + seg->s_size) { in as_fault()
915 if (seg == NULL || raddr != seg->s_base) { in as_fault()
920 if (raddr + rsize > seg->s_base + seg->s_size) in as_fault()
921 ssize = seg->s_base + seg->s_size - raddr; in as_fault()
925 res = SEGOP_FAULT(hat, seg, raddr, ssize, type, rw); in as_fault()
937 for (seg = segsav; addrsav < raddr; addrsav += ssize) { in as_fault()
946 if (raddr > seg->s_base + seg->s_size) in as_fault()
949 ssize = raddr - addrsav; in as_fault()
985 caddr_t raddr; /* rounded down addr */ in as_faulta() local
999 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_faulta()
1001 (size_t)raddr; in as_faulta()
1004 seg = as_segat(as, raddr); in as_faulta()
1012 for (; rsize != 0; rsize -= PAGESIZE, raddr += PAGESIZE) { in as_faulta()
1013 if (raddr >= seg->s_base + seg->s_size) { in as_faulta()
1015 if (seg == NULL || raddr != seg->s_base) { in as_faulta()
1020 res = SEGOP_FAULTA(seg, raddr); in as_faulta()
1056 caddr_t raddr; /* rounded down addr */ in as_setprot() local
1063 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_setprot()
1065 (size_t)raddr; in as_setprot()
1067 if (raddr + rsize < raddr) /* check for wraparound */ in as_setprot()
1070 saveraddr = raddr; in as_setprot()
1089 as_clearwatchprot(as, raddr, rsize); in as_setprot()
1090 seg = as_segat(as, raddr); in as_setprot()
1097 for (; rsize != 0; rsize -= ssize, raddr += ssize) { in as_setprot()
1098 if (raddr >= seg->s_base + seg->s_size) { in as_setprot()
1100 if (seg == NULL || raddr != seg->s_base) { in as_setprot()
1105 if ((raddr + rsize) > (seg->s_base + seg->s_size)) in as_setprot()
1106 ssize = seg->s_base + seg->s_size - raddr; in as_setprot()
1110 error = SEGOP_SETPROT(seg, raddr, ssize, prot); in as_setprot()
1218 caddr_t raddr; /* rounded down addr */ in as_checkprot() local
1222 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_checkprot()
1224 (size_t)raddr; in as_checkprot()
1226 if (raddr + rsize < raddr) /* check for wraparound */ in as_checkprot()
1240 as_clearwatchprot(as, raddr, rsize); in as_checkprot()
1241 seg = as_segat(as, raddr); in as_checkprot()
1248 for (; rsize != 0; rsize -= ssize, raddr += ssize) { in as_checkprot()
1249 if (raddr >= seg->s_base + seg->s_size) { in as_checkprot()
1251 if (seg == NULL || raddr != seg->s_base) { in as_checkprot()
1256 if ((raddr + rsize) > (seg->s_base + seg->s_size)) in as_checkprot()
1257 ssize = seg->s_base + seg->s_size - raddr; in as_checkprot()
1261 error = SEGOP_CHECKPROT(seg, raddr, ssize, prot); in as_checkprot()
1275 caddr_t raddr, eaddr; in as_unmap() local
1280 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_unmap()
1293 as_clearwatchprot(as, raddr, eaddr - raddr); in as_unmap()
1295 for (seg = as_findseg(as, raddr, 0); seg != NULL; seg = seg_next) { in as_unmap()
1302 ASSERT(raddr < eaddr); in as_unmap()
1304 if (raddr < seg->s_base) in as_unmap()
1305 raddr = seg->s_base; /* raddr was in a gap */ in as_unmap()
1308 ssize = seg->s_base + seg->s_size - raddr; in as_unmap()
1310 ssize = eaddr - raddr; in as_unmap()
1329 err = SEGOP_UNMAP(seg, raddr, ssize); in as_unmap()
1407 raddr += ssize; in as_unmap()
1662 caddr_t raddr; /* rounded down addr */ in as_map_locked() local
1676 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_map_locked()
1678 (size_t)raddr; in as_map_locked()
1683 if ((raddr + rsize < raddr) || (as->a_size > (ULONG_MAX - size))) { in as_map_locked()
1712 error = as_map_vnsegs(as, raddr, rsize, crfp, &crargs, in as_map_locked()
1725 error = as_map_ansegs(as, raddr, rsize, crfp, &crargs, in as_map_locked()
2155 caddr_t raddr; /* rounded down addr */ in as_incore() local
2161 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_incore()
2163 (size_t)raddr; in as_incore()
2165 if (raddr + rsize < raddr) /* check for wraparound */ in as_incore()
2169 seg = as_segat(as, raddr); in as_incore()
2175 for (; rsize != 0; rsize -= ssize, raddr += ssize) { in as_incore()
2176 if (raddr >= seg->s_base + seg->s_size) { in as_incore()
2178 if (seg == NULL || raddr != seg->s_base) { in as_incore()
2183 if ((raddr + rsize) > (seg->s_base + seg->s_size)) in as_incore()
2184 ssize = seg->s_base + seg->s_size - raddr; in as_incore()
2187 *sizep += isize = SEGOP_INCORE(seg, raddr, ssize, vec); in as_incore()
2221 caddr_t raddr, size_t rsize) in as_unlockerr() argument
2223 struct seg *seg = as_segat(as, raddr); in as_unlockerr()
2227 if (raddr >= seg->s_base + seg->s_size) in as_unlockerr()
2230 if ((raddr + rsize) > (seg->s_base + seg->s_size)) in as_unlockerr()
2231 ssize = seg->s_base + seg->s_size - raddr; in as_unlockerr()
2235 as_segunlock(seg, raddr, attr, mlock_map, 0, btopr(ssize)); in as_unlockerr()
2238 raddr += ssize; in as_unlockerr()
2252 caddr_t raddr; /* rounded down addr */ in as_ctl() local
2298 raddr = (caddr_t)((uintptr_t)seg->s_base & in as_ctl()
2301 PAGEOFFSET) & PAGEMASK) - (uintptr_t)raddr; in as_ctl()
2326 raddr = (caddr_t)((uintptr_t)seg->s_base & in as_ctl()
2329 as_segunlock(seg, raddr, attr, mlock_map, in as_ctl()
2360 initraddr = raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_ctl()
2362 (size_t)raddr; in as_ctl()
2364 if (raddr + rsize < raddr) { /* check for wraparound */ in as_ctl()
2372 if ((seg = as_segat(as, raddr)) == NULL) { in as_ctl()
2397 if (raddr >= seg->s_base + seg->s_size) { in as_ctl()
2399 if (seg == NULL || raddr != seg->s_base) { in as_ctl()
2410 if ((raddr + rsize) > (seg->s_base + seg->s_size)) in as_ctl()
2411 ssize = seg->s_base + seg->s_size - raddr; in as_ctl()
2425 if (error = SEGOP_SYNC(seg, raddr, ssize, in as_ctl()
2436 if (error = SEGOP_LOCKOP(seg, raddr, ssize, in as_ctl()
2451 (void) SEGOP_LOCKOP(seg, raddr, ssize, attr, func, in as_ctl()
2459 error = SEGOP_ADVISE(seg, raddr, ssize, (uint_t)arg); in as_ctl()
2479 seg = as_segat(as, raddr); in as_ctl()
2498 error = SEGOP_INHERIT(seg, raddr, ssize, in as_ctl()
2516 raddr += ssize; in as_ctl()
2731 caddr_t raddr; in as_pagelock() local
2739 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_pagelock()
2741 (size_t)raddr; in as_pagelock()
2749 seg = as_segat(as, raddr); in as_pagelock()
2754 ASSERT(raddr >= seg->s_base && raddr < seg->s_base + seg->s_size); in as_pagelock()
2755 if (raddr + rsize > seg->s_base + seg->s_size) { in as_pagelock()
2756 return (as_pagelock_segs(as, seg, ppp, raddr, rsize, rw)); in as_pagelock()
2758 if (raddr + rsize <= raddr) { in as_pagelock()
2764 "seg_lock_1_start: raddr %p rsize %ld", raddr, rsize); in as_pagelock()
2769 err = SEGOP_PAGELOCK(seg, raddr, rsize, ppp, L_PAGELOCK, rw); in as_pagelock()
2851 caddr_t raddr; in as_pageunlock() local
2865 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_pageunlock()
2867 (size_t)raddr; in as_pageunlock()
2870 seg = as_segat(as, raddr); in as_pageunlock()
2874 "seg_unlock_start: raddr %p rsize %ld", raddr, rsize); in as_pageunlock()
2876 ASSERT(raddr >= seg->s_base && raddr < seg->s_base + seg->s_size); in as_pageunlock()
2877 if (raddr + rsize <= seg->s_base + seg->s_size) { in as_pageunlock()
2878 SEGOP_PAGELOCK(seg, raddr, rsize, &pp, L_PAGEUNLOCK, rw); in as_pageunlock()
2880 as_pageunlock_segs(as, seg, raddr, rsize, pp, rw); in as_pageunlock()
2893 caddr_t raddr; /* rounded down addr */ in as_setpagesize() local
2903 raddr = addr; in as_setpagesize()
2906 if (raddr + rsize < raddr) /* check for wraparound */ in as_setpagesize()
2910 as_clearwatchprot(as, raddr, rsize); in as_setpagesize()
2911 seg = as_segat(as, raddr); in as_setpagesize()
2918 for (; rsize != 0; rsize -= ssize, raddr += ssize) { in as_setpagesize()
2919 if (raddr >= seg->s_base + seg->s_size) { in as_setpagesize()
2921 if (seg == NULL || raddr != seg->s_base) { in as_setpagesize()
2926 if ((raddr + rsize) > (seg->s_base + seg->s_size)) { in as_setpagesize()
2927 ssize = seg->s_base + seg->s_size - raddr; in as_setpagesize()
2933 error = SEGOP_SETPAGESIZE(seg, raddr, ssize, szc); in as_setpagesize()
3016 as_iset3_default_lpsize(struct as *as, caddr_t raddr, size_t rsize, uint_t szc, in as_iset3_default_lpsize() argument
3025 seg = as_segat(as, raddr); in as_iset3_default_lpsize()
3030 for (; rsize != 0; rsize -= ssize, raddr += ssize) { in as_iset3_default_lpsize()
3031 if (raddr >= seg->s_base + seg->s_size) { in as_iset3_default_lpsize()
3033 if (seg == NULL || raddr != seg->s_base) { in as_iset3_default_lpsize()
3037 if ((raddr + rsize) > (seg->s_base + seg->s_size)) { in as_iset3_default_lpsize()
3038 ssize = seg->s_base + seg->s_size - raddr; in as_iset3_default_lpsize()
3044 error = SEGOP_SETPAGESIZE(seg, raddr, ssize, szc); in as_iset3_default_lpsize()
3048 if ((SEGOP_GETTYPE(seg, raddr) & MAP_SHARED) && in as_iset3_default_lpsize()
3049 (SEGOP_GETVP(seg, raddr, &vp) != 0 || in as_iset3_default_lpsize()
3102 as_iset1_default_lpsize(struct as *as, caddr_t raddr, size_t rsize, uint_t szc, in as_iset1_default_lpsize() argument
3107 caddr_t setaddr = raddr; in as_iset1_default_lpsize()
3114 seg = as_segat(as, raddr); in as_iset1_default_lpsize()
3124 for (; rsize != 0; rsize -= ssize, raddr += ssize, setsize += ssize) { in as_iset1_default_lpsize()
3125 if (raddr >= seg->s_base + seg->s_size) { in as_iset1_default_lpsize()
3127 if (seg == NULL || raddr != seg->s_base) { in as_iset1_default_lpsize()
3139 setaddr = raddr; in as_iset1_default_lpsize()
3144 if ((raddr + rsize) > (seg->s_base + seg->s_size)) { in as_iset1_default_lpsize()
3145 ssize = seg->s_base + seg->s_size - raddr; in as_iset1_default_lpsize()
3259 caddr_t raddr; in as_set_default_lpsize() local
3276 raddr = (caddr_t)((uintptr_t)addr & (uintptr_t)PAGEMASK); in as_set_default_lpsize()
3278 (size_t)raddr; in as_set_default_lpsize()
3280 if (raddr + rsize < raddr) { /* check for wraparound */ in as_set_default_lpsize()
3284 as_clearwatchprot(as, raddr, rsize); in as_set_default_lpsize()
3285 seg = as_segat(as, raddr); in as_set_default_lpsize()
3299 setaddr = raddr; in as_set_default_lpsize()
3302 for (; rsize != 0; rsize -= ssize, raddr += ssize, setsize += ssize) { in as_set_default_lpsize()
3303 if (raddr >= (seg->s_base + seg->s_size)) { in as_set_default_lpsize()
3305 if (seg == NULL || raddr != seg->s_base) { in as_set_default_lpsize()
3310 stype = SEGOP_GETTYPE(seg, raddr); in as_set_default_lpsize()
3327 setaddr = raddr; in as_set_default_lpsize()
3332 setaddr = raddr; in as_set_default_lpsize()
3347 if ((raddr + rsize) > (seg->s_base + seg->s_size)) { in as_set_default_lpsize()
3348 ssize = seg->s_base + seg->s_size - raddr; in as_set_default_lpsize()