This fixes panic like "Freeing UMA block at 0xc00000004b0ce000 with no associated page", reproduced when huge pages is not enabled and system starts using swap.
Solution provided by jhibbits.
 Differential  D23931  
[PowerPC64] fix uma_small_free panic Authored by alfredo on Mar 2 2020, 9:37 PM. Tags Referenced Files 
 
 
 
 
 
 
 
 Subscribers 
Details This fixes panic like "Freeing UMA block at 0xc00000004b0ce000 with no associated page", reproduced when huge pages is not enabled and system starts using swap. Solution provided by jhibbits. Force swap usage running several buildworld threads as well with stress util on powerpc64 QEMU VM. 
Diff Detail 
 Event TimelineComment Actions Given what I see in uma_small_alloc(), this change really should be unnecessary (uma_small_alloc() returns an identity-mapped page), but relying on that is obviously incorrect. The pmap_kextract() in here is the correct solution. 
 Comment Actions System was running under load with latest change for almost 13 hours. Everything seems good.  | ||||||||||||||||||||||||||||||||||