[Bug 293076] ctld regression in FreeBSD 15: multiple physical ports per target rejected and ports not enabled automatically
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 23 Jun 2026 16:29:05 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293076
--- Comment #31 from commit-hook@FreeBSD.org ---
A commit in branch stable/15 references this bug:
URL:
https://cgit.FreeBSD.org/src/commit/?id=cb2d8649148f451ac7fc6f45870cd7d5aa78736a
commit cb2d8649148f451ac7fc6f45870cd7d5aa78736a
Author: John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2026-05-27 20:57:38 +0000
Commit: John Baldwin <jhb@FreeBSD.org>
CommitDate: 2026-06-23 16:17:31 +0000
ctld: Only check physical port linking in a single configuration context
Commit 969876fcee57 moved struct pport from being per-configuration to
being a "global" object shared across multiple configurations. As a
result, the check for duplicate ports actually spanned across
configurations, such that reloading a configuration would now think
that existing physical ports were already linked.
The linking field in pport added in the C++-ification (commit
6acc7afa34aa) faithfully replicated this bug (albeit simpler as I had
noticed that the TAILQ links weren't used after the earlier commit).
To restore the desired behavior, remove the linking field from struct
pport entirely and use a local unordered_map in conf::add_pports which
tracks if a given pport is claimed by more than one target.
PR: 293076
Reported by: Ken J. Thomson <thomsonk@yandex.com>
Fixes: 969876fcee57 ("ctld: parse config file independently of
getting kernel info")
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D57093
(cherry picked from commit d1a8fa2e0f415f941e628f959fa0e70f23058fdb)
usr.sbin/ctld/ctld.cc | 12 +++++++-----
usr.sbin/ctld/ctld.hh | 4 ----
2 files changed, 7 insertions(+), 9 deletions(-)
--
You are receiving this mail because:
You are the assignee for the bug.