public inbox for linux-fsdevel@vger.kernel.org
 help / color / mirror / Atom feed
From: Al Viro <viro@zeniv.linux.org.uk>
To: linux-fsdevel@vger.kernel.org
Cc: gregkh@linuxfoundation.org
Subject: [PATCHES v2][RFC][CFT] debugfs cleanups
Date: Sun, 12 Jan 2025 08:05:45 +0000	[thread overview]
Message-ID: <20250112080545.GX1977892@ZenIV> (raw)
In-Reply-To: <20241229080948.GY1977892@ZenIV>

On Sun, Dec 29, 2024 at 08:09:48AM +0000, Al Viro wrote:

> 	All of that could be avoided if we augmented debugfs inodes with
> a couple of pointers - no more stashing crap in ->d_fsdata, etc.
> And it's really not hard to do.  The series below attempts to untangle
> that mess; it can be found in
> git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git #work.debugfs

Rebased on top of
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git driver-core-linus
and force-pushed into the same branch.

Changes since v1:

* "debugfs: fix missing mutex_destroy() in short_fops case" dropped - already
merged.
* struct debugfs_short_fops made available without CONFIG_DEBUG_FS (fixes
build breakage on !DEBUG_FS builds)
* orangefs-debugfs converted to debugfs_create_file_aux_num() (accidentally
missed in the original series)

Shortlog:
Al Viro (21):
      debugfs: separate cache for debugfs inodes
      debugfs: move ->automount into debugfs_inode_info
      debugfs: get rid of dynamically allocation proxy_ops
      debugfs: don't mess with bits in ->d_fsdata
      debugfs: allow to store an additional opaque pointer at file creation
      debugfs: take debugfs_short_fops definition out of ifdef
      carl9170: stop embedding file_operations into their objects
      b43: stop embedding struct file_operations into their objects
      b43legacy: make use of debugfs_get_aux()
      netdevsim: don't embed file_operations into your structs
      mediatek: stop messing with ->d_iname
      [not even compile-tested] greybus/camera - stop messing with ->d_iname
      mtu3: don't mess wiht ->d_iname
      xhci: don't mess with ->d_iname
      qat: don't mess with ->d_name
      sof-client-ipc-flood-test: don't mess with ->d_name
      slub: don't mess with ->d_name
      arm_scmi: don't mess with ->d_parent->d_name
      octeontx2: don't mess with ->d_parent or ->d_parent->d_name
      orangefs-debugfs: don't mess with ->d_name
      saner replacement for debugfs_rename()

Diffstat:
 Documentation/filesystems/debugfs.rst              |  12 +-
 .../crypto/intel/qat/qat_common/adf_tl_debugfs.c   |  36 +---
 drivers/firmware/arm_scmi/raw_mode.c               |  12 +-
 drivers/net/bonding/bond_debugfs.c                 |   9 +-
 drivers/net/ethernet/amd/xgbe/xgbe-debugfs.c       |  19 +-
 .../ethernet/marvell/octeontx2/af/rvu_debugfs.c    |  76 +++-----
 drivers/net/ethernet/marvell/skge.c                |   5 +-
 drivers/net/ethernet/marvell/sky2.c                |   5 +-
 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c  |   6 +-
 drivers/net/netdevsim/hwstats.c                    |  29 ++-
 drivers/net/wireless/ath/carl9170/debug.c          |  28 ++-
 drivers/net/wireless/broadcom/b43/debugfs.c        |  27 ++-
 drivers/net/wireless/broadcom/b43legacy/debugfs.c  |  26 ++-
 drivers/opp/debugfs.c                              |  10 +-
 drivers/phy/mediatek/phy-mtk-tphy.c                |  40 +---
 drivers/staging/greybus/camera.c                   |  17 +-
 drivers/usb/host/xhci-debugfs.c                    |  25 +--
 drivers/usb/mtu3/mtu3_debugfs.c                    |  40 +---
 fs/debugfs/file.c                                  | 165 ++++++++--------
 fs/debugfs/inode.c                                 | 208 ++++++++++-----------
 fs/debugfs/internal.h                              |  50 +++--
 fs/orangefs/orangefs-debugfs.c                     |  16 +-
 include/linux/debugfs.h                            |  44 ++++-
 mm/shrinker_debug.c                                |  16 +-
 mm/slub.c                                          |  13 +-
 net/hsr/hsr_debugfs.c                              |   9 +-
 net/mac80211/debugfs_netdev.c                      |  11 +-
 net/wireless/core.c                                |   5 +-
 sound/soc/sof/sof-client-ipc-flood-test.c          |  39 ++--
 29 files changed, 402 insertions(+), 596 deletions(-)

