--- ./drivers/block/cciss.c.16-rc5 2006-03-01 11:13:03.000000000 +0300 +++ ./drivers/block/cciss.c 2006-03-02 09:30:38.000000000 +0300 @@ -1893,7 +1893,7 @@ static unsigned long pollcomplete(int ct for (i = 20 * HZ; i > 0; i--) { done = hba[ctlr]->access.command_completed(hba[ctlr]); if (done == FIFO_EMPTY) - schedule_timeout_uninterruptible(1); + msleep(1); else return (done); } @@ -2817,8 +2817,7 @@ static int cciss_pci_init(ctlr_info_t *c scratchpad = readl(c->vaddr + SA5_SCRATCHPAD_OFFSET); if (scratchpad == CCISS_FIRMWARE_READY) break; - set_current_state(TASK_INTERRUPTIBLE); - schedule_timeout(HZ / 10); /* wait 100ms */ + msleep(100); /* wait 100ms */ } if (scratchpad != CCISS_FIRMWARE_READY) { printk(KERN_WARNING "cciss: Board not ready. Timed out.\n"); @@ -2903,8 +2902,7 @@ static int cciss_pci_init(ctlr_info_t *c if (!(readl(c->vaddr + SA5_DOORBELL) & CFGTBL_ChangeReq)) break; /* delay and try again */ - set_current_state(TASK_INTERRUPTIBLE); - schedule_timeout(10); + msleep(10); } #ifdef CCISS_DEBUG # # Patch makes fair initialization timeouts in cciss driver. # # Signed-off-by: Konstantin Khorenko