New drivers officially released? Perhaps nvme raid will now be possible
https://www.amd.com/en/support/chipsets/amd-socket-am4/x570 This website suggests that there are now linux drivers for the x570 chipset which support nvme raid. The drivers are for RHEL and Ubuntu and because I'm a linux noob running Manjaro I'm clueless as to how I could make them work for me. Is it possible to use those files to update this rcraid-dkms? If not can someone shoot me an advice on how I could make these drivers work for me or if that's even possible (mind you I don't need to install my OS onto a raid device which is what most of the documentation is about, I just want to access my gaming nvme fake raid from my Linux distro)
So I just downloaded this and tried to run it but first building what's in raid_linux_driver_930_00283/dd-rcraid-RHEL8-4.18.0-305.el8.x86_64/driver_sdk/src.
Does secure boot need to be enabled to get this to work? I've been trying on my
Manufacturer: ASUSTeK COMPUTER INC.
Product Name: ROG CROSSHAIR VIII IMPACT X570
to no avail.
- I've created a RAID 1 array using the BIOS.
- I've got two NVME M.2 drives of the same size --- 2 TB.
- I've got
modprobe.blacklist=ahci modprobe.blacklist=nvmeas a Kernel parameter.
Linux version:
$ lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: Fedora
Description: Fedora release 34 (Thirty Four)
Release: 34
Codename: ThirtyFour
If I load rcraid.ko and remove modprobe.blacklist=ahci modprobe.blacklist=nvme I see two separate NVME drives.
Any tips on debugging this?
I found the file raid_linux_driver_930_00276.zip. Inside, a document say the NVME RAID is supported!
It would be intresting to merge this project with the new driver version, please let me know how I can send you the file if you cannot find it.
Please, take a look at https://github.com/thopiekar/rcraid-dkms/pull/44
Mark, your fork fails to build for me on Manjaro 5.15.12-1 ` ~/rcraid-dkms/arch master makepkg -si ✔ ==> Making package: rcraid-dkms 17.2.1-2 (Út 18. ledna 2022, 11:48:57) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Retrieving sources... -> Found dkms.conf ==> Validating source files with md5sums... dkms.conf ... Passed ==> Extracting sources... ==> Starting prepare()... ==> Starting build()...
- building for kernel 5.15.12-1-MANJARO
make -C /lib/modules/5.15.12-1-MANJARO/build M=/home/lunchtime/rcraid-dkms/arch/src modules
make[1]: Entering directory '/usr/lib/modules/5.15.12-1-MANJARO/build'
ln -sf basename /home/lunchtime/rcraid-dkms/arch/src/rcblob.x86_64.o .o /home/lunchtime/rcraid-dkms/arch/src/rcblob.x86_64.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_init.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_msg.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_mem_ops.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_event.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_config.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/vers.o
LD [M] /home/lunchtime/rcraid-dkms/arch/src/rcraid.o
MODPOST /home/lunchtime/rcraid-dkms/arch/src/Module.symvers
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rcraid.mod.o
LD [M] /home/lunchtime/rcraid-dkms/arch/src/rcraid.ko
BTF [M] /home/lunchtime/rcraid-dkms/arch/src/rcraid.ko
Unsupported DW_TAG_reference_type(0x10)
Encountered error while encoding BTF.
make[3]: *** [scripts/Makefile.modfinal:60: /home/lunchtime/rcraid-dkms/arch/src/rcraid.ko] Error 1
make[3]: *** Deleting file '/home/lunchtime/rcraid-dkms/arch/src/rcraid.ko'
make[2]: *** [scripts/Makefile.modpost:140: __modpost] Error 2
make[1]: *** [Makefile:1783: modules] Error 2
make[1]: Leaving directory '/usr/lib/modules/5.15.12-1-MANJARO/build'
make: *** [Makefile:99: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...
`
Manjaro
Hello @Lunchtimeme
Previous AMD driver was for Ubuntu, SuSe and RHEL. My fork updated to latest AMD driver that supports only Ubuntu and RHEL dropping support for SuSe.
I'm not sure it will work also on Manjaro. Give me few hours to download this distro and I'll check if it is possible to fix it.
@Lunchtimeme it seams the issue was introduced by latest rcblob.x86_64 file released with AMD original driver 9.3.0
https://github.com/thopiekar/rcraid-dkms/pull/44/commits/e4522f70232c1f7a287138351b04cd7cfcc8bde5
Try now
It looks promising but I'm stupid unfortunately: Running at first I got;
==> Starting build()...
------------------------------------------------------------
- building for kernel 5.15.12-1-MANJARO
------------------------------------------------------------
make -C /lib/modules/5.15.12-1-MANJARO/build M=/home/lunchtime/rcraid-dkms/arch/src modules
make[1]: Entering directory '/usr/lib/modules/5.15.12-1-MANJARO/build'
ln -sf `basename /home/lunchtime/rcraid-dkms/arch/src/rcblob.x86_64.o .o` /home/lunchtime/rcraid-dkms/arch/src/rcblob.x86_64.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_init.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_msg.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_mem_ops.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_event.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rc_config.o
CC [M] /home/lunchtime/rcraid-dkms/arch/src/vers.o
LD [M] /home/lunchtime/rcraid-dkms/arch/src/rcraid.o
MODPOST /home/lunchtime/rcraid-dkms/arch/src/Module.symvers
CC [M] /home/lunchtime/rcraid-dkms/arch/src/rcraid.mod.o
LD [M] /home/lunchtime/rcraid-dkms/arch/src/rcraid.ko
BTF [M] /home/lunchtime/rcraid-dkms/arch/src/rcraid.ko
make[1]: Leaving directory '/usr/lib/modules/5.15.12-1-MANJARO/build'
Signing module using local certificate
make: /home/lunchtime/rcraid-dkms/arch/src/../mk_certs: No such file or directory
make: *** [Makefile:101: all] Error 127
==> ERROR: A failure occurred in build().
Aborting...
So I moved the mk_certs file above the arch/src folder where I think it's looking for it but then I get
BTF [M] /home/lunchtime/rcraid-dkms/arch/src/rcraid.ko
make[1]: Leaving directory '/usr/lib/modules/5.15.12-1-MANJARO/build'
Signing module using local certificate
#
# Config file does not exist for the specified kernel.
# Using config file of running kernel
#
#
# ERROR:
#
# Signing certificates must be created as root.
# Please rerun last command as root.
#
make: *** [Makefile:101: all] Error 1
==> ERROR: A failure occurred in build().
Aborting...
Trying to just run the mk_certs as sudo fails like this:
#
# Config file does not exist for the specified kernel.
# Using config file of running kernel
#
mkdir: missing operand
Try 'mkdir --help' for more information.
#
# When prompted for 'Password', please enter a
# password to be used when installing signing
# certificate. Do NOT use login password or root
# password!
#
# You may be prompted to enter this password the
# next time your system reboots in order to enroll
# the signing certificate in the BIOS key table.
#
Generating a RSA private key
.........................................................................................................................................................++++
.++++
writing new private key to '/module_signing_key.priv'
-----
./mk_certs: line 90: mokutil: command not found
Import key Failed
grep: /boot/config-5.15.12-1-MANJARO: No such file or directory
grep: /boot/config-5.15.12-1-MANJARO: No such file or directory
RETRYING WITH sha256
./mk_certs: line 128: sha256: command not found
#
# RETRY ERROR:
#
# Signing certificate ../certs/module_signing_key.der does not exist!
# Module NOT signed -- installing unsigned module will cause reboot to fail!
#
Can you list your steps used to compile, please?
Thanks
I'm following the 'old' readme just replacing the link with your branch, so:
git clone https://github.com/MarkLTZ/rcraid-dkms.git
cd arch
makepkg -si
And that's where it fails. If the previously installed thopiekar version can't be overwritten or something and the changes I made are causing issues (like loading rcraid? module and blacklisting ahci and nvme) then I'd be fine nuking my system and reinstalling.
The root issue is the signing step for rhel / debian / ubuntu kernel module that as written on the original AMD driver 9.3.0 is not compatible with Arch/Manjaro
Try this https://github.com/MarkLTZ/rcraid-dkms/tree/latest If it works, I will rewrite the signature step to be ignored while building on Arch/Manjaro
It does work ... in the sense that it builds and installs the package.
Unfortunately my nvme raid is still not visible. Took a while on boot and it seemed like it gave up on the rcraid module and just booted normally but maybe that's what it always looks like when you do mkinitcpio -p , I'm not sure. Thank you very much for all this quick help though, I don't think I can get past here though. I'll keep trying some things just not being very hopeful.
Here's a dmesg output in case there's still something I can catch: dmesg.txt
It does work ... in the sense that it builds and installs the package. Unfortunately my nvme raid is still not visible. Took a while on boot and it seemed like it gave up on the rcraid module and just booted normally but maybe that's what it always looks like when you do
mkinitcpio -p, I'm not sure. Thank you very much for all this quick help though, I don't think I can get past here though. I'll keep trying some things just not being very hopeful.Here's a dmesg output in case there's still something I can catch: dmesg.txt
it seams you have the same issue of @Fuzzo
Please give me more details about your hardware:
- Motherboard vendor and model?
- Hard Disks vendor and model?
- SSD or NVMe?
I see also that your bios is set to AHCI and not to RAID:
[ 0.656997] SCSI subsystem initialized
[ 0.687152] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 242)
[ 0.703357] scsi host0: ahci
[ 0.703417] scsi host1: ahci
[ 0.703464] scsi host2: ahci
[ 0.703507] scsi host3: ahci
[ 0.704082] scsi host4: ahci
[ 0.704128] scsi host5: ahci
[ 0.704176] scsi host6: ahci
[ 0.704224] scsi host7: ahci
[ 0.704267] scsi host8: ahci
[ 0.704308] scsi host9: ahci
[ 1.185448] scsi 2:0:0:0: Direct-Access ATA KINGSTON SUV400S 96R9 PQ: 0 ANSI: 5
[ 1.205917] scsi 5:0:0:0: Direct-Access ATA KINGSTON SH103S3 BBF0 PQ: 0 ANSI: 5
[ 1.208541] scsi 9:0:0:0: Direct-Access ATA ST3000DM001-1ER1 CC26 PQ: 0 ANSI: 5
[ 1.239135] sd 2:0:0:0: [sda] Attached SCSI removable disk
[ 1.246990] sd 5:0:0:0: [sdb] Attached SCSI removable disk
[ 1.291699] sd 9:0:0:0: [sdc] Attached SCSI removable disk
[ 17.648270] sd 2:0:0:0: Attached scsi generic sg0 type 0
[ 17.648296] sd 5:0:0:0: Attached scsi generic sg1 type 0
[ 17.648319] sd 9:0:0:0: Attached scsi generic sg2 type 0
It's Gigabyte Aorus x570 Pro I have (as you see in the logs) 2SSDs and one HDD on SATA and I have 2 Samsung 1TB NVMes in Raid0. It's a fake RAID so it's set up in BIOS, it works on Windows.