[Bug 271238] mpr (LSI SAS3816) driver not finding all devices in HP D6020 enclosures

From: <bugzilla-noreply_at_freebsd.org>
Date: Sun, 31 Aug 2025 19:01:59 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=271238

--- Comment #18 from commit-hook@FreeBSD.org ---
A commit in branch main references this bug:

URL:
https://cgit.FreeBSD.org/src/commit/?id=004ce88ad1efd42a1d7d5692849b4aa6906178fc

commit 004ce88ad1efd42a1d7d5692849b4aa6906178fc
Author:     Peter Eriksson <pen@lysator.liu.se>
AuthorDate: 2025-08-31 18:58:56 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2025-08-31 19:01:09 +0000

    mpr: Add workaround for too few slots being automatically scanned

    This patch adds a /boot/loader.conf setting that makes it possibly to
    override the detected number of slots in storage enclosures. Some (yes
    I'm looking at you HPE D6020!) reports less available slots that there
    actually are (the D6020 seems to report 18 but actually has 35 per
    drawer). This causes the mpr driver to have problems detecting/managing
    all drives in a multienclosure setting. For the D6020 this occurs when
    connecting two or more fully equipped (140 drives) enclosures to one
    controller...

    This problem can be "fixed" by adding the following to /boot/loader.conf
    and rebooting:
        hw.mpr.encl_min_slots="35"

    Note: I (Warner) don't have this hardware to see if there's some way to
    fix the detection, so I'm committing this as a stop-gap. It's a no-op if
    no tunable is set.

    PR: 271238
    Reivewed by: imp

 sys/dev/mpr/mpr.c         | 10 ++++++++++
 sys/dev/mpr/mpr_mapping.c | 18 ++++++++++++++++++
 sys/dev/mpr/mprvar.h      |  1 +
 3 files changed, 29 insertions(+)

-- 
You are receiving this mail because:
You are on the CC list for the bug.