Re: [PATCH] hpsa: do not attempt to read from a write-only register

Andrew Morton
2011-07-22T22:40:11Z

On Thu, 21 Jul 2011 13:16:05 -0500
"Stephen M. Cameron" <scameron@beardog.cce.hp.com> wrote:

> From: Stephen M. Cameron <scameron@beardog.cce.hp.com>
>
> Most smartarrays tolerate it, but a few new ones don't.
> Without this change some newer Smart Arrays will lock up
> and i/o will grind to a halt.
>
> Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com>

Cc: <stable@kernel.org>?

> diff --git a/drivers/scsi/hpsa.h b/drivers/scsi/hpsa.h
> index 6d8dcd4..7f53cea 100644
> --- a/drivers/scsi/hpsa.h
> +++ b/drivers/scsi/hpsa.h
> @@ -214,7 +214,7 @@ static void SA5_submit_command(struct ctlr_info *h,
> dev_dbg(&h->pdev->dev, "Sending %x, tag = %x\n", c->busaddr,
> c->Header.Tag.lower);
> writel(c->busaddr, h->vaddr + SA5_REQUEST_PORT_OFFSET);
> - (void) readl(h->vaddr + SA5_REQUEST_PORT_OFFSET);
> + (void) readl(h->vaddr + SA5_SCRATCHPAD_OFFSET);
> h->commands_outstanding++;
> if (h->commands_outstanding > h->max_outstanding)
> h->max_outstanding = h->commands_outstanding;