Motr  M0
uthread.c File Reference
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <stdio.h>
#include <linux/limits.h>
#include "lib/trace.h"
#include "lib/misc.h"
#include "lib/string.h"
#include "lib/memory.h"
#include "lib/thread.h"
#include "lib/arith.h"
#include "lib/bitmap.h"
#include "lib/assert.h"
#include "module/instance.h"
#include "addb2/global.h"
Include dependency graph for uthread.c:

Go to the source code of this file.

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_MEMORY
 

Functions

M0_INTERNAL struct m0_thread_tlsm0_thread_tls (void)
 
static void * uthread_trampoline (void *arg)
 
M0_INTERNAL int m0_thread_init_impl (struct m0_thread *q, const char *name)
 
int m0_thread_join (struct m0_thread *q)
 
M0_INTERNAL int m0_thread_signal (struct m0_thread *q, int sig)
 
M0_INTERNAL int m0_thread_confine (struct m0_thread *q, const struct m0_bitmap *processors)
 
M0_INTERNAL int m0_threads_init (struct m0 *instance)
 
M0_INTERNAL void m0_threads_fini (void)
 
M0_INTERNAL int m0_threads_once_init (void)
 
M0_INTERNAL void m0_threads_once_fini (void)
 
M0_INTERNAL void m0_enter_awkward (void)
 
M0_INTERNAL void m0_exit_awkward (void)
 
M0_INTERNAL bool m0_is_awkward (void)
 
M0_INTERNAL uint64_t m0_pid (void)
 
M0_INTERNAL uint64_t m0_process (void)
 
M0_INTERNAL int m0_thread_arch_adopt (struct m0_thread *thread, struct m0 *instance, bool full)
 
M0_INTERNAL void m0_thread_arch_shun (void)
 

Variables

static pthread_attr_t pthread_attr_default
 
static __thread struct m0_thread thread = {}
 
static __thread struct m0_thread_tlstls = NULL
 
static struct m0_thread main_thread
 
M0_INTERNAL char m0_argv0 [PATH_MAX] = {}
 
M0_INTERNAL char * m0_debugger_args [4]
 

Macro Definition Documentation

◆ M0_TRACE_SUBSYSTEM

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_MEMORY

Definition at line 29 of file uthread.c.