From patchwork Mon Jun 22 14:39:50 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartlomiej Zolnierkiewicz X-Patchwork-Id: 29001 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@bilbo.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from ozlabs.org (ozlabs.org [203.10.76.45]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "mx.ozlabs.org", Issuer "CA Cert Signing Authority" (verified OK)) by bilbo.ozlabs.org (Postfix) with ESMTPS id 414D7B7155 for ; Tue, 23 Jun 2009 00:36:26 +1000 (EST) Received: by ozlabs.org (Postfix) id 2D263DDDA1; Tue, 23 Jun 2009 00:36:26 +1000 (EST) Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by ozlabs.org (Postfix) with ESMTP id AD226DDD1C for ; Tue, 23 Jun 2009 00:36:25 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756772AbZFVOgS (ORCPT ); Mon, 22 Jun 2009 10:36:18 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1756436AbZFVOgP (ORCPT ); Mon, 22 Jun 2009 10:36:15 -0400 Received: from mail-bw0-f213.google.com ([209.85.218.213]:46158 "EHLO mail-bw0-f213.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751901AbZFVOgM (ORCPT ); Mon, 22 Jun 2009 10:36:12 -0400 Received: by bwz9 with SMTP id 9so3187117bwz.37 for ; Mon, 22 Jun 2009 07:36:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:to:subject:date :user-agent:cc:references:in-reply-to:mime-version :content-disposition:content-type:content-transfer-encoding :message-id; bh=yJcpLaDnxzD67BpyC0DG20IrKBNDl9OjurnPUHhBPxw=; b=VN9iCkajk7G6MtFH+/BN78fpuGBIn2ilyP0cxCESxpPDKkquJZjJVDSNNQf6LXz51B HOWgsE7jqydhA7VJ4EGDQU6e8lAU7F8HGrJL+FQiagb2V09zHVfEUZjhZCoZBQYg7eKG gYqaJw/R5F59It5K4L6g/ARRj2WQ5XH3MgWOk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:subject:date:user-agent:cc:references:in-reply-to :mime-version:content-disposition:content-type :content-transfer-encoding:message-id; b=xWZ0PeNpqD4WQ7bFFHSaZNtpuB+IBdgxBou18erMHR8+xnFBXOB56SAxTAlZzfCk+C Azw45MDEmhYivvOptpj0u7YtJAGELZLK5N0VxcZ9nqZTwMxoXi/96eIEN+XObR0/+4mE IWFu7kCRxt+E63pDr1ooPNhKd5AeY4uR2bWDI= Received: by 10.103.243.9 with SMTP id v9mr2304380mur.69.1245681372731; Mon, 22 Jun 2009 07:36:12 -0700 (PDT) Received: from localhost.localdomain (chello089077034197.chello.pl [89.77.34.197]) by mx.google.com with ESMTPS id y2sm12144462mug.13.2009.06.22.07.36.10 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 22 Jun 2009 07:36:11 -0700 (PDT) From: Bartlomiej Zolnierkiewicz To: Frans Pop Subject: Re: cmd64x: irq 14: nobody cared - system is dreadfully slow Date: Mon, 22 Jun 2009 16:39:50 +0200 User-Agent: KMail/1.11.3 (Linux/2.6.30-next-20090619-10934-gace1e80-dirty; KDE/4.2.3; i686; ; ) Cc: David Miller , sparclinux@vger.kernel.org, linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org References: <200906211446.38598.elendil@planet.nl> <200906221321.44672.bzolnier@gmail.com> <200906221604.17915.elendil@planet.nl> In-Reply-To: <200906221604.17915.elendil@planet.nl> MIME-Version: 1.0 Content-Disposition: inline Message-Id: <200906221639.52205.bzolnier@gmail.com> Sender: sparclinux-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: sparclinux@vger.kernel.org On Monday 22 June 2009 16:04:15 Frans Pop wrote: > On Monday 22 June 2009, you wrote: > > From: Bartlomiej Zolnierkiewicz > > Subject: [PATCH] ide: fix handling of unexpected IRQs vs request_irq() > > > > Add ide_host_enable_irqs() helper and use it in ide_host_register() > > before registering ports. Then remove no longer needed IRQ unmasking > > from in init_irq(). > > > > This should fix the problem with "screaming" shared IRQ on the first > > port (after request_irq() call while we have the unexpected IRQ pending > > on the second port) which was uncovered by my rework of the serialized > > interfaces support. > > Thanks Bart. This does solve the "nobody cared" problem. > Tested-by: Frans Pop > > I also tested it without David's initial patch (i.e. *with* > IDE_HFLAG_SERIALIZE in host-flags) and that seems to work fine too: > ide0 at 0x1fe02c00000-0x1fe02c00007,0x1fe02c0000a on irq 14 (serialized) > ide1 at 0x1fe02c00010-0x1fe02c00017,0x1fe02c0001a on irq 14 (serialized) Great, thanks for testing it (and once again sorry for the trouble). > No idea whether serialized is to be preferred or not. Guess that's David's > call now. Since you have verified that serialization is not needed we should get rid of it while we are at it (it negatively affects performance of simultaneous operations on both ports of the controller). > I do still get the "bad DMA info in identify block" error for the CD > drive, so that's still a regression relative to 2.6.26: > hdd: host max PIO5 wanted PIO255(auto-tune) selected PIO4 > -hdd: MWDMA2 mode selected > +hdd: bad DMA info in identify block > +hdd: host max PIO5 wanted PIO255(auto-tune) selected PIO4 I begin to wonder whether this problem could be the one responsible for generating the spurious IRQ that we are seeing on the second port (I think that this is _very_ likely).. I promised to look into it but I still need a identify block content to tell more (you can add #define DEBUG to the ide-probe.c so we will get id before and after changing of transfer mode settings): --- drivers/ide/ide-probe.c | 2 ++ 1 file changed, 2 insertions(+) -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Index: b/drivers/ide/ide-probe.c =================================================================== --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c @@ -39,6 +39,8 @@ #include #include +#define DEBUG + /** * generic_id - add a generic drive id * @drive: drive to make an ID block for