diff options
author | Robert Mustacchi <rm@fingolfin.org> | 2022-01-16 00:50:33 +0000 |
---|---|---|
committer | Robert Mustacchi <rm@fingolfin.org> | 2022-02-10 01:02:41 +0000 |
commit | 3df2e8b2fd61f45437285750d2880d6416a9200c (patch) | |
tree | ed534bbfad814fc67527b11322cf7d5417f3965f /usr/src/uts/common/vm | |
parent | 23c2e9a7f93c300498401f18385284ef6417fc2c (diff) | |
download | illumos-joyent-3df2e8b2fd61f45437285750d2880d6416a9200c.tar.gz |
14407 unix, genunix partial warning cleanup
Reviewed by: Andy Fiddaman <andy@omnios.org>
Reviewed by: Toomas Soome <tsoome@me.com>
Approved by: Rich Lowe <richlowe@richlowe.net>
Diffstat (limited to 'usr/src/uts/common/vm')
-rw-r--r-- | usr/src/uts/common/vm/page.h | 2 | ||||
-rw-r--r-- | usr/src/uts/common/vm/page_retire.c | 3 | ||||
-rw-r--r-- | usr/src/uts/common/vm/seg_kmem.c | 4 | ||||
-rw-r--r-- | usr/src/uts/common/vm/seg_map.c | 2 | ||||
-rw-r--r-- | usr/src/uts/common/vm/vm_as.c | 14 | ||||
-rw-r--r-- | usr/src/uts/common/vm/vm_page.c | 2 | ||||
-rw-r--r-- | usr/src/uts/common/vm/vm_pagelist.c | 48 |
7 files changed, 8 insertions, 67 deletions
diff --git a/usr/src/uts/common/vm/page.h b/usr/src/uts/common/vm/page.h index 5b98acd24f..b2f61429e9 100644 --- a/usr/src/uts/common/vm/page.h +++ b/usr/src/uts/common/vm/page.h @@ -635,7 +635,7 @@ typedef page_t devpage_t; extern pad_mutex_t ph_mutex[]; #define PAGE_HASH_MUTEX(x) \ - &(ph_mutex[((x) ^ ((x) >> PH_SHIFT_SIZE) + ((x) << 3)) & \ + &(ph_mutex[((x) ^ (((x) >> PH_SHIFT_SIZE) + ((x) << 3))) & \ (PH_TABLE_SIZE - 1)].pad_mutex) /* diff --git a/usr/src/uts/common/vm/page_retire.c b/usr/src/uts/common/vm/page_retire.c index f4e8d0737f..c3d9014e47 100644 --- a/usr/src/uts/common/vm/page_retire.c +++ b/usr/src/uts/common/vm/page_retire.c @@ -603,7 +603,7 @@ page_clear_transient_ue(page_t *pp) uint64_t pa; uint32_t pa_hi, pa_lo; on_trap_data_t otd; - int errors = 0; + int errors; int i; ASSERT(PAGE_EXCL(pp)); @@ -647,6 +647,7 @@ page_clear_transient_ue(page_t *pp) PR_MESSAGE(CE_WARN, 1, MSG_UE, pa); errors = 1; } else { + errors = 0; for (wb = 0xff; wb > 0; wb--) { for (i = 0; i < PAGESIZE; i++) { kaddr[i] = wb; diff --git a/usr/src/uts/common/vm/seg_kmem.c b/usr/src/uts/common/vm/seg_kmem.c index 540f2b251b..0bab4eb76d 100644 --- a/usr/src/uts/common/vm/seg_kmem.c +++ b/usr/src/uts/common/vm/seg_kmem.c @@ -163,14 +163,14 @@ static segkmem_lpcb_t segkmem_lpcb; * we allow for large page heap. */ size_t segkmem_kmemlp_max; -static uint_t segkmem_kmemlp_pcnt; +uint_t segkmem_kmemlp_pcnt; /* * Getting large pages for kernel heap could be problematic due to * physical memory fragmentation. That's why we allow to preallocate * "segkmem_kmemlp_min" bytes at boot time. */ -static size_t segkmem_kmemlp_min; +size_t segkmem_kmemlp_min; /* * Throttling is used to avoid expensive tries to allocate large pages diff --git a/usr/src/uts/common/vm/seg_map.c b/usr/src/uts/common/vm/seg_map.c index f08afe1066..6c41b04344 100644 --- a/usr/src/uts/common/vm/seg_map.c +++ b/usr/src/uts/common/vm/seg_map.c @@ -333,7 +333,7 @@ segmap_create(struct seg *seg, void *argsp) nfreelist = a->nfreelist; if (nfreelist == 0) nfreelist = max_ncpus; - else if (nfreelist < 0 || nfreelist > 4 * max_ncpus) { + else if (nfreelist > 4 * max_ncpus) { cmn_err(CE_WARN, "segmap_create: nfreelist out of range " "%d, using %d", nfreelist, max_ncpus); nfreelist = max_ncpus; diff --git a/usr/src/uts/common/vm/vm_as.c b/usr/src/uts/common/vm/vm_as.c index e4accd6fc8..e353692471 100644 --- a/usr/src/uts/common/vm/vm_as.c +++ b/usr/src/uts/common/vm/vm_as.c @@ -452,7 +452,6 @@ as_addseg(struct as *as, struct seg *newseg) addr = newseg->s_base; eaddr = addr + newseg->s_size; -again: seg = avl_find(&as->a_segtree, &addr, &where); @@ -473,19 +472,6 @@ again: */ if (base + seg->s_size > addr) { if (addr >= base || eaddr > base) { -#ifdef __sparc - extern struct seg_ops segnf_ops; - - /* - * no-fault segs must disappear if overlaid. - * XXX need new segment type so - * we don't have to check s_ops - */ - if (seg->s_ops == &segnf_ops) { - seg_unmap(seg); - goto again; - } -#endif return (-1); /* overlapping segment */ } } diff --git a/usr/src/uts/common/vm/vm_page.c b/usr/src/uts/common/vm/vm_page.c index d93400c343..131ee0ba1c 100644 --- a/usr/src/uts/common/vm/vm_page.c +++ b/usr/src/uts/common/vm/vm_page.c @@ -3654,7 +3654,7 @@ page_add_common(page_t **ppp, page_t *pp) void page_sub(page_t **ppp, page_t *pp) { - ASSERT((PP_ISFREE(pp)) ? 1 : + ASSERT(pp != NULL && (PP_ISFREE(pp)) ? 1 : (PAGE_EXCL(pp)) || (PAGE_SHARED(pp) && page_iolock_assert(pp))); if (*ppp == NULL || pp == NULL) { diff --git a/usr/src/uts/common/vm/vm_pagelist.c b/usr/src/uts/common/vm/vm_pagelist.c index 965d939ebc..394d9b97fb 100644 --- a/usr/src/uts/common/vm/vm_pagelist.c +++ b/usr/src/uts/common/vm/vm_pagelist.c @@ -1866,7 +1866,7 @@ mach_page_add(page_t **ppp, page_t *pp) void mach_page_sub(page_t **ppp, page_t *pp) { - ASSERT(PP_ISFREE(pp)); + ASSERT(pp != NULL && PP_ISFREE(pp)); if (*ppp == NULL || pp == NULL) panic("mach_page_sub"); @@ -2278,9 +2278,6 @@ page_freelist_coalesce(int mnode, uchar_t szc, uint_t color, uint_t ceq_mask, pgcnt_t cands = 0, szcpgcnt = page_get_pagecnt(szc); page_t *ret_pp; MEM_NODE_ITERATOR_DECL(it); -#if defined(__sparc) - pfn_t pfnum0, nlo, nhi; -#endif if (mpss_coalesce_disable) { ASSERT(szc < MMU_PAGE_SIZES); @@ -2380,40 +2377,8 @@ page_freelist_coalesce(int mnode, uchar_t szc, uint_t color, uint_t ceq_mask, idx0 = PNUM_TO_IDX(mnode, r, pfnum); ASSERT(idx0 < len); -#if defined(__sparc) - pfnum0 = pfnum; /* page corresponding to idx0 */ - nhi = 0; /* search kcage ranges */ -#endif - for (idx = idx0; wrap == 0 || (idx < idx0 && wrap < 2); ) { -#if defined(__sparc) - /* - * Find lowest intersection of kcage ranges and mnode. - * MTYPE_NORELOC means look in the cage, otherwise outside. - */ - if (nhi <= pfnum) { - if (kcage_next_range(mtype == MTYPE_NORELOC, pfnum, - (wrap == 0 ? hi : pfnum0), &nlo, &nhi)) - goto wrapit; - - /* jump to the next page in the range */ - if (pfnum < nlo) { - pfnum = P2ROUNDUP(nlo, szcpgcnt); - MEM_NODE_ITERATOR_INIT(pfnum, mnode, szc, &it); - idx = PNUM_TO_IDX(mnode, r, pfnum); - if (idx >= len || pfnum >= hi) - goto wrapit; - if ((PFN_2_COLOR(pfnum, szc, &it) ^ color) & - ceq_mask) - goto next; - if (interleaved_mnodes && - PFN_2_MEM_NODE(pfnum) != mnode) - goto next; - } - } -#endif - if (PAGE_COUNTERS(mnode, r, idx) != full) goto next; @@ -2432,14 +2397,7 @@ page_freelist_coalesce(int mnode, uchar_t szc, uint_t color, uint_t ceq_mask, PFN_2_COLOR(pfnum, szc, &it), mrange) = idx; page_freelist_unlock(mnode); rw_exit(&page_ctrs_rwlock[mnode]); -#if defined(__sparc) - if (PP_ISNORELOC(ret_pp)) { - pgcnt_t npgs; - npgs = page_get_pagecnt(ret_pp->p_szc); - kcage_freemem_sub(npgs); - } -#endif return (ret_pp); } } else { @@ -2467,14 +2425,10 @@ next: color_mask, &it); idx = PNUM_TO_IDX(mnode, r, pfnum); if (idx >= len || pfnum >= hi) { -wrapit: pfnum = lo; MEM_NODE_ITERATOR_INIT(pfnum, mnode, szc, &it); idx = PNUM_TO_IDX(mnode, r, pfnum); wrap++; -#if defined(__sparc) - nhi = 0; /* search kcage ranges */ -#endif } } |