Вы не можете использовать функции pthread_mutex_*
, так как это вызовы только в пространстве пользователя.В ядре используйте мьютексы, предоставленные linux / mutex.h :
struct mutex my_mutex; /* shared between the threads */
mutex_init(&my_mutex); /* called only ONCE */
/* inside a thread */
mutex_lock(&my_mutex);
/* do the work with the data you're protecting */
mutex_unlock(&my_mutex);