Re: [PATCH 11/12] libata: use IRQ expecting
From: Tejun Heo
Date: Fri Jun 25 2010 - 05:52:40 EST
On 06/25/2010 11:48 AM, Jeff Garzik wrote:
> My basic point is that you are implicitly changing the entire
> ata_qc_complete() API, and associated underlying assumptions.
> The existing assumption, since libata day #0, is that ata_qc_complete()
> works entirely within the scope of a single qc -- thus enabling multiple
> calls for a single controller interrupt. Your change greatly widens the
> scope to an entire port.
Yeah, I'm changing that and it actually reduces code.
> This isn't just an issue with sata_mv, that was just the easy example I
> remember off the top of my head. sata_fsl and sata_nv also make the
> same assumption. And it's a reasonable assumption, IMO.
Yeah, already updating all of them.
> I think an unexpect_irq() call is more appropriate outside
The choices we have here are....
1. Update completion API so that libata core layer has enough
information to decide expect/unexpect events.
2. Add expect/unexpect calls to individual drivers.
I think #1 is much better now and in the long run. The code actually
looks better too.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/