Some 2LSs just ask for more, regardless of how many the platform will take.
The kernel will ignore you, but no sense poking the beast.  Right now, the
kernel actually prints a debug message, since setting amt_wanted wrong is a
sign of a buggy program/library.

Signed-off-by: Barret Rhoden <[email protected]>
---
 user/parlib/vcore.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/user/parlib/vcore.c b/user/parlib/vcore.c
index ae76bcc12355..7d6a6df17809 100644
--- a/user/parlib/vcore.c
+++ b/user/parlib/vcore.c
@@ -228,6 +228,7 @@ static void __vc_req_poke(void *nr_vc_wanted)
 {
        long nr_vcores_wanted = *(long*)nr_vc_wanted;
 
+       nr_vcores_wanted = MIN(nr_vcores_wanted, max_vcores());
        if (prep_new_vcores(nr_vcores_wanted))
                panic("Unable to prep up to %d vcores!", nr_vcores_wanted);
        if (nr_vcores_wanted > __procdata.res_req[RES_CORES].amt_wanted)
-- 
2.8.0.rc3.226.g39d4020

-- 
You received this message because you are subscribed to the Google Groups 
"Akaros" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to