[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: HyperSPARC patches (?)



On Mon, 17 Apr 2006, BERTRAND Joël wrote:

Thanks. But I cannot try on my SS20 (HyperSPARC) due to a bug in initramfs-tools (HyperSPARC cannot use a ramfs to boot). Can you send to me a patch file with your fixes ?

I'm booting my SS20 (with HyperSPARC CPU) quite happily with initramfs generated by yaird, after adding esp explicitly to /etc/yaird/Default.cfg. I tried initramfs-tools and it does look broken, could you please file a bug so that we can keep track of this problem?

Anyway, the patch in question is attached. Note that it's the actual patch downloaded from git, so you need to apply it with -R (reversed) to undo its effect.

Best regards,

Jurij Smakov                                        jurij@wooyd.org
Key: http://www.wooyd.org/pgpkey/                   KeyID: C99E03CC
From: Christoph Hellwig <hch@lst.de>
Date: Wed, 22 Feb 2006 22:35:52 +0000 (-0800)
Subject: [SCSI] esp: fix eh locking
X-Git-Tag: v2.6.16-rc5
X-Git-Url: http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=a6ceda7457b2303dcb07d3c472b25d52bbdb5a29

[SCSI] esp: fix eh locking

esp_reset didn't get fixed when the EH locking changed.
->eh_bus_reset_handler is now called without the host lock held.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
---

--- a/drivers/scsi/esp.c
+++ b/drivers/scsi/esp.c
@@ -2068,14 +2068,12 @@ static int esp_reset(struct scsi_cmnd *S
 {
 	struct esp *esp = (struct esp *) SCptr->device->host->hostdata;
 
+	spin_lock_irq(esp->ehost->host_lock);
 	(void) esp_do_resetbus(esp);
-
 	spin_unlock_irq(esp->ehost->host_lock);
 
 	wait_event(esp->reset_queue, (esp->resetting_bus == 0));
 
-	spin_lock_irq(esp->ehost->host_lock);
-
 	return SUCCESS;
 }
 

Reply to: