mutex_lock() は、正常終了時に 0 を返します。次のいずれかの条件が検出された場合、mutex_lock() は失敗し、対応する値を返します。
EFAULT
mp が指すアドレスが正しくありません。
EDEADLK
mutex はすでにロックされていて、呼び出しスレッドに保持されています。