[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110107213302.GI7355@mtj.dyndns.org>
Date: Fri, 7 Jan 2011 16:33:02 -0500
From: Tejun Heo <tj@...nel.org>
To: Jeff Garzik <jeff@...zik.org>
Cc: Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Nick Piggin <npiggin@...nel.dk>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Chris Mason <chris.mason@...cle.com>,
Frank Rowand <frank.rowand@...sony.com>,
Ingo Molnar <mingo@...e.hu>,
Thomas Gleixner <tglx@...utronix.de>,
Mike Galbraith <efault@....de>,
Oleg Nesterov <oleg@...hat.com>, Paul Turner <pjt@...gle.com>,
Jens Axboe <axboe@...nel.dk>,
Yong Zhang <yong.zhang0@...il.com>,
linux-kernel@...r.kernel.org,
Jeremy Fitzhardinge <jeremy@...p.org>,
Linux-Arch <linux-arch@...r.kernel.org>,
linux-scsi <linux-scsi@...r.kernel.org>,
IDE/ATA development list <linux-ide@...r.kernel.org>
Subject: Re: [RFC][PATCH] spinlock: Kill spin_unlock_wait()
Hello, Jeff.
On Fri, Jan 07, 2011 at 04:13:53PM -0500, Jeff Garzik wrote:
> > Hmm... I think the ->eng_timeout path is already dead. We no longer
> > have any in-kernel implementation, so killing spin_unlock_wait()
> > should be fine. I'll follow up with removal of the unused callback.
>
> Unfortunately... libsas continues to avoid the new EH :(
>
> It's a hairy mess to untangle, too. libata does proper error handling
> of ATA device errors, notably NCQ error handling, which libsas sorely
> misses. But libata new EH assumes a bit too much about "owning" the
> entirety of the EH process. These assumptions are proper for wholly
> ATA drivers (drivers/ata/*) where new EH can drive the EH process, but
> in the SAS situation, a phy in SATA mode is simply a subset of a
> larger set of EH conditions that must be handled.
>
> Thus libsas uses the ancient libata hook ->phy_reset and lacks ->error_handler.
>
> I think libata's old-EH path is entirely SAS-specific at this point.
Hmm... but they don't use ata_scsi_error() and ->eng_timeout() at all,
no? We can't remove phy_reset() and need to keep the silly "if
(->error_handler)" tests around but should be able to remove those
from ata_scsi_error() and other EH routines, at least. Am I missing
something?
Thanks.
--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists