mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 05:34:13 +08:00
xen/pvh: Fix misplaced kfree from xlated_setup_gnttab_pages
Passing a freed 'pages' to free_xenballooned_pages will end badly on kernels with slub debug enabled. This looks out of place between the rc assign and the check, but we do want to kfree pages regardless of which path we take. Signed-off-by: Dave Jones <davej@fedoraproject.org> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
This commit is contained in:
parent
bc1b0df59e
commit
f93576e1ac
@ -162,14 +162,15 @@ static int __init xlated_setup_gnttab_pages(void)
|
||||
rc = arch_gnttab_map_shared(pfns, nr_grant_frames, nr_grant_frames,
|
||||
&xen_auto_xlat_grant_frames.vaddr);
|
||||
|
||||
kfree(pages);
|
||||
if (rc) {
|
||||
pr_warn("%s Couldn't map %ld pfns rc:%d\n", __func__,
|
||||
nr_grant_frames, rc);
|
||||
free_xenballooned_pages(nr_grant_frames, pages);
|
||||
kfree(pages);
|
||||
kfree(pfns);
|
||||
return rc;
|
||||
}
|
||||
kfree(pages);
|
||||
|
||||
xen_auto_xlat_grant_frames.pfn = pfns;
|
||||
xen_auto_xlat_grant_frames.count = nr_grant_frames;
|
||||
|
Loading…
Reference in New Issue
Block a user