[SLOF] [PATCH 2/2] Increase temporary buffer size of ibm, client-architecture-support call

Thomas Huth thuth at redhat.com
Tue Dec 22 07:25:22 AEDT 2015


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.
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>
 ;
-- 
1.8.3.1



More information about the SLOF mailing list