Re: Problema kernel panic durante shutdown o reboot con raid
Buongiorno Francesco,
Il 02/04/25 19:21, Francesco Potortì ha scritto:
Qualche idea di seguito. Le idee non vanno eseguite nell'ordine, fai prima quella che ti ispira di più
# Idea 1
Il sospetto è che questo avvenga durante un check automatico. Quindi disabilita i check prima di fermare la macchina:
# /usr/share/mdadm/checkarray -sa
# /usr/share/mdadm/checkarray -x --all
# /usr/share/mdadm/checkarray -sa
# halt
Il primo di dà lo stato attaule dei check. Il secondo dovrebbe cancellare un eventuale check in programma. Il terzo dovrebbe darti la certezza che non ne stanno girando al momento. Uso il condizionale perché penso di aver capito come funziona la coda di comandi di mdadm, ma non ne ho completa certezza.
Se non cambia nulla, forse il problema non è quello.
Ho eseguito un controllo del sistema e non sono riuscito a trovare lo
script checkarray richiamato da un service di
systemd/timer/script/cronjob. Ho comunque fatto una prova, lanciando il
checkarray praticamente avvia un check sui device mdadm (una specie di
resync) ma riavviando durante il check non ricevo kernel panic. Invece
subito dopo l'installazione fresca di una debian 12.10 senza nessun
device md in sync/check (ho controllato prima di avviare lo shutdown) e
il kernel panic è avvenuto.
# Idea 2
Siccome con la testing è peggio, proverei ad andare sia aventi che indietro. Installa una unstable. Nonostante il nome, generalmente funziona. E comunque stai facendo una prova, non può succedfere niente di grave. Poi prova con la oldstable. E con la oldoldstable.
Dopo queste prove, se cambia qualcosa, bisognerebbe capire se il problema è nel pacchetto linux-image o nel pacchetto mdadm.
Ora le prove le sto facendo sulla Z890-F e usare la
oldastable/oldoldstable avrei problemi con driver. Ora sono con una
stable 12.10 + kernel backports
# Idea 3
Ora mdadm non usa cron, ma systemd. Questo probabilmente non è vero con la oldstable, e molto probabilmente non è vero con la oldoldstable.
Nel mio sistema vedo questi:
mdadm: /usr/lib/systemd/system/mdadm-grow-continue@.service
mdadm: /usr/lib/systemd/system/mdadm-last-resort@.service
mdadm: /usr/lib/systemd/system/mdadm-last-resort@.timer
mdadm: /usr/lib/systemd/system/mdcheck_continue.service
mdadm: /usr/lib/systemd/system/mdcheck_continue.timer
mdadm: /usr/lib/systemd/system/mdcheck_start.service
mdadm: /usr/lib/systemd/system/mdcheck_start.timer
mdadm: /usr/lib/systemd/system/mdmon@.service
mdadm: /usr/lib/systemd/system/mdmonitor-oneshot.service
mdadm: /usr/lib/systemd/system/mdmonitor-oneshot.timer
mdadm: /usr/lib/systemd/system/mdmonitor.service
mdadm: /usr/lib/systemd/system-shutdown/mdadm.shutdown
Cerca di capire cosa fanno. In particolare, l'ultimo contiene un comando che viene dato allo shutdown. Magari prova a disabilitarlo.
Ho anche io tutti gli stessi unit/timer (ps: con quale comando hai
ottenuto questa lista?). Li ho visionati uno per uno, e ho notato che i
check sono avviati durante ore notturne. mdadm.shutdown fa qualcosa con
l'initramfs che non ho capito bene.
Ho fatto un'altra prova. Ho reinstallato la 12.10 cancellando la
partition table dei device per rootfs/swap/EFI (pensando che potesse
esserci qualche problema con i device creati con fedora) ma nulla. Primo
riavvio primo kernel panic.
A questo punto mi viene il dubbio che ci sia una qualche incompatibilità
con i device M.2 (NVME & SATA) che si manifestano quando sono in RAID.
Non so che pensare.
Tornando agli esperimenti con la testing (13) ho lanciato qualche repair
su qualche device MD e se provo a dare il reboot, systemd mi blocca
dicendomi che l'operazione è in corso (ci sta un lock) e che per forzare
lo shutdown devo lanciare un altro comando. Quindi per i problemi
relativi ai panic di testing a questo punto escluderei che accadano
durante un resync.
NOTA: tempo fa (2022) se non ricordo male avevo un problema simile con
un'AlmaLinux 9.1, ovvero al reboot/shutdown della macchina rimaneva
appesa con un messaggio che diceva:
"Not all MD devices stopped, 1 left
Stopping MD Devices
Stoppind /dev/md125(9:125)"
Feci notare il problema a quelli di Almalinux e altri riportavano il
problema. Se non ricordo male avevo aperto un bug su bugzilla di rhel
(che non riesco a trovare).
Cmq con la release della 9.2 il bug era sparito. Forse è lo stesso bug
ma con il kernel 6.1/6.12 viene gestito in maniera diversa generando un
panic? Non so che pensare.
Grazie comunque per il tuo aiuto.
Saluti, Alessandro.
Reply to: