[erlang-questions] dirty NIFs - Lock check assertion "!erts_smp_lc_runq_is_locked(rq)" failed

Steve Vinoski <>
Sat Jan 16 18:25:13 CET 2016

On Sat, Jan 16, 2016 at 11:18 AM, John Doe <> wrote:

> Hello,
> I'm getting the following error in a dirty NIF library which keeps
> segfaulting:
> beam/erl_process.c:3313: Lock check assertion
> "!erts_smp_lc_runq_is_locked(rq)" failed!
> Currently these locks are locked by the dirty io scheduler 2 thread:
>   'run_queue:-1[mutex](beam/erl_process.h:2134)'
> The library is using enif_rwlock_ functions for synchronization.
> What could be the possible reason for this error?

You'll need to supply more details. Most importantly, what version of
Erlang are you using? And second, if you can supply a pointer to your code
or you can post it in a pastebin, that would be helpful (or feel free to
point me to it in a private reply if you don't want to share it publicly),
but if not, the more detail you can share about what your code is doing,
the better.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20160116/8706f4c2/attachment.html>

More information about the erlang-questions mailing list