PowerScale: Výpisy jádra NFS z požadavku NFSv4 GETATTR s neplatným popisovačem souboru.
Summary: Ve vzácných případech proces NFS (Network File System) nepřetržitě vypisuje jádra na uzlech kvůli požadavku NFSv4 GETATTR s neplatným popisovačem souboru. Problém byl hlášen pouze při pracovním postupu klientů NFSv4 pomocí operačního systému Solaris. ...
Symptoms
Proces NFS neustále vypisuje a restartuje jádro na více uzlech PowerScale s následující trasou zásobníku:
2025-12-12T09:50:12.851358-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: [kern_sig.c:4043](pid 6400="nfs")(tid=103190) Stack trace:
2025-12-12T09:50:12.851392-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: Stack: --------------------------------------------------
2025-12-12T09:50:12.851397-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:Nfs4AttrGatherAttrs+0x516
2025-12-12T09:50:12.851401-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:$dtrace1150544965.Nfs4FillAttr+0x736
2025-12-12T09:50:12.851404-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:$dtrace1209865017.NfsProtoNfs4ProcGetattr+0x515
2025-12-12T09:50:12.851408-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:$dtrace1357219149.NfsProtoNfs4ProcCompound+0x18a2
2025-12-12T09:50:12.851412-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:$dtrace1895683854.NfsProtoNfs4Dispatch+0xa31
2025-12-12T09:50:12.851415-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:NfsExecContextCallback+0x61
2025-12-12T09:50:12.851419-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: /usr/likewise/lib/liblwsched.so.0:WorkSparkMain+0x4f
2025-12-12T09:50:12.851422-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: /usr/likewise/lib/liblwbase.so.0:SparkMain+0x142
2025-12-12T09:50:12.851426-08:00 <0.5> powerscale01-28(id28) /boot/kernel.amd64/kernel: --------------------------------------------------
2025-12-12T09:50:12.851429-08:00 <0.6> powerscale01-28(id28) /boot/kernel.amd64/kernel: pid 6400 (nfs), jid 0, uid 0: exited on signal 11 from pid 0 (unknown) (core dumped)
OR
2023-03-01T09:18:00.403811+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: [kern_sig.c:4026](pid 71661="nfs")(tid=102404) Stack trace:
2023-03-01T09:18:00.403856+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: Stack: --------------------------------------------------
2023-03-01T09:18:00.403868+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:Nfs4AttrGatherAttrs+0x50a
2023-03-01T09:18:00.403879+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:$dtrace1150544965.Nfs4FillAttr+0x700
2023-03-01T09:18:00.403889+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:$dtrace1209865017.NfsProtoNfs4ProcGetattr+0x5e7
2023-03-01T09:18:00.403900+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:$dtrace1357219149.NfsProtoNfs4ProcCompound+0x1721
2023-03-01T09:18:00.403911+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:$dtrace1895683854.NfsProtoNfs4Dispatch+0x402
2023-03-01T09:18:00.403921+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: /usr/likewise/lib/lw-svcm/nfs.so:$dtrace2038417139.NfsProtoNfs4CallDispatch+0xd0
2023-03-01T09:18:00.403932+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: /usr/likewise/lib/liblwbase.so.0:SparkMain+0x141
2023-03-01T09:18:00.403943+01:00 <0.5> powerscale01-5(id6) /boot/kernel.amd64/kernel: --------------------------------------------------
2023-03-01T09:18:00.403953+01:00 <0.6> powerscale01-5(id6) /boot/kernel.amd64/kernel: pid 71661 (nfs), uid 0: exited on signal 11 from pid 0 (unknown) (core dumped)
Cause
K tomuto problému dochází, když NFSv4 klient pošle NFSv4 GETATTR s nulovým nebo neplatným popisovačem souboru.
To způsobí, že proces NFS během sekundy vypíše a restartuje jádro uzlu PowerScale, který zpracovává kořenový popisovač souboru GETATTRAle pExecContext > pExport není NULL.
K dnešnímu dni se všechny zprávy v této oblasti týkaly Solarisu NFSv4 Workflow klienta. Technický tým PowerScale však může problém replikovat i pomocí jiných operačních systémů UNIX nebo Linux. Z důkazů rovněž vyplývá, že klienti systému Solaris používající autos nebo automount může být náchylnější k způsobování problémů.
K vyřešení problému byla vytvořena nová závada: PSCLDF-6198: Invalid Pointer pGattrCtx->pFilePosixInfo causes a core dump.
Resolution
Trvalé řešení:
Proveďte upgrade na verzi OneFS, která obsahuje opravu. Technický tým PowerScale pracuje na opravě tohoto problému. Přesný čas vydání není stanoven.
Řešení:
Dokud nebude použito trvalé řešení, lze ke zmírnění dopadu použít následující alternativní řešení:
- Identifikujte
NFSv4klientů, kteří způsobují výpis jádra NFS.
V případě potřeby může podpora identifikovat IP adresu klienta viníka prostřednictvím automaticky generovaných výpisů paměti jádra, které se nacházejí v /var/crash na dotčených uzlech. Nevytvářejte výpis jádra ručně. Podpora jazyka C vyžaduje vygenerovaný výpis jádra z problému nalezeného v /var/crash na dotčených uzlech. Podpora může vytvořit eskalaci konzultace, pokud je potřeba pomoc s identifikací klientů způsobujících problém.
- Zakažte
autofs/automountna klientech Solaris, protože podpora Dell Technologies se domnívá, že to souvisí s problémem. Místo toho ručně připojte exporty na klientech Solaris konfigurací/etc/vfstabna klientovi. - Jakmile podpora společnosti Dell Technologies identifikuje klienty způsobující problém, může zmírnit dopad na ostatní počítače NFS pozastavením 1–2 uzlů ve fondu NFS. Zákazníci pak mohou nakonfigurovat problematické klienty Solaris tak, aby se připojovali přímo k IP adresám (namísto použití názvu zóny SmartConnect nebo FQDN) zavěšených uzlů. V případě potřeby vám s tímto postupem může pomoci podpora společnosti Dell Technologies. Když je uzel pozastaven, problémoví klienti Solaris se nyní mohou připojit k uzlům podle IP adresy, zatímco všechna NOVÁ připojení k plně kvalifikovanému názvu domény ze všech ostatních klientů NFS se nyní nemohou připojit k tomuto uzlu. Budou však ovlivněna všechna již existující připojení k uzlu. Opět platí, že cílem je snížit dopad zde, dokud nebude aplikována oprava, v tom smyslu, že pouze jeden nebo dva démoni NFS uzlu nyní vypisují jádro.
Postup pozastavení uzlu ze síťového fondu SmartConnect:
Použití uzlu 26 jako příkladu:
# isi network pools sc-suspend-nodes groupnet0.NFS_Subnet.NFS_Pool 26 ***where 26 is lnn #26 ####
Tento postup opakujte pro každý dotčený fond.
Pokračování:
# isi network pools sc-resume-nodes groupnet0.NFS_Subnet.NFS_Pool 26 ***where 26 is lnn #26 ####
Tento postup opakujte pro každý dotčený fond.