All of lore.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 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.