static int netdev_notify(struct notifier_block *nb, unsigned long state, void *ndev) { struct net_device *dev = ndev; struct dentry *dir; struct ieee80211_sub_if_data *sdata; char buf[10+IFNAMSIZ]; if (state != NETDEV_CHANGENAME) return 0; if (!dev->ieee80211_ptr || !dev->ieee80211_ptr->wiphy) return 0; if (dev->ieee80211_ptr->wiphy->privid != mac80211_wiphy_privid) return 0; sdata = IEEE80211_DEV_TO_SUB_IF(dev); dir = sdata->debugfsdir; if (!dir) return 0; sprintf(buf, "netdev:%s", dev->name); if (!debugfs_rename(dir->d_parent, dir, dir->d_parent, buf)) printk(KERN_ERR "mac80211: debugfs: failed to rename debugfs " "dir to %s\n", buf); return 0; }
void update_debugfs_dir_name(struct fs_base *base, const char *name) { struct dentry *parent; parent = get_debugfs_parent(base); debugfs_rename(parent, base->debugfs.dir, parent, name); }
void ieee80211_debugfs_rename_netdev(struct ieee80211_sub_if_data *sdata) { struct dentry *dir; char buf[10 + IFNAMSIZ]; dir = sdata->debugfs.dir; if (!dir) return; sprintf(buf, "netdev:%s", sdata->name); if (!debugfs_rename(dir->d_parent, dir, dir->d_parent, buf)) printk(KERN_ERR "mac80211: debugfs: failed to rename debugfs " "dir to %s\n", buf); }
void ieee80211_debugfs_rename_netdev(struct ieee80211_sub_if_data *sdata) { struct dentry *dir; char buf[10 + IFNAMSIZ]; dir = sdata->vif.debugfs_dir; if (!dir) return; sprintf(buf, "netdev:%s", sdata->name); if (!debugfs_rename(dir->d_parent, dir, dir->d_parent, buf)) sdata_err(sdata, "debugfs: failed to rename debugfs dir to %s\n", buf); }
void bond_debug_reregister(struct bonding *bond) { struct dentry *d; if (!bonding_debug_root) return; d = debugfs_rename(bonding_debug_root, bond->debug_dir, bonding_debug_root, bond->dev->name); if (d) { bond->debug_dir = d; } else { pr_warning("%s: Warning: failed to reregister, " "so just unregister old one\n", bond->dev->name); bond_debug_unregister(bond); } }
static int netdev_notify(struct notifier_block *nb, unsigned long state, void *ndev) { struct net_device *dev = ndev; struct dentry *dir; struct ieee80211_local *local; struct ieee80211_sub_if_data *sdata; char buf[10+IFNAMSIZ]; if (state != NETDEV_CHANGENAME) return 0; if (!dev->ieee80211_ptr || !dev->ieee80211_ptr->wiphy) return 0; if (dev->ieee80211_ptr->wiphy->privid != mac80211_wiphy_privid) return 0; /* * Do not use IEEE80211_DEV_TO_SUB_IF because that * BUG_ONs for the master netdev which we need to * handle here. */ sdata = netdev_priv(dev); dir = sdata->debugfsdir; if (!dir) return 0; sprintf(buf, "netdev:%s", dev->name); if (!debugfs_rename(dir->d_parent, dir, dir->d_parent, buf)) printk(KERN_ERR "mac80211: debugfs: failed to rename debugfs " "dir to %s\n", buf); return 0; }
void xgbe_debugfs_rename(struct xgbe_prv_data *pdata) { struct dentry *pfile; char *buf; if (!pdata->xgbe_debugfs) return; buf = kasprintf(GFP_KERNEL, "amd-xgbe-%s", pdata->netdev->name); if (!buf) return; if (!strcmp(pdata->xgbe_debugfs->d_name.name, buf)) goto out; pfile = debugfs_rename(pdata->xgbe_debugfs->d_parent, pdata->xgbe_debugfs, pdata->xgbe_debugfs->d_parent, buf); if (!pfile) netdev_err(pdata->netdev, "debugfs_rename failed\n"); out: kfree(buf); }