Re: [RFC/PATCH, 2/4] readX_check() performance evaluation

From: Matthew Wilcox <willy_at_debian.org>
Date: 2004-01-28 14:09:58
On Wed, Jan 28, 2004 at 10:54:37AM +0900, Hironobu Ishii wrote:
> This is a readX_check() prototype patch to evaluate
> the performance disadvantage.

I think you've just demonstrated why this type of interface is unacceptable:

> + #ifdef CONFIG_PCI_RECOVERY
> +   {
> +    int read_fail;
> +    read_fail = CHIPREG_READ32(&pa, &ioc->chip->ReplyFifo);
> +    if (read_fail) {
> +     printk("PCI PIO read error:%d\n", read_fail);
> +     /* recovery code */
> +    }
> +    if (pa == 0xFFFFFFFF)
> +     return IRQ_HANDLED;
> +   }
> + #else
>     if ((pa = CHIPREG_READ32(&ioc->chip->ReplyFifo)) == 0xFFFFFFFF)
>      return IRQ_HANDLED;
> ! #endif

We go from two easily understood lines to ten plus the recovery code.
If indeed recovery is even possible.  An exception framework is clearly
the way to do this.

-- 
"Next the statesmen will invent cheap lies, putting the blame upon 
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince 
himself that the war is just, and will thank God for the better sleep 
he enjoys after this process of grotesque self-deception." -- Mark Twain
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Tue Jan 27 22:14:15 2004

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:21 EST