diff --git a/inc/mthread/mthread.h b/inc/mthread/mthread.h index a370405b848ae246c081f565d25e1bd97e5b61bd..c708a4414d54bce351aaa564ee4a5b4da46c9f2d 100644 --- a/inc/mthread/mthread.h +++ b/inc/mthread/mthread.h @@ -105,5 +105,5 @@ void mthread_yield(); /* Initialize mthread. */ -void mthread_init(); +void mthread_init(void); void *mthread_main(void *arg); diff --git a/src/main/lktadm.c b/src/main/lktadm.c index 38d97555fbd067e97c13d62cd62f7bacc8035b12..5676ad2ec7caaeeb574df389304d6e132722a3cb 100644 --- a/src/main/lktadm.c +++ b/src/main/lktadm.c @@ -178,7 +178,7 @@ init_file_prompt__(struct lkt_cmd_args *args) kara_metadata_write(&data, args->argv[i], mkvpropedit); LOG_INFO("You may name this kara with the following name: '%s - %s%d - %s'", - data.source_name, data.song_type, data.song_number, data.song_name); + data.source_name, data.song_type, data.song_number, data.song_name); } exit(EXIT_SUCCESS); } diff --git a/src/mthread/mthread.c b/src/mthread/mthread.c index 07d6918fea21753b6e871dab8c27600021223e53..4944174f9b70ed5ce3dae073c32d02ec46122b75 100644 --- a/src/mthread/mthread.c +++ b/src/mthread/mthread.c @@ -1,6 +1,9 @@ +#define _POSIX_C_SOURCE 200809L + #include <mthread/mthread_internal.h> #include <sched.h> #include <string.h> +#include <unistd.h> #define MTHREAD_LWP 1 @@ -127,8 +130,6 @@ mthread_mctx_swap(struct mthread_s *cur_mctx, struct mthread_s *new_mctx) void __mthread_yield(mthread_virtual_processor_t *vp) { - sched_yield(); - struct mthread_s *current = (struct mthread_s *)vp->current; struct mthread_s *next = mthread_remove_first(&(vp->ready_list)); @@ -217,8 +218,11 @@ mthread_main(void *arg) { (void)arg; mthread_virtual_processor_t *vp = mthread_get_vp(); - while (1) + while (1) { + sched_yield(); + sleep(1); __mthread_yield(vp); + } return NULL; } @@ -265,18 +269,18 @@ mthread_start_thread(void *arg) /* Function for handling threads. */ static inline void -__mthread_lib_init() +__mthread_lib_init(long i) { - mthread_init_lib(0); + mthread_init_lib(i); virtual_processors[0].state = 1; - LOG_INFO_SCT("MThread", "%s", "library started"); + LOG_INFO_SCT("THREAD", "%s", "library started"); } void -mthread_init() +mthread_init(void) { if (is_mthread_init == 0) { - __mthread_lib_init(); + __mthread_lib_init(0); is_mthread_init = 1; } } @@ -289,7 +293,7 @@ mthread_create(mthread_t *__threadp, const mthread_attr_t *__attr, void *(*__start_routine) (void *), void *__arg) { if (is_mthread_init == 0) { - __mthread_lib_init(); + __mthread_lib_init(0); is_mthread_init = 1; } diff --git a/src/mthread/mthread_mutex.c b/src/mthread/mthread_mutex.c index 85fbc6adbe612e1e3d1d714663986f7fcf513620..b82ec5f1924b9dabcc8996bd3a3185e72aa15ac1 100644 --- a/src/mthread/mthread_mutex.c +++ b/src/mthread/mthread_mutex.c @@ -9,7 +9,6 @@ int mthread_mutex_init(mthread_mutex_t *__mutex, const mthread_mutexattr_t *__mutex_attr) { - mthread_init(); (void) __mutex_attr; __mutex->list = safe_malloc(sizeof(mthread_list_t)); diff --git a/src/thread.c b/src/thread.c index daa77b88c3344f03e6d927ca7bf2fd6f7a255f07..4969c93320d752211f0c7482bbf487dced727a33 100644 --- a/src/thread.c +++ b/src/thread.c @@ -52,7 +52,7 @@ lkt_th_new(struct poller_thread *th, unsigned int init_sizes, __args->arg = args; __args->arg->self = th; - if(!pthread_create(&(th->th), NULL, __start, __args)) { + if (!pthread_create(&(th->th), NULL, __start, __args)) { LOG_INFO_SCT("THREAD", "%s", "Create a new poller thread"); return 0; }