X-Git-Url: http://git.onelab.eu/?p=sliver-openvswitch.git;a=blobdiff_plain;f=lib%2Fovs-rcu.c;h=7aed6dbe599fa665583341bac6815e7d98eef8a5;hp=8a12564289b0098607af94ce9bd3801bf0540b94;hb=0d593ee424de4bb9e3d4dbe7d81c126a4efaa267;hpb=e45d584eea92b71348501ce648f654837b14bb0f diff --git a/lib/ovs-rcu.c b/lib/ovs-rcu.c index 8a1256428..7aed6dbe5 100644 --- a/lib/ovs-rcu.c +++ b/lib/ovs-rcu.c @@ -71,11 +71,13 @@ ovsrcu_perthread_get(void) perthread = pthread_getspecific(perthread_key); if (!perthread) { + const char *name = get_subprogram_name(); + perthread = xmalloc(sizeof *perthread); ovs_mutex_init(&perthread->mutex); perthread->seqno = seq_read(global_seqno); perthread->cbset = NULL; - ovs_strlcpy(perthread->name, get_subprogram_name(), + ovs_strlcpy(perthread->name, name[0] ? name : "main", sizeof perthread->name); ovs_mutex_lock(&ovsrcu_threads_mutex);