]> granicus.if.org Git - spl/commit
Switch KM_SLEEP to KM_PUSHPAGE
authorBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 12 Sep 2012 19:24:41 +0000 (12:24 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 12 Sep 2012 19:27:09 +0000 (12:27 -0700)
commit3050c9314faf95a63f000577a1d9feebb86b26d9
tree78e3b73ff33bf0c3cf2407ef4e80fec1127a6834
parent9b51f218410ccdeb69a85d99bd5f09051ec2def1
Switch KM_SLEEP to KM_PUSHPAGE

Under certain circumstances the following functions may be called
in a context where KM_SLEEP is unsafe and can result in a deadlocked
system.  To avoid this problem the unconditional KM_SLEEPs are
converted to KM_PUSHPAGEs.  This will prevent them from attempting
to initiate any I/O during direct reclaim.

This change was originally part of cd5ca4b but was reverted by
330fe01.  It always should have had its own commit for exactly
this reason.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
module/spl/spl-thread.c