14 commentaires
ça sent le bug de driver storage ou une barrette de ram foireuse. poste le panic log complet qui sort de kdump ou de ton serial console
voila le bout de log que j ai pu recup via netconsole
BUG: unable to handle page fault for address: ffff888123456788
RIP: 0010:__free_pages_ok+0x12/0x250
Call Trace:
free_unref_page_prepare+0x120/0x1a0
free_unref_page+0x15/0x70
__put_page+0x32/0x40
pagecache_get_page+0x120/0x230
desactive thp direct. postgresql et thp ça a toujours fait des trucs bizarres surtout sur les operations de compactage memoire en background
echo never > /sys/kernel/mm/transparent_hugepage/enabled
ton souci vient peut etre de la fragmentation memoire. si le kernel n arrive plus a allouer de pages contigues pour le page cache a cause des huge pages statiques ça peut paniquer si un driver essaie de faire du dma mal foutu
lance un cat /proc/buddyinfo pour voir l etat de tes zones memoire
ouais ta memoire est completement fragmentee. le kernel ne peut plus sortir une page de plus de 4kb. ton driver de raid ou de reseau doit paniquer quand il demande un buffer contigu pour ses requetes
augmente le min_free_kbytes pour forcer le kernel a garder de la marge
sysctl -w vm.min_free_kbytes=4194304
et passe ton vm.zone_reclaim_mode a 0 si c est pas deja fait pour eviter que le kernel s excite a essayer de bouger des pages entre les nodes numa en plein milieu d une ecriture disque
Laisser une réponse
Vous devez être connecté pour poster un message !
on a un souci tres grave sur un cluster postgresql de prod. le kernel panic de facon aleatoire environ une fois par jour. la trace pointe vers du memory management
on est sur ubuntu 22.04 kernel 5.15. postgresql utilise des huge pages. quand le panic arrive on perd les dernieres minutes d ecriture meme avec le wal sur disque