mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-01-13 03:30:34 +03:00
Revert "Fix NULL deref in balance_pgdat()"
This reverts commit b8b6e4c453
. The
use of the PF_MEMALLOC flag was always a hack to work around memory
reclaim deadlocks. Those issues are believed to be resolved so this
workaround can be safely reverted.
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
parent
bc03e07a7c
commit
617f79de6a
@ -855,17 +855,14 @@ kv_alloc(spl_kmem_cache_t *skc, int size, int flags)
|
|||||||
* been filed at kernel.org to track the issue.
|
* been filed at kernel.org to track the issue.
|
||||||
*
|
*
|
||||||
* https://bugzilla.kernel.org/show_bug.cgi?id=30702
|
* https://bugzilla.kernel.org/show_bug.cgi?id=30702
|
||||||
*
|
|
||||||
* NOTE: Only set PF_MEMALLOC if it's not already set, and
|
|
||||||
* then only clear it when we were the one who set it.
|
|
||||||
*/
|
*/
|
||||||
if (!(flags & __GFP_FS) && !(current->flags & PF_MEMALLOC)) {
|
if (!(flags & __GFP_FS))
|
||||||
current->flags |= PF_MEMALLOC;
|
current->flags |= PF_MEMALLOC;
|
||||||
ptr = __vmalloc(size, flags|__GFP_HIGHMEM, PAGE_KERNEL);
|
|
||||||
|
ptr = __vmalloc(size, flags | __GFP_HIGHMEM, PAGE_KERNEL);
|
||||||
|
|
||||||
|
if (!(flags & __GFP_FS))
|
||||||
current->flags &= ~PF_MEMALLOC;
|
current->flags &= ~PF_MEMALLOC;
|
||||||
} else {
|
|
||||||
ptr = __vmalloc(size, flags|__GFP_HIGHMEM, PAGE_KERNEL);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Resulting allocated memory will be page aligned */
|
/* Resulting allocated memory will be page aligned */
|
||||||
|
Loading…
Reference in New Issue
Block a user