[PATCH 2/2] I/O port access routines

Luc Verhaegen libv at skynet.be
Fri Nov 20 04:29:18 PST 2009

On Thu, Nov 19, 2009 at 01:58:52PM -0500, Adam Jackson wrote:
> On Thu, 2009-11-19 at 18:25 +0100, Luc Verhaegen wrote:
> > The baby was thrown out with the bathwater with libpciaccess and vga 
> > arbitration, and now suddenly the plan seems to be to put these new 
> > enable/disable hooks all over the driver, together with slightly more 
> > involved IN/OUT calls.
> The enable/disable thing, no.  That wrapping is in the server.  You
> don't have to do it from your driver.
> You seem to be putting words in my mouth with the in/out stuff though.
> I haven't actually said anything (yet) about whether the drivers may
> continue to use the old in/out calls.  All I've done here is add API to
> the hardware access library to let me get at the third of the three
> address spaces the hardware exposes.

Oh, so now you _are_ threatening to impose some new API on drivers?


Let me quote part of another mail:

> * Why do it that way?
> * Because it's just how we did it, ok? now stfu.

> Now, drivers _ought_ not use the old API.  And I'm entirely willing to
> fix the drivers to use the new API conditional on its presence.  But if
> you really want the freedom to make your driver continue to not work
> with multiple PCI domains, then I guess that's a choice you can make.

Well, my out of tree driver has long stopped using direct IO, so i can 
take away your enjoyment there already.

> You're using "NIH" as something of a scarlet letter here.  That's a
> thing you can do, although it's sort of comical.  It might even be a
> true description of the motivation, for all it matters.  You're also
> conflating the RAC and PCI layers a bit more than is deserved.  And I
> should point out (again) that I do _not_ think the transition was
> handled well.
> But, in the end, I think you're mistaken about the practicality of
> "reworking the backend".  Taking off and nuking the site from orbit
> really was the right move.
> All of which is lovely parlour conversation, but doesn't really address
> the patch.  I have this feature in mind.  I wrote some code to implement
> it.  I think it would make life better.  Are you suggesting that it
> would make life worse?
> - ajax

Oh, i have no doubt that your patch is making _current_ life better, but 
it once again exposes the huge shortsighted mistake made several years 
ago. Way more problems were created than were fixed.

Maybe I should blame myself for all of it. If i had been more lazy, 
then the ati probe code would still be a mess. And then maybe no-one 
would've accepted libpciaccess in that shape until finally someone else 
came round with big enough guts and clue to go and fix up the ati 
wrapper like that.

But don't expect me to shut up about NIH. It describes quite a lot of 
the behaviour of parts of the X.org community. But i of course do not 
expect you to acknowledge that.

Luc Verhaegen.

More information about the xorg-devel mailing list