Multiple MSI, take 4

From: Matthew Wilcox
Date: Fri Jul 11 2008 - 17:16:20 EST



Here we go with take 4. Changes:

- Check the requested number of interrupts against the maximum number
the device claims to support. Thanks to Hidetoshi Seto for pointing
out this oversight.
- Implemented Eric's suggestion of using a single IRQ and storing the
data with it.
- As a result, don't try to support the mode in the AHCI driver where
the excess ports all share the last interrupt. It could be done, but
it would be rather messy and I don't have hardware that supports that
mode anyway.

I'm fairly comfortable with the subchannel notion we're introducing
here. It's more flexible than MSI and doesn't impose a penalty on
architectures which don't implement it. It makes some things more
complex, but it makes other things simpler, so I think it's a wash from
a cleanliness standpoint.

Git tree still at
git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc.git multiple-msi
(and this push specifically at multiple-msi-20080711)

Patches to follow.

--
Intel are signing my paycheques ... these opinions are still mine
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
--
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/