[openib-general] Re: [PATCH 9 of 18] ipath - char devices for diagnostics and lightweight subnet management
Michael S. Tsirkin
mst at mellanox.co.il
Thu Mar 23 01:37:13 PST 2006
Quoting r. Bryan O'Sullivan <bos at pathscale.com>:
> > Could you please explain why is this useful? Users could not care less -
> > they never have to touch an SMA.
>
> We have customers who use our driver who do not want a full IB stack
> present, for example in embedded environments.
I understand they do, but they could just use the parts of IB stack and never
notice. In my experience, embedded systems are typically diskless - why is a
userspace SMA better than kernel-level one for them? The advantage would be
everyone using a single kernel/user interface, common utilities for
management, diagnostics ... I could go on.
So what's your point? Memory usage? Let's take a look:
ib_mad is the IB stack module that includes between other things the
kernel-level SMA (BTW, if necessary, you should be able to split it out so that
it is only loaded on demand):
I think IB stack is modest, as core modules go.
Here's how a loaded IB stack looks like on my system:
Module Size Used by
ib_mad 36260 2 ib_ipath,ib_mthca
ib_core 46080 3 ib_ipath,ib_mthca,ib_mad
So there are *maximum* 82K code to save. This is a 64-bit system, I think
embedded systems are usually 32 bit so there'll be just 41K.
And I don't believe you can save much since as a solution you seem to have
re-implemented the full IB stack in your low level driver:
Module Size Used by
ib_ipath 79256 0
ipath_core 159764 1 ib_ipath
By contrast, a low-level which doesn't reimplement IB core is just a bit
above 100K.
--
Michael S. Tsirkin
Staff Engineer, Mellanox Technologies
More information about the general
mailing list