From: Matthew Auld <matthew.auld@intel.com>
To: "Arunpravin Paneer Selvam" <arunpravin.paneerselvam@amd.com>,
"Michał Grzelak" <michal.grzelak@intel.com>,
intel-xe@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Cc: matthew.brost@intel.com, thomas.hellstrom@linux.intel.com,
rodrigo.vivi@intel.com,
"Lucas De Marchi" <lucas.demarchi@intel.com>,
"Christian König" <christian.koenig@amd.com>
Subject: Re: [RESEND 1/1] drm/buddy: release free_trees array on buddy mm teardown
Date: Tue, 20 Jan 2026 10:40:06 +0000 [thread overview]
Message-ID: <dd72f248-5bdf-437e-8e30-e70658622e54@intel.com> (raw)
In-Reply-To: <3ffbe456-17c1-46b4-83e1-e26792aa5248@amd.com>
On 20/01/2026 05:27, Arunpravin Paneer Selvam wrote:
>
> On 19/01/26 21:55, Matthew Auld wrote:
>> On 19/12/2025 19:32, Michał Grzelak wrote:
>>> During initialization of DRM buddy memory manager at drm_buddy_init,
>>> mm->free_trees array is allocated for both clear and dirty RB trees.
>>> During cleanup happening at drm_buddy_fini it is never freed, leading to
>>> following memory leaks observed on xe module load & unload cycles:
>>>
>>> kmemleak_alloc+0x4a/0x90
>>> __kmalloc_cache_noprof+0x488/0x800
>>> drm_buddy_init+0xc2/0x330 [drm_buddy]
>>> __xe_ttm_vram_mgr_init+0xc3/0x190 [xe]
>>> xe_ttm_stolen_mgr_init+0xf5/0x9d0 [xe]
>>> xe_device_probe+0x326/0x9e0 [xe]
>>> xe_pci_probe+0x39a/0x610 [xe]
>>> local_pci_probe+0x47/0xb0
>>> pci_device_probe+0xf3/0x260
>>> really_probe+0xf1/0x3c0
>>> __driver_probe_device+0x8c/0x180
>>> driver_probe_device+0x24/0xd0
>>> __driver_attach+0x10f/0x220
>>> bus_for_each_dev+0x7f/0xe0
>>> driver_attach+0x1e/0x30
>>> bus_add_driver+0x151/0x290
>>>
>>> Deallocate array for free trees when cleaning up buddy memory manager
>>> in the same way as if going through out_free_tree label.
>>>
>>> Fixes: d4cd665c98c1 ("drm/buddy: Separate clear and dirty free block
>>> trees")
>>> Signed-off-by: Michał Grzelak <michal.grzelak@intel.com>
>>> Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
>>> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
>>
>> Arun/Christian, can you merge this one?
>
> Sure, I have merged this patch.
Thanks.
>
> Regards,
>
> Arun.
>
>>
>>> ---
>>> drivers/gpu/drm/drm_buddy.c | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> diff --git a/drivers/gpu/drm/drm_buddy.c b/drivers/gpu/drm/drm_buddy.c
>>> index 2f279b46bd2c..8308116058cc 100644
>>> --- a/drivers/gpu/drm/drm_buddy.c
>>> +++ b/drivers/gpu/drm/drm_buddy.c
>>> @@ -420,6 +420,7 @@ void drm_buddy_fini(struct drm_buddy *mm)
>>> for_each_free_tree(i)
>>> kfree(mm->free_trees[i]);
>>> + kfree(mm->free_trees);
>>> kfree(mm->roots);
>>> }
>>> EXPORT_SYMBOL(drm_buddy_fini);
>>
next prev parent reply other threads:[~2026-01-20 10:40 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-19 19:32 [RESEND 1/1] drm/buddy: release free_trees array on buddy mm teardown Michał Grzelak
2025-12-19 20:38 ` Lin, Shuicheng
2025-12-23 7:35 ` Michał Grzelak
2025-12-23 17:14 ` Lin, Shuicheng
2025-12-22 14:59 ` ✓ CI.KUnit: success for series starting with [RESEND,1/1] " Patchwork
2025-12-22 15:54 ` ✗ Xe.CI.BAT: failure " Patchwork
2025-12-23 8:07 ` Michał Grzelak
2025-12-22 17:13 ` ✓ Xe.CI.Full: success " Patchwork
2026-01-19 16:25 ` [RESEND 1/1] " Matthew Auld
2026-01-20 5:27 ` Arunpravin Paneer Selvam
2026-01-20 10:40 ` Matthew Auld [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-12-08 10:27 [RESEND 0/1] " Michał Grzelak
2025-12-08 10:27 ` [RESEND 1/1] " Michał Grzelak
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=dd72f248-5bdf-437e-8e30-e70658622e54@intel.com \
--to=matthew.auld@intel.com \
--cc=arunpravin.paneerselvam@amd.com \
--cc=christian.koenig@amd.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=lucas.demarchi@intel.com \
--cc=matthew.brost@intel.com \
--cc=michal.grzelak@intel.com \
--cc=rodrigo.vivi@intel.com \
--cc=thomas.hellstrom@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.