[OpenBIOS] Dictionary size limit per device instance

David L. Paktor dlpaktor at netscape.net
Wed Aug 22 09:57:13 CEST 2007


Asif Haswarey wrote:
> Does anyone happen to know what the dictionary size upper limit
> (for openbios) is hardcoded to per device instance?
>  
>
> _____________
>
> Äsif Haswaréy
>
> QLogic Corporation
>
Hey, Asif!

Technically speaking, an "instance" of a device does not take up any 
dictionary space.  The "package" does.
All "instances" of a device use the same "package" code, and each one 
has its own allocation of memory
to use with the "instance" variables, values, defers that are part of 
the "package" definition.

Many systems, however will, use the identical FCode source to create 
duplicate "package" nodes for
devices that are replicated on a card or board.  Such an approach might, 
at first glance, appear to be
appallingly inefficient, but it might be justified by the need for 
different address (and suchlike) properties
for the replicated devices...  But I digress.

Anyway, I'm guessing that that might be what you might mean by 
"instance" in your question.

On most systems, there is no particular limit on dictionary usage per 
device node other than the general
limit on the overall dictionary, which, of course, may vary by 
manufacturer and possibly by platform and
version..

One exception comes to mind:  Sun's mid-range Enterprise servers, models 
E3000 through E6500
were configured with a number of "slots" (more on the higher-numbered 
models) into which could
be placed, interchangeably, CPU boards or one of several flavors of I/O 
boards.  Furthermore,
the systems were intended to support Dynamic Reconfiguration.  When a 
board was placed in a
slot, part of its installation procedure was that Open Boot PROM would 
probe it, interpreting its
FCode to build new device nodes.  The mechnism chosen to simplify 
managing the dictionary
was to reserve a generous -- but fixed -- amount of dictionary space for 
each slot; when a slot
was not in use, the linked-list would simply skip over the reserved 
space.  After a new board
was installed and probed, the links would be adjusted to include the new 
entries.  If an overflow
occurred, well, all the system could do was to scream a warning and fail 
the installation.

So, having said all that I am left only with a guess about OpenBIOS:  
I'd guess it follows the
"most systems" pattern.  Stefan, any more details?

-- 

David L. Paktor             dlpaktor at netscape.net




More information about the OpenBIOS mailing list