mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org
Subject: [GIT PULL] workqueue: Ordered workqueue creation cleanups for v6.5
Date: Mon, 26 Jun 2023 12:03:11 -1000	[thread overview]
Message-ID: <ZJoLH3Mlw7b2ylpC@slm.duckdns.org> (raw)

The following changes since commit ba0ad6ed89fd5dada3b7b65ef2b08e95d449d4ab:

  media: nxp: imx8-isi: fix buiding on 32-bit (2023-05-08 09:10:07 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git/ tags/wq-for-6.5-cleanup-ordered

for you to fetch changes up to 78ef970385ea4d02a44af2776e4f4c74d4fce3d4:

  rxrpc: Use alloc_ordered_workqueue() to create ordered workqueues (2023-05-25 12:15:36 -1000)

----------------------------------------------------------------
workqueue: Ordered workqueue creation cleanups

For historical reasons, unbound workqueues with max concurrency limit of 1
are considered ordered, even though the concurrency limit hasn't been
system-wide for a long time. This creates ambiguity around whether ordered
execution is actually required for correctness, which was actually confusing
for e.g. btrfs (btrfs updates are being routed through the btrfs tree).

There aren't that many users in the tree which use the combination and there
are pending improvements to unbound workqueue affinity handling which will
make inadvertent use of ordered workqueue a bigger loss. This pull request
clarifies the situation for most of them by updating the ones which require
ordered execution to use alloc_ordered_workqueue().

There are some conversions being routed through subsystem-specific trees and
likely a few stragglers. Once they're all converted, workqueue can trigger a
warning on unbound + @max_active==1 usages and eventually drop the implicit
ordered behavior.

----------------------------------------------------------------
Tejun Heo (17):
      powerpc, workqueue: Use alloc_ordered_workqueue() to create ordered workqueues
      greybus: Use alloc_ordered_workqueue() to create ordered workqueues
      net: thunderx: Use alloc_ordered_workqueue() to create ordered workqueues
      net: octeontx2: Use alloc_ordered_workqueue() to create ordered workqueues
      virt: acrn: Use alloc_ordered_workqueue() to create ordered workqueues
      xen/pvcalls: Use alloc_ordered_workqueue() to create ordered workqueues
      wifi: iwlwifi: Use default @max_active for trans_pcie->rba.alloc_wq
      wifi: mwifiex: Use default @max_active for workqueues
      wifi: ath10/11/12k: Use alloc_ordered_workqueue() to create ordered workqueues
      crypto: octeontx2: Use alloc_ordered_workqueue() to create ordered workqueues
      media: coda: Use alloc_ordered_workqueue() to create ordered workqueues
      scsi: NCR5380: Use default @max_active for hostdata->work_q
      media: amphion: Use alloc_ordered_workqueue() to create ordered workqueues
      dm integrity: Use alloc_ordered_workqueue() to create ordered workqueues
      net: wwan: t7xx: Use alloc_ordered_workqueue() to create ordered workqueues
      net: qrtr: Use alloc_ordered_workqueue() to create ordered workqueues
      rxrpc: Use alloc_ordered_workqueue() to create ordered workqueues

 arch/powerpc/kernel/tau_6xx.c                        |  2 +-
 arch/powerpc/platforms/pseries/dlpar.c               |  3 +--
 drivers/crypto/marvell/octeontx2/otx2_cptpf_main.c   | 12 ++++++------
 drivers/crypto/marvell/octeontx2/otx2_cptvf_main.c   |  6 +++---
 drivers/greybus/connection.c                         |  4 ++--
 drivers/greybus/svc.c                                |  2 +-
 drivers/md/dm-integrity.c                            |  4 ++--
 drivers/md/dm.c                                      |  2 +-
 drivers/media/platform/amphion/vpu_core.c            |  2 +-
 drivers/media/platform/amphion/vpu_v4l2.c            |  2 +-
 drivers/media/platform/chips-media/coda-common.c     |  2 +-
 drivers/net/ethernet/cavium/thunder/thunder_bgx.c    |  3 +--
 drivers/net/ethernet/marvell/octeontx2/af/rvu.c      |  5 ++---
 drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c | 13 +++++--------
 drivers/net/ethernet/marvell/octeontx2/nic/otx2_vf.c |  5 ++---
 drivers/net/wireless/ath/ath10k/qmi.c                |  3 +--
 drivers/net/wireless/ath/ath11k/qmi.c                |  3 +--
 drivers/net/wireless/ath/ath12k/qmi.c                |  3 +--
 drivers/net/wireless/intel/iwlwifi/pcie/trans.c      |  2 +-
 drivers/net/wireless/marvell/mwifiex/cfg80211.c      |  4 ++--
 drivers/net/wireless/marvell/mwifiex/main.c          |  8 ++++----
 drivers/net/wwan/t7xx/t7xx_hif_cldma.c               | 13 +++++++------
 drivers/net/wwan/t7xx/t7xx_hif_dpmaif_tx.c           |  5 +++--
 drivers/scsi/NCR5380.c                               |  2 +-
 drivers/virt/acrn/ioreq.c                            |  4 ++--
 drivers/xen/pvcalls-back.c                           |  4 ++--
 net/qrtr/ns.c                                        |  2 +-
 net/rxrpc/af_rxrpc.c                                 |  2 +-
 28 files changed, 57 insertions(+), 65 deletions(-)

             reply	other threads:[~2023-06-26 22:07 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-26 22:03 Tejun Heo [this message]
2023-06-28  0:05 ` pr-tracker-bot

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=ZJoLH3Mlw7b2ylpC@slm.duckdns.org \
    --to=tj@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®