Artem Kachitchkine wrote:
>
> Maintaining good programming practices is largely orthogonal to the 
> bundled/unbundled discussion. If it's easier for someone to think in 
> terms of consolidations, recall that the driver consolidation has been 
> on the table and imagine that it happened. If I can uninstall a driver 
> package (and those that depend on it) and still end up with a 
> perfectly functional system, consider it not an integral part of the 
> core system and continue using DDI like any other disciplined driver 
> developer, ON or not.
>
> -Artem

Heh.  That's a nice theory.  Except for one "itsy bitsy little issue".  
Except for drivers for a few well known classes, you *cannot* adhere to 
the DDI simply because there is no DDI compliant way to populate /dev!  
The devfsadm plugin framework is clearly not public (and its entirely 
unsuited to being so right now... take a look at a plugin if you want 
proof).  There is, I guess, /etc/devlink.tab, from legacy ... although I 
don't know that it was ever "documented" as such, apart from the inline 
contents in the file.  (And folks aren't supposed to be using that 
anymore, are they?  devfsadm plugins is the "preferred" way, although 
like GLDv3, and probably a bunch of other things besides, it remains 
"undocumented".)

Believe me, I'm all for the DDI.  You can go and look at afe, which 
apart from being GLDv3 is DDI compliant.  (It was previously a DDI 
compliant GLDv2 driver... even passed DDICT.)  I don't think this 
particular fight (the one with /devices) is worth it, though.

Anyway, if the only reasonable way for the heci driver to expose itself 
to userland is via /dev, requiring a devfsadm plugin (ugh), then so be 
it.  I'll withdraw my suggestion, and instead request that if we are not 
to use /devices for "internal communication", then the devfs project 
team needs to gives us an easier and documented way to publish devlinks.

    -- Garrett


Reply via email to