LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH net V5] stmmac: debugfs entry name is not be changed when udev rename device name.
@ 2020-01-07 6:34 Jiping Ma
2020-01-07 21:26 ` David Miller
0 siblings, 1 reply; 2+ messages in thread
From: Jiping Ma @ 2020-01-07 6:34 UTC (permalink / raw)
To: peppe.cavallaro, alexandre.torgue
Cc: joabreu, mcoquelin.stm32, netdev, linux-arm-kernel, linux-stm32,
linux-kernel, jiping.ma2
Add one notifier for udev changes net device name.
Fixes: b6601323ef9e ("net: stmmac: debugfs entry name is not be changed when udev rename")
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
---
.../net/ethernet/stmicro/stmmac/stmmac_main.c | 32 +++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index 6f51a265459d..80d59b775907 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -106,6 +106,7 @@ MODULE_PARM_DESC(chain_mode, "To use chain instead of ring mode");
static irqreturn_t stmmac_interrupt(int irq, void *dev_id);
#ifdef CONFIG_DEBUG_FS
+static const struct net_device_ops stmmac_netdev_ops;
static void stmmac_init_fs(struct net_device *dev);
static void stmmac_exit_fs(struct net_device *dev);
#endif
@@ -4256,6 +4257,34 @@ static int stmmac_dma_cap_show(struct seq_file *seq, void *v)
}
DEFINE_SHOW_ATTRIBUTE(stmmac_dma_cap);
+/* Use network device events to rename debugfs file entries.
+ */
+static int stmmac_device_event(struct notifier_block *unused,
+ unsigned long event, void *ptr)
+{
+ struct net_device *dev = netdev_notifier_info_to_dev(ptr);
+ struct stmmac_priv *priv = netdev_priv(dev);
+
+ if (dev->netdev_ops != &stmmac_netdev_ops)
+ goto done;
+
+ switch (event) {
+ case NETDEV_CHANGENAME:
+ if (priv->dbgfs_dir)
+ priv->dbgfs_dir = debugfs_rename(stmmac_fs_dir,
+ priv->dbgfs_dir,
+ stmmac_fs_dir,
+ dev->name);
+ break;
+ }
+done:
+ return NOTIFY_DONE;
+}
+
+static struct notifier_block stmmac_notifier = {
+ .notifier_call = stmmac_device_event,
+};
+
static void stmmac_init_fs(struct net_device *dev)
{
struct stmmac_priv *priv = netdev_priv(dev);
@@ -4270,12 +4299,15 @@ static void stmmac_init_fs(struct net_device *dev)
/* Entry to report the DMA HW features */
debugfs_create_file("dma_cap", 0444, priv->dbgfs_dir, dev,
&stmmac_dma_cap_fops);
+
+ register_netdevice_notifier(&stmmac_notifier);
}
static void stmmac_exit_fs(struct net_device *dev)
{
struct stmmac_priv *priv = netdev_priv(dev);
+ unregister_netdevice_notifier(&stmmac_notifier);
debugfs_remove_recursive(priv->dbgfs_dir);
}
#endif /* CONFIG_DEBUG_FS */
--
2.18.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH net V5] stmmac: debugfs entry name is not be changed when udev rename device name.
2020-01-07 6:34 [PATCH net V5] stmmac: debugfs entry name is not be changed when udev rename device name Jiping Ma
@ 2020-01-07 21:26 ` David Miller
0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2020-01-07 21:26 UTC (permalink / raw)
To: jiping.ma2
Cc: peppe.cavallaro, alexandre.torgue, joabreu, mcoquelin.stm32,
netdev, linux-arm-kernel, linux-stm32, linux-kernel
From: Jiping Ma <jiping.ma2@windriver.com>
Date: Tue, 7 Jan 2020 14:34:00 +0800
> Add one notifier for udev changes net device name.
> Fixes: b6601323ef9e ("net: stmmac: debugfs entry name is not be changed when udev rename")
>
> Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
Applied.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-01-07 21:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-07 6:34 [PATCH net V5] stmmac: debugfs entry name is not be changed when udev rename device name Jiping Ma
2020-01-07 21:26 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).