/* Cannot sleep here or you get hangs. Instead we did the maths at compile time. */ if(!fibptr) BUG(); 
if(!fibptr){ spin_unlock_irqrestore(&dev->fib_lock, flags); return fibptr; } 
struct fib * fib_alloc(struct aac_dev *dev){	struct fib * fibptr;	unsigned long flags;	spin_lock_irqsave(&dev->fib_lock, flags);	fibptr = dev->free_fib;		/* Cannot sleep here or you get hangs. Instead we did the	   maths at compile time. */	if(!fibptr)		BUG();	dev->free_fib = fibptr->next;	spin_unlock_irqrestore(&dev->fib_lock, flags);	/*	 *	Set the proper node type code and node byte size	 */	fibptr->type = FSAFS_NTC_FIB_CONTEXT;	fibptr->size = sizeof(struct fib);	/*	 *	Null out fields that depend on being zero at the start of	 *	each I/O	 */	fibptr->hw_fib->header.XferState = 0;	fibptr->callback = NULL;	fibptr->callback_data = NULL;	return fibptr;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/7c00ffa314bf0fb0e23858bbebad33b48b6abbb9/commsup.c/clean/drivers/scsi/aacraid/commsup.c