Individual patches in followups.

  parent reply	other threads:[~2025-01-12  8:05 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-29  8:09 [PATCHES][RFC][CFT] debugfs cleanups Al Viro
2024-12-29  8:12 ` [PATCH 01/20] debugfs: fix missing mutex_destroy() in short_fops case Al Viro
2024-12-29  8:12   ` [PATCH 02/20] debugfs: separate cache for debugfs inodes Al Viro
2024-12-29  8:12   ` [PATCH 03/20] debugfs: move ->automount into debugfs_inode_info Al Viro
2024-12-29  8:12   ` [PATCH 04/20] debugfs: get rid of dynamically allocation proxy_ops Al Viro
2024-12-29  8:12   ` [PATCH 05/20] debugfs: don't mess with bits in ->d_fsdata Al Viro
2024-12-29  8:12   ` [PATCH 06/20] debugfs: allow to store an additional opaque pointer at file creation Al Viro
2024-12-29  8:12   ` [PATCH 07/20] carl9170: stop embedding file_operations into their objects Al Viro
2024-12-29  8:12   ` [PATCH 08/20] b43: stop embedding struct " Al Viro
2024-12-29  8:12   ` [PATCH 09/20] b43legacy: make use of debugfs_get_aux() Al Viro
2024-12-29  8:12   ` [PATCH 10/20] netdevsim: don't embed file_operations into your structs Al Viro
2024-12-29  8:12   ` [PATCH 11/20] mediatek: stop messing with ->d_iname Al Viro
2024-12-29  8:12   ` [PATCH 12/20] [not even compile-tested] greybus/camera - " Al Viro
2024-12-29  8:12   ` [PATCH 13/20] mtu3: don't mess wiht ->d_iname Al Viro
2024-12-29  8:12   ` [PATCH 14/20] xhci: don't mess with ->d_iname Al Viro
2024-12-29  8:12   ` [PATCH 15/20] qat: don't mess with ->d_name Al Viro
2024-12-29  8:12   ` [PATCH 16/20] sof-client-ipc-flood-test: " Al Viro
2024-12-29  8:12   ` [PATCH 17/20] slub: " Al Viro
2024-12-29  8:12   ` [PATCH 18/20] arm_scmi: don't mess with ->d_parent->d_name Al Viro
2024-12-29  8:12   ` [PATCH 19/20] octeontx2: don't mess with ->d_parent or ->d_parent->d_name Al Viro
2024-12-29  8:12   ` [PATCH 20/20] saner replacement for debugfs_rename() Al Viro
2024-12-29 16:38     ` Al Viro
2025-01-07 15:20   ` [PATCH 01/20] debugfs: fix missing mutex_destroy() in short_fops case Greg KH
2024-12-29 20:58 ` [PATCHES][RFC][CFT] debugfs cleanups Al Viro
2025-01-07 14:56   ` Greg KH
2025-01-12  8:05 ` Al Viro [this message]
2025-01-12  8:06   ` [PATCH v2 01/21] debugfs: separate cache for debugfs inodes Al Viro
2025-01-12  8:06     ` [PATCH v2 02/21] debugfs: move ->automount into debugfs_inode_info Al Viro
2025-01-13 14:49       ` Christian Brauner
2025-01-12  8:06     ` [PATCH v2 03/21] debugfs: get rid of dynamically allocation proxy_ops Al Viro
2025-01-13 14:51       ` Christian Brauner
2025-01-12  8:06     ` [PATCH v2 04/21] debugfs: don't mess with bits in ->d_fsdata Al Viro
2025-01-13 14:55       ` Christian Brauner
2025-01-12  8:06     ` [PATCH v2 05/21] debugfs: allow to store an additional opaque pointer at file creation Al Viro
2025-01-13 14:56       ` Christian Brauner
2025-01-12  8:06     ` [PATCH v2 06/21] debugfs: take debugfs_short_fops definition out of ifdef Al Viro
2025-01-13 14:57       ` Christian Brauner
2025-01-12  8:06     ` [PATCH v2 07/21] carl9170: stop embedding file_operations into their objects Al Viro
2025-01-12  8:06     ` [PATCH v2 08/21] b43: stop embedding struct " Al Viro
2025-01-12  8:06     ` [PATCH v2 09/21] b43legacy: make use of debugfs_get_aux() Al Viro
2025-01-12  8:06     ` [PATCH v2 10/21] netdevsim: don't embed file_operations into your structs Al Viro
2025-01-12  8:06     ` [PATCH v2 11/21] mediatek: stop messing with ->d_iname Al Viro
2025-01-12  8:06     ` [PATCH v2 12/21] [not even compile-tested] greybus/camera - " Al Viro
2025-01-12  8:06     ` [PATCH v2 13/21] mtu3: don't mess wiht ->d_iname Al Viro
2025-01-12  8:06     ` [PATCH v2 14/21] xhci: don't mess with ->d_iname Al Viro
2025-01-12  8:06     ` [PATCH v2 15/21] qat: don't mess with ->d_name Al Viro
2025-01-12  8:07     ` [PATCH v2 16/21] sof-client-ipc-flood-test: " Al Viro
2025-01-12  8:07     ` [PATCH v2 17/21] slub: " Al Viro
2025-01-12  8:07     ` [PATCH v2 18/21] arm_scmi: don't mess with ->d_parent->d_name Al Viro
2025-01-12  8:07     ` [PATCH v2 19/21] octeontx2: don't mess with ->d_parent or ->d_parent->d_name Al Viro
2025-01-12  8:07     ` [PATCH v2 20/21] orangefs-debugfs: don't mess with ->d_name Al Viro
2025-01-12  8:07     ` [PATCH v2 21/21] saner replacement for debugfs_rename() Al Viro
2025-01-13 14:48     ` [PATCH v2 01/21] debugfs: separate cache for debugfs inodes Christian Brauner

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=20250112080545.GX1977892@ZenIV \
    --to=viro@zeniv.linux.org.uk \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-fsdevel@vger.kernel.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