Revert "Disable direct reclaim on zvols"

This reverts commit ce90208cf9.  This
change was observed to cause problems when using a zvol to back a VM
under 2.6.32.59 kernels.  This issue was filed as #710.

Signed-off-by: Richard Yao <ryao@cs.stonybrook.edu>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #342
Issue #710
This commit is contained in:
Brian Behlendorf 2012-04-30 14:24:39 -07:00
parent 3462fa279c
commit 710114089f
1 changed files with 1 additions and 7 deletions

View File

@ -1390,14 +1390,8 @@ zvol_init(void)
{ {
int error; int error;
/*
* The zvol taskqs are created with TASKQ_NORECLAIM so they may be
* used safely as a swap device. If direct reclaim is allowed then
* they quickly deadlock in one of the internal memory allocations.
*/
zvol_taskq = taskq_create(ZVOL_DRIVER, zvol_threads, maxclsyspri, zvol_taskq = taskq_create(ZVOL_DRIVER, zvol_threads, maxclsyspri,
zvol_threads, INT_MAX, zvol_threads, INT_MAX, TASKQ_PREPOPULATE);
TASKQ_PREPOPULATE | TASKQ_NORECLAIM);
if (zvol_taskq == NULL) { if (zvol_taskq == NULL) {
printk(KERN_INFO "ZFS: taskq_create() failed\n"); printk(KERN_INFO "ZFS: taskq_create() failed\n");
return (-ENOMEM); return (-ENOMEM);