On Sun, Jan 29, 2023 at 05:24:31AM +0000, Wu, Jiaxin wrote:
> Thanks Gerd raise this open -- how to support more processors due to hob size 
> limitation. 
> 
> Looks multiple hobs is the only way since we have to store each cpu's
> info? Sorry, allow me ask a stupid question: why DataLength in hob
> defined as UINT16 causing the hob size limitation? Any design
> background here?

Probably just nobody expected that big hobs being ever needed when this
was designed looooong ago.

But as laszlo outlined:  There is the option to use a page allocation
for the array and store a pointer to the array in the HOB.  Which is
probably the simplest approach given you have a single, linear array
then.

> For smbase case: I doubt CpuIndex is really required, because we can't
> avoid define another hob, and we can't avoid add statement for each
> hob cpu ranges (0 - 8191, 8192 - 16382,...), then what's meaning for
> the CpuIndex, we don't expect hob producer create smaller granularity
> CPU ranges that one hob CpuIndex associate with previous NumberOfCpus.

With multiple HOBs the consumer needs to know which HOB covers which CPU
range.  So in addition to the number of cpus covered by the HOB you also
need to know what the first CPU is.

take care,
  Gerd



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#99401): https://edk2.groups.io/g/devel/message/99401
Mute This Topic: https://groups.io/mt/96350760/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to