Пример #1
0
/*
 * Called whenever an array is shutdown
 */
static void 
rf_UnconfigureArray()
{
	int     rc;

	RF_LOCK_MUTEX(configureMutex);
	if (--configureCount == 0) {	/* if no active configurations, shut
					 * everything down */
		isconfigged = 0;

		rc = rf_ShutdownList(&globalShutdown);
		if (rc) {
			RF_ERRORMSG1("RAIDFRAME: unable to do global shutdown, rc=%d\n", rc);
		}
		rf_shutdown_threadid();

		/*
	         * We must wait until now, because the AllocList module
	         * uses the DebugMem module.
	         */
		if (rf_memDebug)
			rf_print_unfreed();
	}
	RF_UNLOCK_MUTEX(configureMutex);
}
Пример #2
0
/*
 * Called whenever an array is shutdown
 */
static void
rf_UnconfigureArray()
{

	RF_LOCK_LKMGR_MUTEX(configureMutex);
	if (--configureCount == 0) {	/* if no active configurations, shut
					 * everything down */
		isconfigged = 0;
		rf_ShutdownList(&globalShutdown);

		/*
	         * We must wait until now, because the AllocList module
	         * uses the DebugMem module.
	         */
#if RF_DEBUG_MEM
		if (rf_memDebug)
			rf_print_unfreed();
#endif
	}
	RF_UNLOCK_LKMGR_MUTEX(configureMutex);
}