summaryrefslogtreecommitdiffstats
path: root/module
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2012-09-17 11:22:23 -0700
committerBrian Behlendorf <[email protected]>2012-09-17 11:22:23 -0700
commitba367276d84e126dc3a13677c286539d0019e3b8 (patch)
treec6976f3682cc04ea87de4fe7878837ca192aba45 /module
parent49d39798f286cce2497a87fc06d78c051ca87570 (diff)
Switch KM_SLEEP to KM_PUSHPAGE
This warning indicates the incorrect use of KM_SLEEP in a call path which must use KM_PUSHPAGE to avoid deadlocking in direct reclaim. See commit b8d06fca089fae4680c3a552fc55c512bfb02202 for additional details. SPL: Fixing allocation for task txg_sync (6093) which used GFP flags 0x297bda7c with PF_NOFS set Signed-off-by: Brian Behlendorf <[email protected]> Issue #917
Diffstat (limited to 'module')
-rw-r--r--module/zfs/dsl_prop.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/module/zfs/dsl_prop.c b/module/zfs/dsl_prop.c
index 64c44b991..e44a94853 100644
--- a/module/zfs/dsl_prop.c
+++ b/module/zfs/dsl_prop.c
@@ -697,7 +697,7 @@ dsl_prop_set_sync(void *arg1, void *arg2, dmu_tx_t *tx)
if (source == ZPROP_SRC_LOCAL) {
valstr = (char *)psa->psa_value;
} else {
- tbuf = kmem_alloc(ZAP_MAXVALUELEN, KM_SLEEP);
+ tbuf = kmem_alloc(ZAP_MAXVALUELEN, KM_PUSHPAGE);
if (dsl_prop_get_ds(ds, propname, 1,
ZAP_MAXVALUELEN, tbuf, NULL) == 0)
valstr = tbuf;