cciss: do not attempt to read from a write-only register
authorStephen M. Cameron <scameron@beardog.cce.hp.com>
Sat, 9 Jul 2011 07:04:12 +0000 (09:04 +0200)
committerJens Axboe <jaxboe@fusionio.com>
Sat, 9 Jul 2011 07:04:12 +0000 (09:04 +0200)
Most smartarrays will tolerate it, but some new ones don't.

Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com>
Note: this is a regression caused by commit 1ddd5049
Cc: stable@kernel.org
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
drivers/block/cciss.h

index 16b4d58d84dd1e690a63b2f91efdce58aafe8d44..c049548e68b7ba39d27cf7b9c216868c8fc2b18e 100644 (file)
@@ -223,7 +223,7 @@ static void SA5_submit_command( ctlr_info_t *h, CommandList_struct *c)
                        h->ctlr, c->busaddr);
 #endif /* CCISS_DEBUG */
          writel(c->busaddr, h->vaddr + SA5_REQUEST_PORT_OFFSET);
-       readl(h->vaddr + SA5_REQUEST_PORT_OFFSET);
+       readl(h->vaddr + SA5_SCRATCHPAD_OFFSET);
         h->commands_outstanding++;
         if ( h->commands_outstanding > h->max_outstanding)
                h->max_outstanding = h->commands_outstanding;