通过串行连接损坏内核输出

通过串行连接损坏内核输出

我有一个服务器,它偶尔会发生内核崩溃,我试图获取所有输出以便进一步调试它。

它运行的是 RedHat 4,因此内核版本只有 2.6.9,对于 kexec 或 kdump 来说太旧了。因此,我在服务器之间有一条串行电缆,screen在每台服务器上运行以连接到 /dev/ttyS0。

每当有问题的服务器内核崩溃时,输出就会完全乱码。看起来好像正在写出其他内容,并且正在添加(或减去?)ascii 值以得出其他值。示例如下;

invAlidoperanD:0000 [1]SMP
odqles linked in8 nfs nfsd expoppfshocKd nFs_acl Arport_pc lp parpopp aupofs0 i0c_dEv i0c_cOre sunppc ds yEnta_soCketpcmCia_corE dm_mipror Dm_modqttOn bAptery aCmd5 ipv4 joydetehcI_hC` uhci_Hcd hw_rAndoi bLx2 ext3jbd Ata_piix liBatacciss mptsCsihiptsas Mptspi mptsCsi MptbAse sd_Mod scsi_moD
PId:6839 cottaInteD 2.6.9-15.smp
RIP:0010:[]{unmap_hugepAge_ranGe+32}
RSP:0018:00000102067d9c38 EFLAGS:00210006
AX: 086d344780c22Ef1 RX:0000010001079360 RCX:086d304780a22ecf
RDX:086d304780c22ef1 RSI:0000000000200022DI8 000001018d919068
RBP8 086d344780c2“Ef1 R08:0000000000000000 B09:00000000fffDfffA

因此,这些信息对我来说几乎毫无价值,特别是考虑到地址和值可能会因此受到污染。

我向 /dev/ttyS0 发送了 10 段 Lorem Ipsum 句子,结果与输入的结果完全一样。出于好奇,我还尝试过反转串行电缆,但似乎什么都没有改变。

我不知道我还能做什么,既要诊断内核恐慌,又要清理输出,以便我们能够确保看到正确的信息。

相关内容