blk_queue_hardsect_size(host->queue, drv->block_size); 
blk_queue_hardsect_size(drv->queue, drv->block_size); 
static int revalidate_allvol(ctlr_info_t *host){	int ctlr = host->ctlr, i;	unsigned long flags;        spin_lock_irqsave(CCISS_LOCK(ctlr), flags);        if (host->usage_count > 1) {                spin_unlock_irqrestore(CCISS_LOCK(ctlr), flags);                printk(KERN_WARNING "cciss: Device busy for volume"                        " revalidation (usage=%d)\n", host->usage_count);                return -EBUSY;        }        host->usage_count++;	spin_unlock_irqrestore(CCISS_LOCK(ctlr), flags);	for(i=0; i< NWD; i++) {		struct gendisk *disk = host->gendisk[i];		if (disk->flags & GENHD_FL_UP)			del_gendisk(disk);	}        /*         * Set the partition and block size structures for all volumes         * on this controller to zero.  We will reread all of this data         */        memset(host->drv,        0, sizeof(drive_info_struct)						* CISS_MAX_LUN);        /*         * Tell the array controller not to give us any interrupts while         * we check the new geometry.  Then turn interrupts back on when         * we're done.         */        host->access.set_intr_mask(host, CCISS_INTR_OFF);        cciss_getgeometry(ctlr);        host->access.set_intr_mask(host, CCISS_INTR_ON);	/* Loop through each real device */ 	for (i = 0; i < NWD; i++) {		struct gendisk *disk = host->gendisk[i];		drive_info_struct *drv = &(host->drv[i]);		/* we must register the controller even if no disks exist */		/* this is for the online array utilities */		if (!drv->heads && i)			continue;		blk_queue_hardsect_size(host->queue, drv->block_size);		set_capacity(disk, drv->nr_blocks);		add_disk(disk);	}        host->usage_count--;        return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/ad2b93123d2b3cb4ba9a98dd5f62acb6d6b50391/cciss.c/clean/drivers/block/cciss.c