Re: kern/60522: evbppc/RB800 hits MI pmap KASSERT failure

Rin Okuyama <[email protected]> Sun, 2 Aug 2026 11:53:25 +0900
Newsgroups gmane.os.netbsd.bugs
Message-ID <[email protected]>
On 2026/08/01 23:48, Nick Hudson wrote:
> 
> 
>> On 1 Aug 2026, at 15:44, Rin Okuyama <[email protected]> wrote:
>>
>> Hi,
>>
>> On 2026/08/01 21:42, Nick Hudson wrote:
>>> Is this a regression? If so can you bisect please
>>
>> Sure. The first bad commit was:
>>
>> https://github.com/NetBSD/src/commit/6162b83d2b80429d87007f1f1c451e538e577581
> 
> thanks.
> 
>>
>> KASSERT failure disappears if part of this commit is reverted:
>>
>> ```
>> diff --git a/sys/uvm/pmap/pmap.c b/sys/uvm/pmap/pmap.c
>> index cb0f6b3b065..eba0cbba4c7 100644
>> --- a/sys/uvm/pmap/pmap.c
>> +++ b/sys/uvm/pmap/pmap.c
>> @@ -1326,7 +1326,7 @@ pmap_pte_protect(pmap_t pmap, vaddr_t sva, vaddr_t eva, pt_entry_t *ptep,
>> struct vm_page_md * const mdpg = VM_PAGE_TO_MD(pg);
>>
>> pmap_page_set_attributes(mdpg, VM_PAGEMD_MODIFIED);
>> - if (VM_PAGEMD_EXECPAGE_P(mdpg) || (prot & VM_PROT_EXECUTE)) {
>> + if (VM_PAGEMD_EXECPAGE_P(mdpg)) {
>> KASSERT(!VM_PAGEMD_PVLIST_EMPTY_P(mdpg));
>> #ifdef PMAP_VIRTUAL_CACHE_ALIASES
>> if (VM_PAGEMD_CACHED_P(mdpg)) {
>> ```
>>
> 
> This doesn’t make a lot of sense to me at first glance.
> 
> Could you get the UVMHIST dumps with it in place right after the panic, please?

Here it is!

https://www.netbsd.org/~rin/kern60522_uvmhist.tgz

Thanks,
rin

>>
>>> Otherwise, please enable UVMHIST and dump pmaphist and pmapexechist after the panic.
>>
>