Fix powerpc and LINT builds

Fix build errors introduced by r367417 and r367390:

- Guard label reached only by powerpc64
- Guard vm_reserv_level_iffullpop call, that is not defined on powerpc
  variants that don't support superpages
- Add missing hwpmc file, for when hwpmc is built into kernel
This commit is contained in:
Leandro Lupori 2020-11-06 18:50:00 +00:00
parent 3acf4d2374
commit 8b2133d4e1
3 changed files with 5 additions and 1 deletions

View File

@ -26,6 +26,7 @@ dev/agp/agp_apple.c optional agp powermac
dev/fb/fb.c optional sc
dev/hwpmc/hwpmc_e500.c optional hwpmc
dev/hwpmc/hwpmc_mpc7xxx.c optional hwpmc
dev/hwpmc/hwpmc_power8.c optional hwpmc
dev/hwpmc/hwpmc_powerpc.c optional hwpmc
dev/hwpmc/hwpmc_ppc970.c optional hwpmc
dev/iicbus/ad7417.c optional ad7417 powermac

View File

@ -1760,6 +1760,7 @@ moea64_enter(pmap_t pmap, vm_offset_t va, vm_page_t m,
moea64_syncicache(pmap, va, pa, PAGE_SIZE);
}
#if VM_NRESERVLEVEL > 0
/*
* Try to promote pages.
*
@ -1773,6 +1774,7 @@ moea64_enter(pmap_t pmap, vm_offset_t va, vm_page_t m,
(m->flags & PG_FICTITIOUS) == 0 &&
vm_reserv_level_iffullpop(m) == 0)
moea64_sp_promote(pmap, va, m);
#endif
return (KERN_SUCCESS);
}

View File

@ -211,6 +211,8 @@ TLBIE(uint64_t vpn, uint64_t oldptehi)
*/
__asm __volatile("li 0, 0 \n tlbie %0, 0" :: "r"(vpn) : "r0", "memory");
__asm __volatile("eieio; tlbsync; ptesync" ::: "memory");
done:
#else
vpn_hi = (uint32_t)(vpn >> 32);
vpn_lo = (uint32_t)vpn;
@ -235,7 +237,6 @@ TLBIE(uint64_t vpn, uint64_t oldptehi)
intr_restore(intr);
#endif
done:
/* No barriers or special ops -- taken care of by ptesync above */
if (need_lock)
tlbie_lock = 0;