examples/service_cores: check cores before run
authorVipin Varghese <vipin.varghese@intel.com>
Fri, 12 Oct 2018 13:14:03 +0000 (18:44 +0530)
committerThomas Monjalon <thomas@monjalon.net>
Mon, 29 Oct 2018 02:05:15 +0000 (03:05 +0100)
The service core samples has varied profiles created to run on specified
lcore count. The patch adds the check before each run, to ensure
example has sufficent lcores to be added as service cores on given run
profile. If sufficent cores are not found, the run is skipped with user
notification.

Signed-off-by: Vipin Varghese <vipin.varghese@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
examples/service_cores/main.c

index 2cd5729..c7c7928 100644 (file)
@@ -118,6 +118,12 @@ apply_profile(int profile_id)
        struct profile *p = &profiles[profile_id];
        const uint8_t core_off = 1;
 
+       if (p->num_cores > rte_lcore_count() + 1) {
+               printf("insufficent cores to run (%s)",
+                       p->name);
+               return;
+       }
+
        for (i = 0; i < p->num_cores; i++) {
                uint32_t core = i + core_off;
                ret = rte_service_lcore_add(core);