Raspberry Pi 5 – unstable system with multiple NVME
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 38/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- debian, linux, raspberry-pi
- Domain
- embedded-iot, operating-systems
Research direction
Start by reproducing the failure with Raspberry Pi 5, multiple NVMe disks, Debian Trixie, and kernel 6.12.75+rpt-rpi-2712, then compare behavior with kernel 6.6.74+rpt-rpi-2712. Review the reported D3hot-to-D0 errors and test the listed APST, ASPM, and PCIe Gen2 settings; done means the regression is explained and drive dropouts no longer occur under the reported workload.
Written by the indexing model from the issue text.
Description
Describe the bug
Hello,
I’m seeing stability issues with NVMe SSDs on Raspberry Pi 5 and would like to know if others experience the same.
Also i am proposin my solution.
Setup:
Raspberry Pi: Raspberry Pi 5
Raspberry Pi OS (Debian Trixie, Kernel 6.12.75+rpt-rpi-2712)
NVMe hub: X1016 NVMe shield (power supply 9V - 17V) - this shield also supplying Pi5 through pogo pins
SSDs:
2× WD Red SN700 NVMe 2 TB (RAID array)
1× Apacer AS2280P4U Pro 256 GB (system disk)
Power supply: my final ( i tried multiple of them ) 15.5 V / 8A (max 40mV peak2peak)
Issuue description
RAID built from 2× WD Red SN700 becomes unstable
One WD drive intermittently drops out
RAID goes degraded / fails
Apacer drive is usually unaffected
Kernel log repeatedly shows:
- pcieport XXXX:XX:XX.X: unable to change power state from D3hot to D0, device inaccessible
- randomly dissapearing one or more discs during boot or during using them (if boot by chances passed)
- Triggered during I/O load, RAID activity, or NVMe power state transitions.
Notes
X1016 vendor lists only Samsung PM961 as incompatible
WD Red SN700 and Apacer are not listed as incompatible
Disks are NVMe (not SATA / AHCI)
My first suspect cause:
Likely a power / power‑management interaction:
aggressive NVMe power states (APST / D3hot)
high peak current of WD Red SN700 (two drives in parallel)
shared 3.3 V rail on the hub
RPi 5 PCIe + PCIe switch
12 V / 5 A power supply likely borderline - then i used even better power resources (listed at beginning) - this was not a root cause
What have I done during debug
- Disable NVMe low‑power states:
‘nvme_core.default_ps_max_latency_us=0’ - Disable PCIe ASPM:
‘pcie_aspm=off’ - Force PCIe Gen2 for stability:
‘INIdtparam=pciex1_gen=2’ - Use a stronger PSU:
12 V / 8–10 A recommended; then I used even better source -> check the beginning
Final Fix
- revert verison OS/kernel from (Debian Trixie, Kernel 6.12.75+rpt-rpi-2712) to
Kernel 6.6.74+rpt-rpi-2712
It is a few day, everything looks perfect.
Steps to reproduce the behaviour
use (Debian Trixie, Kernel 6.12.75+rpt-rpi-2712) and multiple NVME disks (I am not sure if x1016 is important in this chain)
Device (s)
Raspberry Pi 5
System
Debian Trixie, Kernel 6.12.75+rpt-rpi-2712
Logs
- pcieport XXXX:XX:XX.X: unable to change power state from D3hot to D0, device inaccessible
- randomly dissapearing one or more discs during boot or during using them (if boot by chances passed)
- Triggered during I/O load, RAID activity, or NVMe power state transitions.
Additional context
Final Fix
- revert verison OS/kernel from (Debian Trixie, Kernel 6.12.75+rpt-rpi-2712) to
Kernel 6.6.74+rpt-rpi-2712
- Dominant language
- C
- Stars
- 13.2k
- Forks
- 5.5k
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 21
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from raspberrypi/linux
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
raspberrypi/linux#7415 · 2 comments · 1 reaction ·
-
rp1-cfe doesn't forward V4L2_EVENT_SOURCE_CHANGE event from csi-2 sensor driver to userspace app Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
raspberrypi/linux#7399 · 1 comment ·
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
raspberrypi/linux#7357 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
raspberrypi/linux#7054 · 2 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
raspberrypi/linux#7634 · 8 comments · 1 reaction ·
All issues in raspberrypi/linux
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
zephyrproject-rtos/zephyr#119726 ·
-
[Bounty proposal] fix(web): memory insights count an evening memory on the next day ($25 proposed) Open
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
BasedHardware/omi#15320 ·
-
[adam] AdamNet network read doesn't cap to MAX_ADAM_PACKET_LEN, overflows client receive buffers Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
FujiNetWIFI/fujinet-firmware#1649 · 2 comments ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
HarbourMasters/Shipwright#7229 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
riscv-software-src/riscv-isa-sim#2435 · 1 comment ·