Dell PERC H750 megacli 在 Ubuntu 20.04 LTS 中挂起

Dell PERC H750 megacli 在 Ubuntu 20.04 LTS 中挂起

当我尝试使用 megacli 命令时,它挂起了。在 dmesg 中获取以下内容

这是运行全新安装的 Ubuntu 20.04 LTS。我使用的是来自 https://hwraid.le-vert.net/ 的用户空间焦点二进制文件 PPA,我在 Ubuntu 上使用它已有十多年了。

该卡被报告为 18:00.0 RAID 总线控制器:Broadcom / LSI MegaRAID 12GSAS/PCIe Secure SAS39xx

我有两台这样的服务器,它们是全新的,所以这几乎肯定与硬件/驱动程序有关。

有人知道这里发生了什么事吗?或者有没有更合适的地方来报告此事?

Linux icarus 5.4.0-89-generic #100-Ubuntu SMP 星期五 9 月 24 日 14:50:10 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
[ 485.816909] 代码:错误的 RIP 值。
[485.816909] RSP:002b:00007fff81377078 EFLAGS:00000206 ORIG_RAX:0000000000000010
[485.816910] RAX:ffffffffffffffda RBX:00000000019394c0 RCX:00007f10c4ee150b
[485.816910] RDX:0000000001939d90 RSI:00000000c1944d01 RDI:0000000000000003
[485.816911]RBP:00007fff813770b0 R08:0000000001939d90 R09:00007f10c4fb6230
[485.816911] R10:0000000000401392 R11:0000000000000206 R12:00000000004028a0
[485.816911] R13:00007fff81377f30 R14:0000000000000000 R15:0000000000000000
[ 606.654843] 信息:任务 megacli.real:2164 被阻止超过 483 秒。
[606.654861]未受污染 5.4.0-89-通用#100-Ubuntu
[ 606.654873] “echo 0 > /proc/sys/kernel/hung_task_timeout_secs”禁用此消息。
[606.654889] megacli.real D 0 2164 2162 0x00000000
[ 606.654891] 呼叫追踪:
[606.654894] __计划+0x2e3/0x740
[606.654895]时间表+0x42/0xb0
[606.654898]megasas_issue_blocked_cmd+0x176/0x1b0 [megaraid_sas]
[ 606.654900] ?等待唤醒+0x80/0x80
[606.654902]megasas_mgmt_fw_ioctl+0x4b0/0x740 [megaraid_sas]
[606.654905]megasas_mgmt_ioctl_fw.isra.0+0x137/0x190 [megaraid_sas]
[606.654907]megasas_mgmt_ioctl+0x28/0x40 [megaraid_sas]
[606.654909] do_vfs_ioctl + 0x407/0x670
[606.654911]?do_user_addr_fault+0x216/0x450
[606.654912]ksys_ioctl+0x67/0x90
[606.654914] __x64_sys_ioctl+0x1a/0x20
[606.654915] do_syscall_64 + 0x57/0x190
[606.654916]entry_SYSCALL_64_after_hwframe+0x44/0xa9
[606.654917] RIP:0033:0x7fbf8cc5150b
[ 606.654919] 代码:错误的 RIP 值。
[606.654920] RSP:002b:00007ffd523d9bd8 EFLAGS:00000246 ORIG_RAX:0000000000000010
[606.654921] RAX:ffffffffffffffda RBX:00000000012da590 RCX:00007fbf8cc5150b
[606.654921] RDX:00000000012d4dd0 RSI:00000000c1944d01 RDI:0000000000000003
[606.654921]RBP:00007ffd523d9c10 R08:00000000012d4dd0 R09:000000000000007c
[606.654922] R10:00000000012bd010 R11:0000000000000246 R12:00000000004028a0
[606.654922] R13:00007ffd523da4a0 R14:0000000000000000 R15:0000000000000000
[606.654929] 信息:任务 megacli.real:3594 被阻止超过 483 秒。
[ 606.654945] 未受污染 5.4.0-89-通用#100-Ubuntu
[ 606.654957] “echo 0 > /proc/sys/kernel/hung_task_timeout_secs”禁用此消息。
[606.654973] megacli.real D 0 3594 3593 0x00000004
[ 606.654974] 呼叫追踪:
[ 606.654975 ] __计划+0x2e3/0x740
[606.654976]时间表+0x42/0xb0
[606.654978]megasas_issue_blocked_cmd+0x176/0x1b0 [megaraid_sas]
[ 606.654979] ?等待唤醒+0x80/0x80
[606.654981]megasas_mgmt_fw_ioctl+0x4b0/0x740 [megaraid_sas]
[606.654983]megasas_mgmt_ioctl_fw.isra.0+0x137/0x190 [megaraid_sas]
[606.654985]megasas_mgmt_ioctl+0x28/0x40 [megaraid_sas]
[ 606.654986] do_vfs_ioctl + 0x407/0x670
[606.654987]?do_user_addr_fault+0x216/0x450
[606.654988]ksys_ioctl+0x67/0x90
[606.654990] __x64_sys_ioctl+0x1a/0x20
[606.654991] do_syscall_64 + 0x57/0x190
[606.654991]entry_SYSCALL_64_after_hwframe+0x44/0xa9
[606.654992] RIP:0033:0x7fbbf145150b
[ 606.654993] 代码:错误的 RIP 值。
[606.654994] RSP:002b:00007ffd6b0ddab8 EFLAGS:00000206 ORIG_RAX:0000000000000010
[606.654994] RAX:ffffffffffffffda RBX:00000000011ab4c0 RCX:00007fbbf145150b
[606.654995] RDX:00000000011abd90 RSI:00000000c1944d01 RDI:0000000000000003
[606.654995]RBP:00007ffd6b0ddaf0 R08:00000000011abd90 R09:00007fbbf1526230
[606.654995] R10:0000000000401392 R11:0000000000000206 R12:00000000004028a0
[606.654996] R13:00007ffd6b0de970 R14:0000000000000000 R15:0000000000000000

