> > I'm surprised to see the DLD namespace (and the <sys/dld.h> header)
> > leaking into the MAC driver API. The DLD prefix is intended to be used by
> > the private API between libdladm and the data link driver (dld) itself.
> > It's not clear to me what that has to do the MAC driver API exported to
> > drivers. (I see that the existing Brussels link properties use "DLD" too,
> > but I don't understand that either. I also see there appear to be unused
> > DLD_NDD_{READ,WRITE} #defines adrift in Nevada.)
>
> I've always felt the distinction between dld and mac "felt" random at
> times.
For the MAC Client API it can be a bit blurry, but the MAC Driver API
seems clearer. I looked a number of GLDv3 drivers in ON using the API and
none of them (aside from bge with the Brussels conversion) are pulling in
<sys/dld.h>. My understanding is that <sys/dld.h> is an implementation
detail, and does not belong in any APIs that we might raise to committed.
> Add in dls, and mere mortals like myself have a really hard time
> figuring out what lives where.
I hear that a lot of this is changing with Crossbow, so hopefully it will
be getting simpler.
> I would be happier to see consistent naming in the APIs though,
> admittedly. Perhaps this can be rectified with a follow-on fast-track
> for Brussels. (Things like this are one of the reasons that I've been
> hesitant in the past to raise commitment levels of Nemo related APIs too
> quickly, btw.)
Why not fix this now? (The existing Brussels DLD_* constants can be dealt
with at another time.)
--
meem