Substantially reduce PF_MEMALLOC usage. If you're using libdevmapper, you should upgrade to version 1.02.00 or above. If you're using LVM2, you should upgrade to version 2.02.00 or above. Signed-Off-By: Alasdair G Kergon --- linux-2.6.14-rc2.orig/drivers/md/dm-ioctl.c 2005-11-10 23:05:33.000000000 +0000 +++ linux-2.6.14-rc2/drivers/md/dm-ioctl.c 2005-11-11 17:38:32.000000000 +0000 @@ -1359,16 +1359,11 @@ static int ctl_ioctl(struct inode *inode * Copy the parameters into kernel space. */ r = copy_params(user, ¶m); - if (r) { - current->flags &= ~PF_MEMALLOC; - return r; - } - /* - * FIXME: eventually we will remove the PF_MEMALLOC flag - * here. However the tools still do nasty things like - * 'load' while a device is suspended. - */ + current->flags &= ~PF_MEMALLOC; + + if (r) + return r; r = validate_params(cmd, param); if (r) @@ -1386,7 +1381,6 @@ static int ctl_ioctl(struct inode *inode out: free_params(param); - current->flags &= ~PF_MEMALLOC; return r; }