然后控制器重置。

[721.731796] megaraid_sas 0000:18:00.0: megasas_disable_intr_fusion 被称为 outbound_intr_mask:0x40000009
[ 721.731855] megaraid_sas 0000:18:00.0: FW 处于故障状态故障代码:0x10000 子代码:0x0 func:megasas_wait_for_outstanding_fusion
[ 721.731954] megaraid_sas 0000:18:00.0:正在重置融合适配器 scsi0。
[721.732587] megaraid_sas 0000:18:00.0:未完成的快速路径 IO:0
[ 732.492151] megaraid_sas 0000:18:00.0:等待 FW 进入就绪状态
[ 750.468711] megaraid_sas 0000:18:00.0:FW 现已处于就绪状态
[ 750.468713] megaraid_sas 0000:18:00.0:FW 现已处于就绪状态
[ 750.469351] megaraid_sas 0000:18:00.0:当前固件支持最大命令数:5101 LDIO 阈值:0
[ 750.469353] megaraid_sas 0000:18:00.0:性能模式:延迟
[ 750.469353] megaraid_sas 0000:18:00.0: FW 支持同步缓存 :是
[ 750.469356] megaraid_sas 0000:18:00.0: megasas_disable_intr_fusion 被称为 outbound_intr_mask:0x40000009
[ 751.084723] megaraid_sas 0000:18:00.0: FW 支持原子描述符:是
[ 751.224730] megaraid_sas 0000:18:00.0: FW 提供支持MaxExtLDs: 1 max_lds: 240
[751.224734] megaraid_sas 0000:18:00.0:控制器类型:MR(8192MB)
[751.224737] megaraid_sas 0000:18:00.0: 在线控制器重置 (OCR):已启用
[751.224739] megaraid_sas 0000:18:00.0:安全 JBOD 支持:否
[751.224741] megaraid_sas 0000:18:00.0:NVMe 直通支持:是
[ 751.224743] megaraid_sas 0000:18:00.0:FW 提供的 TM TaskAbort/Reset 超时:6 秒/60 秒
[ 751.224745] megaraid_sas 0000:18:00.0: JBOD 序列图支持:是
[ 751.224747] megaraid_sas 0000:18:00.0: PCI 通道裕度支持:是
[ 779.253522] megaraid_sas 0000:18:00.0: megasas_get_ld_map_info DCMD 超时,RAID 映射已禁用
[ 789.945799] megaraid_sas 0000:18:00.0:等待 FW 进入就绪状态
[ 806.802227] megaraid_sas 0000:18:00.0:FW 当前处于就绪状态
[ 806.802231] megaraid_sas 0000:18:00.0:FW 当前处于就绪状态
[ 806.802979] megaraid_sas 0000:18:00.0:当前固件支持最大命令数:5101 LDIO 阈值:0
[806.802980] megaraid_sas 0000:18:00.0: 性能模式:延迟
[806.802981] megaraid_sas 0000:18:00.0: FW 支持同步缓存:是
[806.802983] megaraid_sas 0000:18:00.0: megasas_disable_intr_fusion 被调用 outbound_intr_mask:0x40000009
[ 807.502249] megaraid_sas 0000:18:00.0: FW 支持原子描述符:是
[ 807.586262] megaraid_sas 0000:18:00.0: FW 提供支持MaxExtLDs: 1 max_lds: 240
[807.586266] megaraid_sas 0000:18:00.0:控制器类型:MR(8192MB)
[807.586268] megaraid_sas 0000:18:00.0: 在线控制器重置 (OCR):已启用
[807.586270] megaraid_sas 0000:18:00.0: 安全 JBOD 支持:否
[807.586272] megaraid_sas 0000:18:00.0:NVMe 直通支持:是
[ 807.586274] megaraid_sas 0000:18:00.0:FW 提供的 TM TaskAbort/Reset 超时:6 秒/60 秒
[ 807.586276] megaraid_sas 0000:18:00.0: JBOD 序列图支持:是
[ 807.586278] megaraid_sas 0000:18:00.0: PCI 通道裕度支持:是
[835.614916] megaraid_sas 0000:18:00.0: megasas_get_ld_map_info DCMD 超时,RAID 映射已禁用
[846.307158] megaraid_sas 0000:18:00.0:等待 FW 进入就绪状态
[864.255554] megaraid_sas 0000:18:00.0:FW 现已处于就绪状态
[864.255558] megaraid_sas 0000:18:00.0:FW 现已处于就绪状态
[ 864.256364] megaraid_sas 0000:18:00.0:当前固件支持最大命令数:5101 LDIO 阈值:0
[864.256365] megaraid_sas 0000:18:00.0:性能模式:延迟
[864.256366] megaraid_sas 0000:18:00.0: FW 支持同步缓存:是
[864.256368] megaraid_sas 0000:18:00.0: megasas_disable_intr_fusion 被调用 outbound_intr_mask:0x40000009
[864.899567] megaraid_sas 0000:18:00.0: FW 支持原子描述符:是
[865.039569] megaraid_sas 0000:18:00.0: FW 提供支持MaxExtLDs: 1 max_lds: 240
[865.039573] megaraid_sas 0000:18:00.0:控制器类型:MR(8192MB)
[865.039575] megaraid_sas 0000:18:00.0: 在线控制器重置 (OCR) : 已启用
[865.039577] megaraid_sas 0000:18:00.0: 安全 JBOD 支持:否
[865.039579] megaraid_sas 0000:18:00.0:NVMe 直通支持:是
[865.039582] megaraid_sas 0000:18:00.0:FW 提供的 TM TaskAbort/Reset 超时:6 秒/60 秒
[865.039583] megaraid_sas 0000:18:00.0: JBOD 序列图支持:是
[865.039585] megaraid_sas 0000:18:00.0: PCI 通道裕度支持:是
[865.039589] megaraid_sas 0000:18:00.0: 从 megasas_refire_mgmt_cmd 4304 cmd 0x5 操作码 0x10b0100 返回 -EBUSY
[865.039682] megaraid_sas 0000:18:00.0:从 megasas_refire_mgmt_cmd 4304 cmd 0x5 操作码 0x1010000 返回 -EBUSY
[865.039721] megaraid_sas 0000:18:00.0:从 megasas_refire_mgmt_cmd 4304 cmd 0x5 操作码 0x1010000 返回 -EBUSY
[865.039776] megaraid_sas 0000:18:00.0: 从 megasas_mgmt_fw_ioctl 8301 cmd 0x5 操作码 0x1010000 cmd->cmd_status_drv 0x3 返回 -EBUSY
[865.039781] megaraid_sas 0000:18:00.0: 从 megasas_mgmt_fw_ioctl 8301 cmd 0x5 操作码 0x10b0100 cmd->cmd_status_drv 0x3 返回 -EBUSY
[865.039786] megaraid_sas 0000:18:00.0: 从 megasas_mgmt_fw_ioctl 8301 cmd 0x5 操作码 0x1010000 cmd->cmd_status_drv 0x3 返回 -EBUSY
[865.039830] megaraid_sas 0000:18:00.0:等待控制器重置完成
[865.095608] megaraid_sas 0000:18:00.0: megasas_enable_intr_fusion 被称为 outbound_intr_mask:0x40000000
[ 865.096526] megaraid_sas 0000:18:00.0:适配器对于 scsi:0 处于运行状态
[865.097349] megaraid_sas 0000:18:00.0:快照转储等待时间:15
[865.097351] megaraid_sas 0000:18:00.0:scsi0 重置成功。
[865.097959] megaraid_sas 0000:18:00.0: 999 (689378568s/0x0020/DEAD) - 严重固件错误:fw\raid\utils.c 中的第 171 行

