All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Subject: Re: [PATCH v2 0/6] fix process shared pthread mutexes
Date: Fri, 8 May 2026 09:39:32 -0700	[thread overview]
Message-ID: <20260508093932.7147e8dc@phoenix.local> (raw)
In-Reply-To: <20260414144246.110681-1-stephen@networkplumber.org>

On Tue, 14 Apr 2026 07:39:52 -0700
Stephen Hemminger <stephen@networkplumber.org> 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.

  parent reply	other threads:[~2026-05-08 16:39 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-13 17:14 [PATCH 0/6] fix pthread mutexes for multi-process Stephen Hemminger
2026-04-13 17:14 ` [PATCH 1/6] ethdev: fix flow_ops_mutex " Stephen Hemminger
2026-04-13 17:14 ` [PATCH 2/6] net/failsafe: fix hotplug_mutex " Stephen Hemminger
2026-04-13 17:14 ` [PATCH 3/6] net/atlantic: fix mbox_mutex " Stephen Hemminger
2026-04-13 17:14 ` [PATCH 4/6] net/axgbe: fix mutexes " Stephen Hemminger
2026-04-13 17:14 ` [PATCH 5/6] net/bnxt: " Stephen Hemminger
2026-04-14 18:51   ` Kishore Padmanabha
2026-04-13 17:14 ` [PATCH 6/6] net/hinic: " Stephen Hemminger
2026-04-14 14:39 ` [PATCH v2 0/6] fix process shared pthread mutexes Stephen Hemminger
2026-04-14 14:39   ` [PATCH v2 1/6] ethdev: fix flow_ops_mutex for multi-process Stephen Hemminger
2026-04-14 14:39   ` [PATCH v2 2/6] net/failsafe: fix hotplug_mutex " Stephen Hemminger
2026-04-14 14:39   ` [PATCH v2 3/6] net/atlantic: fix mbox_mutex " Stephen Hemminger
2026-04-14 14:39   ` [PATCH v2 4/6] net/axgbe: fix mutexes " Stephen Hemminger
2026-04-14 14:39   ` [PATCH v2 5/6] net/bnxt: " Stephen Hemminger
2026-04-14 14:39   ` [PATCH v2 6/6] net/hinic: " Stephen Hemminger
2026-04-23 15:05   ` [PATCH v2 0/6] fix process shared pthread mutexes Stephen Hemminger
2026-04-23 17:29   ` Konstantin Ananyev
2026-05-08 16:39   ` Stephen Hemminger [this message]
2026-04-15 14:51 ` [PATCH v3 0/2] af_packet: cleanup and test Stephen Hemminger
2026-04-15 14:51   ` [PATCH v3 1/2] net/af_packet: fix indentation Stephen Hemminger
2026-04-15 14:51   ` [PATCH v3 2/2] test: add test for af_packet Stephen Hemminger
2026-04-16 17:57 ` [PATCH v4 0/2] af_packet: cleanup and test Stephen Hemminger
2026-04-16 17:57   ` [PATCH v4 1/2] net/af_packet: fix indentation Stephen Hemminger
2026-04-16 17:57   ` [PATCH v4 2/2] test: add test for af_packet Stephen Hemminger
2026-04-29 18:46 ` [PATCH v3 0/7] fix use of pthread mutex between processes Stephen Hemminger
2026-04-29 18:46   ` [PATCH v3 1/7] eal: add helper to initialize process-shared mutex Stephen Hemminger
2026-04-29 18:46   ` [PATCH v3 2/7] ethdev: fix flow_ops_mutex for multi-process Stephen Hemminger
2026-04-29 18:46   ` [PATCH v3 3/7] net/failsafe: fix hotplug_mutex " Stephen Hemminger
2026-04-29 18:46   ` [PATCH v3 4/7] net/atlantic: fix mbox_mutex " Stephen Hemminger
2026-04-29 18:46   ` [PATCH v3 5/7] net/axgbe: fix mutexes " Stephen Hemminger
2026-04-29 18:46   ` [PATCH v3 6/7] net/bnxt: " Stephen Hemminger
2026-04-29 18:46   ` [PATCH v3 7/7] net/hinic: " Stephen Hemminger
2026-04-30 17:36   ` [PATCH v3 0/7] fix use of pthread mutex between processes Stephen Hemminger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260508093932.7147e8dc@phoenix.local \
    --to=stephen@networkplumber.org \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.