[SLOF] [PATCH 2/2] Increase temporary buffer size of ibm, client-architecture-support call
Alexey Kardashevskiy
aik at ozlabs.ru
Wed Dec 23 12:42:22 AEDT 2015
On 12/22/2015 07:25 AM, Thomas Huth wrote:
> The buffer size that we currently use for the client-architecture-
> support call currently only works if there is not more than 1 TiB
> of hot-pluggable RAM for the guest. This will likely not be enough
> in the near future, so increase the buffer size from 128 kiB to 2 MiB
> instead. That should be enough to accomodate for 16 TiB of hot-pluggable
> memory.
Thanks, applied.
Out of curiosity - how much of these 128KiB is actually used for this 1TiB
of RAM? There are other bits too in that buffer and only a fraction of it
is per that 1Tib and 2MiB of buffer will support more than 16TiB but how
much more?
> While we're at it, also rename the "size" variable to something more
> specific (since it is put into the namespace of the root node), and
> add a proper error message in case the alloc-mem fails.
>
> Signed-off-by: Thomas Huth <thuth at redhat.com>
> ---
> board-qemu/slof/archsupport.fs | 13 +++++++------
> 1 file changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/board-qemu/slof/archsupport.fs b/board-qemu/slof/archsupport.fs
> index f564ab4..a8ace3c 100644
> --- a/board-qemu/slof/archsupport.fs
> +++ b/board-qemu/slof/archsupport.fs
> @@ -10,15 +10,16 @@
> \ * IBM Corporation - initial implementation
> \ ****************************************************************************/
>
> -\ 128KB FDT buffer size is enough to accommodate 255 CPU cores and 1TB of
> -\ maxmem specification.
> -20000 VALUE size
> +\ 2 MiB FDT buffer size is enough to accommodate 255 CPU cores
> +\ and 16 TiB of maxmem specification.
> +200000 CONSTANT cas-buffer-size
> : ibm,client-architecture-support ( vec -- err? )
> \ Store require parameters in nvram
> \ to come back to right boot device
> \ Allocate memory for H_CALL
> - size alloc-mem ( vec memaddr )
> - swap over size ( memaddr vec memaddr size )
> + cas-buffer-size alloc-mem ( vec memaddr )
> + dup 0= IF ." out of memory during ibm,client-architecture-support" cr THEN
> + swap over cas-buffer-size ( memaddr vec memaddr size )
> \ make h_call to hypervisor
> hv-cas 0= IF ( memaddr )
> dup l@ 1 >= IF \ Version number >= 1
> @@ -34,5 +35,5 @@
> ELSE
> TRUE
> THEN
> - >r size free-mem r>
> + >r cas-buffer-size free-mem r>
> ;
>
--
Alexey
More information about the SLOF
mailing list