[SOLVED] Proxmox 7 on HP G7 and how to enable hba mode P410 (hpsahba)

I put all of these instructions in an ansible playbook which works on my proxmox servers. I have no guarantees of course but I have tested this on my DL360 G7's and it has yet to not work. It also checks for the FW level so make sure to update that.

The playbooks is called:
p410_hbamode.yml

and can be found here:
https://github.com/rickh1965/base_docker_roles

It does what the OP spelled out in the instructions on his post. But it can do it over and over again reliably (for me anyway) using ansible.

I have only tested this on running Proxmox servers which boot, of course, outside of the RAID controller. If you run this on a server which boots on a RAID LUN, that would obviously be VERY VERY bad.
 
Hi Guys i've tried for about two weeks and im at a lost
I had / having issues getting proxmox onto an HP DL385 G7 via this guide but...
I can install proxmox 7.3-4 from a usb stick onto to an ssd drive in the dvd slot with
would like to run the hp410i as HBA mode ...

I get to here and ....... lets say i have ordered an HP H220 card flashed to IT mode on the way but would like this to also work

root@PlanB:~/hpsahba/contrib/dkms# dkms install --force hpsa-dkms/1.0
Error! Your kernel headers for kernel 5.15.83-1-pve cannot be found.
Please install the linux-headers-5.15.83-1-pve package,
or use the --kernelsourcedir option to tell DKMS where it's located

any ideas i did try ? no success

