recon_queue = NULL;
raidattach(num)	int num;{	int raidID;	int i, rc;	db1_printf(("raidattach: Asked for %d units\n", num));	if (num <= 0) {#ifdef DIAGNOSTIC		panic("raidattach: count <= 0");#endif		return;	}	/* This is where all the initialization stuff gets done. */	/* Make some space for requested number of units... */	RF_Calloc(raidPtrs, num, sizeof(RF_Raid_t *), (RF_Raid_t **));	if (raidPtrs == NULL) {		panic("raidPtrs is NULL!!\n");	}	rc = rf_mutex_init(&rf_sparet_wait_mutex);	if (rc) {	        RF_PANIC();        }	rf_sparet_wait_queue = rf_sparet_resp_queue = NULL;	recon_queue = NULL;	for (i = 0; i < numraid; i++)	        raidPtrs[i] = NULL;	rc = rf_BootRaidframe();	if (rc == 0)	        printf("Kernelized RAIDframe activated\n");	else	        panic("Serious error booting RAID!!\n");		rf_kbooted = RFK_BOOT_GOOD;	/*	 * Put together some datastructures like the CCD device does..	 * This lets us lock the device and what-not when it gets opened.	 */		raid_softc = (struct raid_softc *)	    malloc(num * sizeof (struct raid_softc), M_RAIDFRAME, M_NOWAIT);	if (raid_softc == NULL) {		printf("WARNING: no memory for RAIDframe driver\n");		return;	}	numraid = num;	bzero(raid_softc, num * sizeof (struct raid_softc));	for (raidID = 0; raidID < num; raidID++) {		RF_Calloc(raidPtrs[raidID], 1, sizeof (RF_Raid_t),		    (RF_Raid_t *));		if (raidPtrs[raidID] == NULL) {			printf("raidPtrs[%d] is NULL\n", raidID);		}	}}