ProLiant Servers (ML,DL,SL)
1751956 Members
5360 Online
108783 Solutions
New Discussion

ML30 Gen9 B140i hpdsa CenOS 6.8/RHEL 6.8 problems

 
darek_top
Advisor

ML30 Gen9 B140i hpdsa CenOS 6.8/RHEL 6.8 problems

Hi there,

For several years I was using GNU/Linux software raid on Dynamic Smart Arrays (B1xi)  on ML110G6 ML110G7 ML310G8 and now on ML30G9 in controller set to AHCI mode.

A firend has encouraged me to try using HP provided driver hpdsa.

As it came out I have to use UEFI mode to use B140i in ML30G9 which is not found by me so great (i don't see real advantages for my use), the BIOS moge was good for me. So I started some testing on CentOS 6.7 installer updated to CentOS 6.8 (CentOS is free port of RHEL, most builds are compatible) and I came on problem appeared:

Hi there,

For several years I was using GNU/Linux software raid on Dynamic Smart Arrays (B1xi)  on ML110G6 ML110G7 ML310G8 and now on ML30G9 in controller set to AHCI mode.

A firend has encouraged me to try using HP provided driver hpdsa.

As it came out I have to use UEFI mode to use B140i in ML30G9 which is not found by me so great (i don't see real advantages for my use), the BIOS moge was good for me. So I started some testing on CentOS 6.7 installer updated to CentOS 6.8 (CentOS is free port of RHEL, most builds are compatible) and I came on problem appeared as:

kernel: DEBUG ASSERT: OS_ReadRegisterUlong(NULL, pHal->hint.ints.host_int_enable) == GLP_SNA_INTERRUPT_DISABLE file=/u1/tbuild/dbe/rhel6/hpdsa/rpm/BUILD/hpdsa-1.2.8/obj/default/.//hpvsa//hal_ibanez/hal_glp.c function=glp_disable_interrupts line=553
kernel: DEBUG_ASSERT: (0 0 0)
kernel: Pid: 398, comm: hpdsa/5 Tainted: P -- ------------ 2.6.32-642.6.1.el6.x86_64 #1
kernel: Call Trace:
kernel: [<ffffffffa00b2172>] ? glp_disable_interrupts+0xa2/0xb0 [hpdsa]
kernel: [<ffffffffa00b39c1>] ? hal_i2c_event_get+0x61/0x70 [hpdsa]
kernel: [<ffffffffa01773b3>] ? detect_aero_i2c_device_api+0x123/0x1040 [hpdsa]
kernel: [<ffffffff8108f040>] ? process_timeout+0x0/0x10
kernel: [<ffffffffa00b4283>] ? hal_i2c_masterWriteRead+0x333/0x600 [hpdsa]
kernel: [<ffffffffa00b5a9c>] ? flush_i2c_request+0xac/0x1a0 [hpdsa]
kernel: [<ffffffffa00b5d03>] ? process_swr_i2c_request+0x173/0x2f0 [hpdsa]
kernel: [<ffffffffa00b63b9>] ? HAL_API_I2C_Direct_Read+0x199/0x3a0 [hpdsa]
kernel: [<ffffffffa00c1a62>] ? i2c_check_drive_install_state+0x312/0x6a0 [hpdsa]
kernel: [<ffffffffa00a4bb8>] ? check_drive_install_state+0x458/0x4c0 [hpdsa]
kernel: [<ffffffffa0124330>] ? OS_interrupt_control+0xb0/0x140 [hpdsa]
kernel: [<ffffffffa01243fb>] ? OS_int_global_enable+0x1b/0x20 [hpdsa]
kernel: [<ffffffffa00dfc35>] ? check_for_ilo_command+0xb5/0x2f0 [hpdsa]
kernel: [<ffffffffa0136782>] ? Bkgnd_Disk_Task+0x1162/0x1420 [hpdsa]
kernel: [<ffffffffa0135620>] ? Bkgnd_Disk_Task+0x0/0x1420 [hpdsa]
kernel: [<ffffffff810a640e>] ? kthread+0x9e/0xc0
kernel: [<ffffffff8100c28a>] ? child_rip+0xa/0x20
kernel: [<ffffffff810a6370>] ? kthread+0x0/0xc0
kernel: [<ffffffff8100c280>] ? child_rip+0x0/0x20

After a little workarround I've diabled the Intel VT-d which fixed the problem. I wonder if there is a way to go with UEFI+B140i+hpdsa+VT-d . Upgrading the system to newest FW from SPP 2016.10.0 does not fix the issue.

 HW:

ML30 Gen9 831068-425, BIOS Version: U23, Release Date: 09/12/2016

Dynamic Smart Array B140i, RAID Stack Version: 4.50, Option ROM Version:4.04-0

iLO Firmware Version 2.50 Sep 23 2016

SW: CentOS 6.8 , kernel-2.6.32-642.el6.x86_64, kmod-hpdsa-1.2.10-110.rhel6u8.x86_64

Can someone thest if this happens in RHEL 6.8?

 

The interesting situation is that this does not happen in CenOS 7 releases. But i'm not interested using systemd in production systems.

Another question is if using UEFI+B140i instead of software raid gives any performance or functional benefits?