Beispiel #1
1
static void usbrh_delete(struct kref *kref)
{
    struct usbrh *dev;

    dev = container_of(kref, struct usbrh, kref);

    remove_proc_subtree(USBRH_DIGIT_STR[dev->index], usbrh_proc_base);

    usb_put_dev(dev->udev);
    kfree(dev);
}
Beispiel #2
0
void ipsec_proc_cleanup(void)
{
	struct ipsec_proc_list *it;

	/* remove entries in reverse */
	for (it = proc_items; it->name; it++)
		;
	for (it--; it >= proc_items && it->name; it--)
		remove_proc_subtree(it->name, *it->parent);

	remove_proc_subtree("ipsec_klipsdebug", PROC_NET);
	remove_proc_subtree("ipsec_eroute",     PROC_NET);
	remove_proc_subtree("ipsec_spi",        PROC_NET);
	remove_proc_subtree("ipsec_spigrp",     PROC_NET);
#ifdef IPSEC_SA_RECOUNT_DEBUG
	remove_proc_subtree("ipsec_saraw",      PROC_NET);
#endif
	remove_proc_subtree("ipsec_tncfg",      PROC_NET);
	remove_proc_subtree("ipsec_version",    PROC_NET);
	remove_proc_subtree("ipsec",            PROC_NET);
}
int reiserfs_proc_info_done(struct super_block *sb)
{
	struct proc_dir_entry *de = REISERFS_SB(sb)->procdir;
	if (de) {
		char b[BDEVNAME_SIZE];
		char *s;

		/* Some block devices use /'s */
		strlcpy(b, reiserfs_bdevname(sb), BDEVNAME_SIZE);
		s = strchr(b, '/');
		if (s)
			*s = '!';

		remove_proc_subtree(b, proc_info_root);
		REISERFS_SB(sb)->procdir = NULL;
	}
	return 0;
}
Beispiel #4
0
/*----------------------------------------------------------------------------*/
INT_32 procRemoveProcfs(struct net_device *prDev, char *pucDevName)
{
	P_GLUE_INFO_T prGlueInfo = NULL;

	DBGLOG(INIT, INFO, ("[%s]\n", __func__));

	ASSERT(prDev);

	if (!prDev)
		return -ENOENT;

	if (init_net.proc_net == (struct proc_dir_entry *)NULL) {
		DBGLOG(INIT, WARN, ("remove proc fs fail: proc_net == NULL\n"));
		return -ENOENT;
	}

	prGlueInfo = *((P_GLUE_INFO_T *) netdev_priv(prDev));
	if (!prGlueInfo->pProcRoot) {
		DBGLOG(INIT, WARN, ("The procfs root is NULL\n"));
		return -ENOENT;
	}
#if 0
#if DBG
	remove_proc_entry(PROC_DBG_LEVEL, prGlueInfo->pProcRoot);
#endif /* DBG */
	remove_proc_entry(PROC_TX_STATISTICS, prGlueInfo->pProcRoot);
	remove_proc_entry(PROC_RX_STATISTICS, prGlueInfo->pProcRoot);
	remove_proc_entry(PROC_DRV_STATUS, prGlueInfo->pProcRoot);
#endif
	remove_proc_entry(PROC_WLAN_THERMO, init_net.proc_net);
	remove_proc_subtree(pucDevName, init_net.proc_net);
	/* remove root directory (proc/net/wlan0) */
	/* remove_proc_entry(pucDevName, init_net.proc_net); */
#if CFG_SUPPORT_THERMO_THROTTLING
	g_prGlueInfo_proc = NULL;
#endif

	return 0;

}				/* end of procRemoveProcfs() */
INT_32 procUninitProcFs(VOID)
{
	remove_proc_entry(PROC_DBG_LEVEL_NAME, gprProcRoot);
	remove_proc_subtree(PROC_ROOT_NAME, init_net.proc_net);
	return 0;
}
Beispiel #6
0
static void pvc_proc_cleanup(void)
{
	remove_proc_subtree(DISPLAY_DIR_NAME, NULL);
	del_timer_sync(&timer);
}