First, Linus says "Fuck you, NVidia for not getting Optimus support."
Second, NVidia says "HEY! We need this interface so we can get you Optimus support. Can you open it up so we don't get screwed by everyone?"
Third, Alan Cox et al says "Screw you, we ain't budging! No!"
So what's the whole frigging deal here? Nvidia asked and everyone but Linus said no, yet Linus wants it. Users are listening to Linus. Nvidia is listening to Linus and it's users. The users are demanding both to get it done. But the kernel developers save for Linus aren't listening.
Plus, look at the future. Nobody will be able to support DMA 3 because it's too balled up in legaleze backed by developers who aren't going to bulge. So who's to blame for this?
It ain't Linus. And it ain't Nvidia. And soon it won't be AMD nor Intel.
Alan Cox owes me a new laptop.