James Carlson wrote:
[EMAIL PROTECTED] writes:
One of the features that makes ndd very popular is that it allows
the setting of these debug/workaround knobs "on the fly", i.e., no reboot
required (as in /etc/system), and the driver can actually re-adjust
its state based on the setting requested (mdb cannot trigger state
re-adjustment in the driver by itself).

Yep; understood.

Providing a way to do this on-the-fly debug/workaround setting was
one of the motivations for private properties. I agree that there is a
danger of abuse here, and maybe we can think of ways to control
the danger (by controlling documentation, perhaps?), but I see a benefit
in having private props for the short term, at least.

It's exactly that abuse that I'm worried about.  One of the reasons
for doing Brussels is that driver parameters have historically been
the Old West for configuration.  How do we make sure that Brussels
itself doesn't become just a new dumping ground?

Actually, I myself felt that bcopy/dma threshold, as well as
some of the ipg properties that have been suggested as public property
candidates, also fell in the "Advanced Usage" bucket..

Ick.  I'd put it in the class of things that, if we were producing
solid designs, would just never need to be touched at all.  There's a
line here between allowing configuration for special purposes
(disabling autonegotiation, perhaps) and asking our customers to do
our design work for us (by figuring out the "optimal" way to move
data).  This is one that I think walks over the line.

We need a better answer.

Would it be good for us to retain them somehow in early phase of Brussel, like by ways of keep it as "private" properties? For backward compatibility reason, some customers might rely on those private properties in their production env. Before we provide enough tuning in framework, they will lose nothing.
I like Raymond's proposal..

I'd rather see those things left behind whereever they are -- ndd,
driver.conf -- and left out of Brussels user interfaces, with bugs
filed to have them removed completely over time.

One quick note on this theory. I do not want to leave them "where they are" (if that is in ndd), if that means that old device drivers have to retain all the crufty ndd logic _in addition_ to implementing the new Brussels API.

HOWEVER, I like the idea that some of these "legacy" parameters that we don't particularly want to encourage might not be available/advertised via the new dladm API. Maybe what Brussels needs is a way to say "expose this property via NDD only". (In fact, I think I suggested just such a thing in my detailed design suggestion, that I think nobody else read. :-)

Eventually, hopefully we'll be able to remove this legacy cruft and replace them with a better framework. But, at the moment, for some of these (like the bcopy/dma/buffer management issues), this requires substantial new effort that management has yet to express a real interest in. (Yes, I've been campaigning for this project ... to the point that I want to do it myself under the guise of a Nemo II or somesuch. Folks with managerial influence are encouraged to voice their opinions in this regard. :-)

   -- Garrett
_______________________________________________
networking-discuss mailing list
[email protected]

Reply via email to