[865.098227] megaraid_sas 0000:18:00.0: 1002 (689378578s/0x0020/CRIT) - 控制器遇到错误并已重置 [865.110859] megaraid_sas 0000:18:00.0:正在扫描 scsi0... [865.111057] megaraid_sas 0000:18:00.0: 1042 (689378618s/0x0020/DEAD) - 严重固件错误:fw\raid\utils.c 中的第 171 行

[865.111308] megaraid_sas 0000:18:00.0: 1045 (689378628s/0x0020/CRIT) - 控制器遇到错误并已重置 [865.115092] megaraid_sas 0000:18:00.0:正在扫描 scsi0... [865.115368] megaraid_sas 0000:18:00.0: 1085 (689378667s/0x0020/DEAD) - 严重固件错误:fw\raid\utils.c 中的第 171 行

[865.115405] megaraid_sas 0000:18:00.0: 1088 (689378677s/0x0020/CRIT) - 控制器遇到错误并已重置 [865.116344] megaraid_sas 0000:18:00.0:正在扫描 scsi0...

答案1

经过研究,我发现 hwraid.le-vert.net 软件包不是最新的,导致内核崩溃。删除它们并直接使用 alien 从 LSI 安装 zip 后,命令运行正常。

https://gist.github.com/fxkraus/595ab82e07cd6f8e057d31bc0bc5e779

