Re: [infiniband-diags] [PATCH] [2/2] split out scan specific data from ibnd_node_t

Sasha Khapyorsky
2009-11-13T02:09:23Z

On 15:10 Thu 12 Nov , Sean Hefty wrote:
> >
> >I'm not asking to make high level life harder :). My point is to not
> >prevent from advanced developers to use available low level too,
> >especially when such preventing requires some extra efforts.
>
> I haven't been following the details of this thread, but it's very common to
> expose only a portion of a data structure to the user, while keeping some of it
> private.

Of course we can easily find such examples, and also will find others
not less useful where all internal data is exposed (libibumad for
example).

I think that if library interface is designed so that some typical
task/tools (high or low level) cannot be implemented easily than likely
this would be example of a poor interface regardless to how public/private
data structures were separated in this library.

> As long as the lower library allocates the structure and exchanges
> pointers, the interface can be maintained.

Just to be clear - the example of "low level" data triggered this round
of the discussion is node's direct path generated during subnet
discovery (another was discovery BFS graph, but this one "was lost"
already).

Sasha