mirror of
https://github.com/torvalds/linux.git
synced 2026-09-28 20:12:01 +02:00
smb: client: use GFP_KERNEL in get_targets()
Currently, get_targets() uses GFP_ATOMIC to allocate the cache target iterator and to duplicate t->name. The callers of get_targets() are in a sleepable context; therefore, switch to GFP_KERNEL to reduce risk of failure and reduce pressure on emergency pools in low-memory scenarios. Signed-off-by: Fredric Cover <fredric.cover.lkernel@gmail.com> Signed-off-by: Paulo Alcantara <pc@manguebit.org>
This commit is contained in:
parent
a1259e92e1
commit
031fe051ab
|
|
@ -798,13 +798,13 @@ static int get_targets(struct cache_entry *ce, struct dfs_cache_tgt_list *tl)
|
|||
INIT_LIST_HEAD(head);
|
||||
|
||||
list_for_each_entry(t, &ce->tlist, list) {
|
||||
it = kzalloc_obj(*it, GFP_ATOMIC);
|
||||
it = kzalloc_obj(*it, GFP_KERNEL);
|
||||
if (!it) {
|
||||
rc = -ENOMEM;
|
||||
goto err_free_it;
|
||||
}
|
||||
|
||||
it->it_name = kstrdup(t->name, GFP_ATOMIC);
|
||||
it->it_name = kstrdup(t->name, GFP_KERNEL);
|
||||
if (!it->it_name) {
|
||||
kfree(it);
|
||||
rc = -ENOMEM;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user