https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293076

            Bug ID: 293076
           Summary: ctld regression in FreeBSD 15: multiple physical ports
                    per target rejected and ports not enabled
                    automatically
           Product: Base System
           Version: 15.0-STABLE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: kern
          Assignee: [email protected]
          Reporter: [email protected]

After upgrading to FreeBSD 15, ctld behavior has changed compared to FreeBSD
12, 13. The same configuration works correctly on previous releases but fails
on FreeBSD 15.

Two issues are observed:

ctld no longer allows multiple physical ports to be assigned to the same
target.

Frontend CAM target ports are not automatically set Online when ctld starts and
must be enabled manually using ctladm.

Steps to reproduce:

Create the following /etc/ctl.conf:

lun example_1 {
path /dev/zvol/zroot/lun1
option naa 0x50015178f369f093
}

target naa.50015178f369f092 {
port isp0
port isp1
lun 0 example_1
}

Start ctld with:
service ctld onestart

Actual result:

ctld fails to start with the error:
ctld: cannot set multiple physical ports for target "naa.50015178f369f092"
ctld: configuration error; exiting

If ctld is started with a single port, CAM target ports remain Offline until
manually enabled with:
ctladm port -o on

Expected result:

ctld should allow multiple physical ports (for example isp0 and isp1) to be
assigned to a single target, as in FreeBSD 12–13.

ctld should automatically bring frontend ports Online when the service starts,
without requiring manual ctladm commands.

Additional information:

ctladm portlist -v output is identical on FreeBSD 12, 13, 14, and 15. The
difference is only in runtime behavior on FreeBSD 15.

The issue was reproduced with both QLogic ISP and Emulex ocs_fc drivers,
indicating it is not driver-specific.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to