apt-get install linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'linux-headers-5.15.83-1-pve-amd64' for regex 'linux-headers-5.15.83-1-pve'
Note, selecting 'pve-headers-5.15.83-1-pve' instead of 'linux-headers-5.15.83-1-pve-amd64'
pve-headers-5.15.83-1-pve is already the newest version (5.15.83-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Cheers
 
Hi all. First time poster! (And unsurprisingly stuck and needing help!)

I’ve got a DL380 G7 that I’m using to learn some home lab skills. It has the p410i and a p212. I was hoping to use the 410i as a HBA and leave the 212 as RAID. Currently booting from drives attached to the p212.

Using proxmox 8, 6.2.16-5-pve kernel.

I’ve set up hpsahba without issues, and can toggle the hba mode.

The hpsa patch is not working for me. The only error message I get is with “modprobe -r hpsa”: Module is in use.

Ignoring the error and progressing the instructions - the disks remain unexposed to the os after restart.

The only process using hpsa is kworker. Kill [kworker pid] didn’t fix it.

Modinfo hpsa shows dkms as the signer, so I assume the patch applied ok?

Stuck.

Considering buying a hba card - but I’m learning so much with this old heap of junk!
 
Last edited:
The patch is also not working for me using Proxmox 8, 6.2.16-8-pve kernel on a DL360 G6 with a P410i. I ran all of the commands successfully but I still can't seem to see any of my disks after the os restarts. If anyone has any suggestions for how I could get this to work please let me know!

EDIT:

I found something when running dmesg

Code:
[    2.438342] hpsa: loading out-of-tree module taints kernel.
[    2.438453] hpsa: module verification failed: signature and/or required key missing - tainting kernel
[    2.440322] hpsa: unknown parameter 'hpsa_use_nvram_hba_flag' ignored
[    2.449425] hpsa 0000:03:00.0: can't disable ASPM; OS doesn't have ASPM control
[    2.456541] hpsa 0000:03:00.0: Logical aborts not supported
[    2.456547] hpsa 0000:03:00.0: HP SSD Smart Path aborts not supported
[    2.498921] scsi host2: hpsa
[    2.499380] hpsa can't handle SMP requests
[    2.515725] hpsa 0000:03:00.0: scsi 2:0:0:0: added RAID              HP       P410i            controller SSDSmartPathCap- En- Exp=1
[    2.515733] hpsa 0000:03:00.0: scsi 2:0:1:0: masked Direct-Access     ATA      ST91000640NS     PHYS DRV SSDSmartPathCap- En- Exp=0
[    2.515738] hpsa 0000:03:00.0: scsi 2:0:2:0: masked Direct-Access     ATA      ST91000640NS     PHYS DRV SSDSmartPathCap- En- Exp=0
[    2.515742] hpsa 0000:03:00.0: scsi 2:0:3:0: masked Direct-Access     ATA      ST91000640NS     PHYS DRV SSDSmartPathCap- En- Exp=0
[    2.515747] hpsa 0000:03:00.0: scsi 2:0:4:0: masked Direct-Access     ATA      ST91000640NS     PHYS DRV SSDSmartPathCap- En- Exp=0
[    2.515751] hpsa 0000:03:00.0: scsi 2:0:5:0: masked Enclosure         PMCSIERA  SRC 8x6G        enclosure SSDSmartPathCap- En- Exp=0
[    2.515846] hpsa can't handle SMP requests
 
Last edited:
  • Like
Reactions: prototype
If anyone has any suggestions for how I could get this to work please let me know!
I spent so much time on this ... just go with another HBA and be done with it. After realizing this, I bought a bunch of old SAS2008-based HBAs, flashed them to IT mode and never looked back. Each HBA set me back roundabout 30 euros (in average over all) and of course you need a free PCIe slot, yet it works flawlessly and I used a hpsa controller again. I'm running in a ML370G6 three of those HBAs and they work as expected and yield a lot of performance raided together via ZFS.
 
After so many times around the houses... I finally scan see all my drives!

Things I did, in no particular order, and with no guarantee of these being sensible things to do...

Used the hpsahba fork from dimitris
Added a symlink of 5.18-patchset-v2 named 6.2-patchset-v2 in /hpsahba/kernel
in /contrib/dkms edited install.sh from "./patch.sh" to "./patch.sh 6.2"

restarted and confirmed no logical drives were active

installed hpsahba using "make"
navigated to hpsahba/contrib/dkms
ran install.sh

Restarted

lsblk - drives appear!
 
I maintain a fork of the hpsahba repo that is proxmox-friendly by default. It addresses issues like the hardcoded kernel version in the upstream version.
It contains an install script for the dkms module which does all the work of installing the kernel module for you.

Today I've implemented even more changes which aim to fix all of the open issues on upstream:
  • hpsa_use_nvram_hba_flag=1 is now set by default, without the need to modprobe
  • added a (possible) fix for the dkms autoinstall hook failing after every kernel update.
  • incremented the dkms module version to prevent some issues
You can find the github repo here.
The link to your repo doesn't work. Could you please update it I'm struggling with this tutorial for days.
 
The patch is also not working for me using Proxmox 8, 6.2.16-8-pve kernel on a DL360 G6 with a P410i. I ran all of the commands successfully but I still can't seem to see any of my disks after the os restarts. If anyone has any suggestions for how I could get this to work please let me know!

EDIT:

I found something when running dmesg

Code:
[    2.438342] hpsa: loading out-of-tree module taints kernel.
[    2.438453] hpsa: module verification failed: signature and/or required key missing - tainting kernel
[    2.440322] hpsa: unknown parameter 'hpsa_use_nvram_hba_flag' ignored
[    2.449425] hpsa 0000:03:00.0: can't disable ASPM; OS doesn't have ASPM control
[    2.456541] hpsa 0000:03:00.0: Logical aborts not supported
[    2.456547] hpsa 0000:03:00.0: HP SSD Smart Path aborts not supported
[    2.498921] scsi host2: hpsa
[    2.499380] hpsa can't handle SMP requests
[    2.515725] hpsa 0000:03:00.0: scsi 2:0:0:0: added RAID              HP       P410i            controller SSDSmartPathCap- En- Exp=1
[    2.515733] hpsa 0000:03:00.0: scsi 2:0:1:0: masked Direct-Access     ATA      ST91000640NS     PHYS DRV SSDSmartPathCap- En- Exp=0
[    2.515738] hpsa 0000:03:00.0: scsi 2:0:2:0: masked Direct-Access     ATA      ST91000640NS     PHYS DRV SSDSmartPathCap- En- Exp=0
[    2.515742] hpsa 0000:03:00.0: scsi 2:0:3:0: masked Direct-Access     ATA      ST91000640NS     PHYS DRV SSDSmartPathCap- En- Exp=0
[    2.515747] hpsa 0000:03:00.0: scsi 2:0:4:0: masked Direct-Access     ATA      ST91000640NS     PHYS DRV SSDSmartPathCap- En- Exp=0
[    2.515751] hpsa 0000:03:00.0: scsi 2:0:5:0: masked Enclosure         PMCSIERA  SRC 8x6G        enclosure SSDSmartPathCap- En- Exp=0
[    2.515846] hpsa can't handle SMP requests
i think i have the same problem like you, but still haven't found a solution. How about you ?
 
So, if I had already changed/flashed the P410i operating mode (I did this through Unraid), would I still need to install Debian first? Does the standard Proxmox recognizes out of the box the controller once it's been flashed?
Easiest way to find out is to just boot up the install and see for yourself. Unless you actually install, this is non-invasive.
 
I made playbooks I use on my set of DL 360 G7 servers. The last two play books: proxmox.yml and p410.yml install proxmox on top of a debian install and then get the distro as described above and put the controller in HBA mode.

Of course I boot from internal USB not behind the controller.

This can be found here:
https://github.com/rickh1965/pxebootenv

I hope it helps someone
 
  • Like
Reactions: uiffiu
Any suggestion why? (proxmox 8, kernel 6.5.13-5-pve, dl380g7 P410i v6.64)

Code:
[  454.769357] hpsa: module verification failed: signature and/or required key missing - tainting kernel
[  454.775776] HP HPSA Driver (v 3.4.20-200)
[  454.775791] hpsa 0000:05:00.0: can't disable ASPM; OS doesn't have ASPM control
[  454.776208] hpsa 0000:05:00.0: Logical aborts not supported
[  454.776211] hpsa 0000:05:00.0: HP SSD Smart Path aborts not supported
[  454.815259] scsi host2: hpsa
[  454.815624] hpsa can't handle SMP requests
[  454.832108] hpsa 0000:05:00.0: scsi 2:0:0:0: added RAID              HP       P410i            controller SSDSmartPathCap- En- Exp=1
[  454.832114] hpsa 0000:05:00.0: scsi 2:0:1:0: masked Direct-Access     HP       EH0146FARWD      PHYS DRV SSDSmartPathCap- En- Exp=0
[  454.832118] hpsa 0000:05:00.0: scsi 2:0:2:0: masked Direct-Access     HP       EH0146FAWJB      PHYS DRV SSDSmartPathCap- En- Exp=0
[  454.832122] hpsa 0000:05:00.0: scsi 2:0:3:0: masked Direct-Access     HP       DG146BAAJB       PHYS DRV SSDSmartPathCap- En- Exp=0
[  454.832125] hpsa 0000:05:00.0: scsi 2:0:4:0: masked Direct-Access     HP       DG146A4960       PHYS DRV SSDSmartPathCap- En- Exp=0
[  454.832128] hpsa 0000:05:00.0: scsi 2:0:5:0: masked Direct-Access     HP       DG146A4960       PHYS DRV SSDSmartPathCap- En- Exp=0
[  454.832132] hpsa 0000:05:00.0: scsi 2:0:6:0: masked Direct-Access     HP       DG146A4960       PHYS DRV SSDSmartPathCap- En- Exp=0
[  454.832135] hpsa 0000:05:00.0: scsi 2:0:7:0: masked Enclosure         PMCSIERA  SRC 8x6G        enclosure SSDSmartPathCap- En- Exp=0
[  454.832212] hpsa can't handle SMP requests
[  454.832654] scsi 2:0:0:0: RAID              HP       P410i            6.64 PQ: 0 ANSI: 5
[  454.833550] scsi 2:0:0:0: Attached scsi generic sg1 type 12

root@node1:~# lsblk
NAME               MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda                  8:0    0 111.8G  0 disk
├─sda1               8:1    0  1007K  0 part
├─sda2               8:2    0     1G  0 part
└─sda3               8:3    0 110.8G  0 part
  ├─pve-swap       252:0    0     4G  0 lvm  [SWAP]
  ├─pve-root       252:1    0  38.7G  0 lvm  /
  ├─pve-data_tmeta 252:2    0     1G  0 lvm
  │ └─pve-data     252:4    0  52.3G  0 lvm
  └─pve-data_tdata 252:3    0  52.3G  0 lvm
    └─pve-data     252:4    0  52.3G  0 lvm
sdb                  8:16   1   3.7G  0 disk
root@node1:~#



EDIT: Fix by #27
 
Last edited:
Hello everybody,

I know the post is old, but I recently used it to enable HBA mode on DL360G7 and DL380G7 controllers. Everything perfect, just for one detail. One of my DL380G7 servers has 16 disk bays, so it has an expansion card, as the internal P410i only has two SAS connectors.

This expansion card, HP 468405-001, is connected to a PCI slot and receives the two SAS cables that come from the motherboard and 4 SAS cables are connected to the disk backplane. When I enabled HBA mode the following error started to appear at boot time when the controller ROM was loaded.

Captura de tela 2024-06-13 205632.png

The expansion card

Captura de tela 2024-06-15 024459.png
Captura de tela 2024-06-15 024519.png
 
Hi gues !

I was able to use this instruction for my DL 380 G7, but there are a couple of points that should be updated:

1. PVE installed according to the following instructions https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_12_Bookworm
2. The next steps allowed me to achieve a satisfactory result
su -
echo "blacklist hpwdt" >> /etc/modprobe.d/blacklist-hp.conf
cat /etc/modprobe.d/blacklist-hp.conf
apt update -y && apt install wget sudo htop iotop sdparm tmux curl make gcc pandoc git gh dkms -y
apt install pve-headers-$(uname -r)
cd /root
mkdir git
cd ./git
mkdir im-0 && cd ./im-0
git clone git clone https://github.com/im-0/hpsahba/
cd /root
git clone https://github.com/99dimitris/hpsahba
cp -r /root/im-0/hpsahba/kernel/5.18-patchset-v2 /root/hpsahba/kernel/6.8-patchset-v2
cd /hpsahba
make
cd /root/hpsahba/contrib/dkms
./install.sh
 

Attachments

  • Screenshot 2024-09-04 032541.png
    Screenshot 2024-09-04 032541.png
    4.6 KB · Views: 8

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!