On Tue, 14 Apr 2026 07:39:52 -0700 Stephen Hemminger <[email protected]> wrote:
> Several drivers and the ethdev layer initialize pthread mutexes > in shared memory with default (process-private) attributes. > This is undefined behavior when secondary processes use them. > > This series adds PTHREAD_PROCESS_SHARED to all affected mutexes. > All are on control paths (firmware mailbox, hotplug, flow ops, > PHY negotiation) where sleeping is acceptable. > > See POSIX spec: > https://pubs.opengroup.org/onlinepubs/009696899/functions/pthread_mutexattr_getpshared.html > > Bugzilla ID: 662 > > v2 - fix build on Windows which does not need this. > > Stephen Hemminger (6): > ethdev: fix flow_ops_mutex for multi-process > net/failsafe: fix hotplug_mutex for multi-process > net/atlantic: fix mbox_mutex for multi-process > net/axgbe: fix mutexes for multi-process > net/bnxt: fix mutexes for multi-process > net/hinic: fix mutexes for multi-process > > drivers/net/atlantic/atl_ethdev.c | 14 +++++++++++++- > drivers/net/axgbe/axgbe_ethdev.c | 19 +++++++++++++++---- > drivers/net/bnxt/bnxt_ethdev.c | 11 ++++++----- > drivers/net/bnxt/bnxt_txq.c | 3 ++- > drivers/net/bnxt/bnxt_util.c | 13 +++++++++++++ > drivers/net/bnxt/bnxt_util.h | 2 ++ > drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 2 +- > drivers/net/bnxt/tf_ulp/bnxt_ulp_tf.c | 2 +- > drivers/net/bnxt/tf_ulp/bnxt_ulp_tfc.c | 2 +- > drivers/net/failsafe/failsafe.c | 15 ++++++++++++--- > drivers/net/hinic/base/hinic_compat.h | 13 ++++++++++++- > lib/ethdev/ethdev_driver.c | 22 +++++++++++++++++++++- > 12 files changed, 99 insertions(+), 19 deletions(-) > Applied to next-net with helper.

