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;
     }