答案2

2022 年 10 月 5 日更新:

perccli64在以下链接中发现了较新版本的 dell :

https://www.dell.com/support/home/zh-cn/drivers/driversdetails?driverid=36g6n

您可以从中轻松.deb直接从 tar.gz 文件中找到它,这意味着您不需要alien从 rpm 包中找到它,并且 deb 可以直接安装到 debian 11 和 Proxmox(已经过测试)中。


我有一台戴尔 PERC H750,发现@jeremy 提供的方法(可能适用于 Ubuntu)不适用于 Proxmox 7.x(Debian 11),无论是传统的 MegaCli 还是来自 Broadcom 网站的全新 StorCli 都不是灵丹妙药。

https://www.dell.com/support/home/en-us/drivers/driversdetails?driverid=nf8g9

我搜索了 Dell PERC H750,发现 Dell 提供了 PercCli 作为 Linux 的 RPM 包,这意味着我们也可以使用命令alien将包格式从 RPM 更改为 DEB。安装 PercCli 后,它在 Debian 11 上运行良好,使用方法与 Broadcom StorCli 相同。


编辑:所以我了解到这个网站更欢迎与 Ubuntu 相关的主题。好的,在这里我要说的是:这个解决方案可能也适用于 Ubuntu,好吗?

服务器上的这些全新硬件可能对大多数用户来说并不太受欢迎,这就是为什么这些问题缺乏答案,对吗?

相关内容