/* Set up the main thread */
vec_add2_aligned (vlib_worker_threads, w, 1, CLIB_CACHE_LINE_BYTES);
- w->elog_track.name = "thread 0";
+ w->elog_track.name = "main thread";
elog_track_register (&vm->elog_main, &w->elog_track);
if (vec_len(tm->thread_prefix))
w->instance_id = k;
w->registration = tr;
- w->elog_track.name = (char *) format (0, "thread %d", i+1);
+ w->elog_track.name =
+ (char *) format (0, "%s %d", tr->name, k+1);
vec_add1 (w->elog_track.name, 0);
elog_track_register (&vm->elog_main, &w->elog_track);
clib_mem_set_heap (oldheap);
vec_add1 (vlib_mains, vm_clone);
- unix_physmem_init (vm_clone, 0 /* physmem not required */);
-
vm_clone->error_main.counters =
vec_dup(vlib_mains[0]->error_main.counters);
vm_clone->error_main.counters_last_clear =
w->thread_function = tr->function;
w->thread_function_arg = w;
w->instance_id = j;
- w->elog_track.name = (char *) format (0, "thread %d", i+1);
+ w->elog_track.name =
+ (char *) format (0, "%s %d", tr->name, j+1);
w->registration = tr;
vec_add1 (w->elog_track.name, 0);
elog_track_register (&vm->elog_main, &w->elog_track);
VLIB_EARLY_CONFIG_FUNCTION (cpu_config, "cpu");
-#if !defined (__x86_64__)
+#if !defined (__x86_64__) && !defined (__aarch64__) && !defined (__powerpc64__)
void __sync_fetch_and_add_8 (void)
{
fformat(stderr, "%s called\n", __FUNCTION__);
"ID", "Name", "Type", "LWP",
"lcore", "Core", "Socket", "State");
+#if !defined(__powerpc64__)
for (i = 0; i < vec_len(vlib_worker_threads); i++)
{
w = vlib_worker_threads + i;
w->registration ? w->registration->name : "",
w->lwp);
+#if DPDK==1
int lcore = w->dpdk_lcore_id;
if (lcore > -1)
{
line = format(line, "unknown");
}
}
-
+#endif
vlib_cli_output(vm, "%v", line);
vec_free(line);
}
+#endif
return 0;
}