Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d0be5ec8 authored by Stephen M. Cameron's avatar Stephen M. Cameron Committed by James Bottomley
Browse files

[SCSI] hpsa: do readl after writel in main i/o path to ensure commands don't get lost.



Apparently we've been doin it rong for a decade, but only lately do we
run into problems.

Signed-off-by: default avatarStephen M. Cameron <scameron@beardog.cce.hp.com>
Signed-off-by: default avatarJames Bottomley <jbottomley@parallels.com>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@suse.de>
parent 72ef0e57
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -212,6 +212,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);
	h->commands_outstanding++;
	if (h->commands_outstanding > h->max_outstanding)
		h->max_outstanding = h->commands_outstanding;