Hi Am 18.01.21 um 10:13 schrieb Eli Cohen: > On Mon, Jan 18, 2021 at 08:54:07AM +0100, Thomas Zimmermann wrote: >> Hi >> >> Am 18.01.21 um 08:43 schrieb Christian König: >>> Hi Eli, >>> >>> have you already tried using kmemleak? >>> >>> This sounds like a leak of memory allocated using kmalloc(), so kmemleak >>> should be able to catch it. >> >> I have an idea what happens here. When the refcount is 0 in kmap, a new page >> mapping for the BO is being established. But VRAM helpers unmap the previous >> pages only on BO moves or frees; not in kunmap. So the old mapping might >> still be around. I'll send out a test patch later today. >> > > Great! Looking forward to test it. Here's the patch against the latest DRM tree. v5.11-rc3 should work as well. I was able to reproduce the memory leak locally and found that the patch fixes it. Please give it a try. Best regards Thomas > >> Best regards >> Thomas >> >>> >>> Regards, >>> Christian. >>> >>> Am 17.01.21 um 06:08 schrieb Eli Cohen: >>>> On Fri, Jan 15, 2021 at 10:03:50AM +0100, Thomas Zimmermann wrote: >>>>> Could you please double-check that 3fb91f56aea4 ("drm/udl: Retrieve USB >>>>> device from struct drm_device.dev") works correctly >>>> Checked again, it does not seem to leak. >>>> >>>>> and that 823efa922102 >>>>> ("drm/cma-helper: Remove empty drm_gem_cma_prime_vunmap()") is broken? >>>>> >>>> Yes, this one leaks, as does the one preceding it: >>>> >>>> 1086db71a1db ("drm/vram-helper: Remove invariant parameters from >>>> internal kmap function") >>>>> For one of the broken commits, could you please send us the output of >>>>> >>>>>    dmesg | grep -i drm >>>>> >>>>> after most of the memory got leaked? >>>>> >>>> I ran the following script in the shell: >>>> >>>> while true; do cat /proc/meminfo | grep MemFree:; sleep 5; done >>>> >>>> and this is what I saw before I got disconnected from the shell: >>>> >>>> MemFree:          148208 kB >>>> MemFree:          148304 kB >>>> MemFree:          146660 kB >>>> Connection to nps-server-24 closed by remote host. >>>> Connection to nps-server-24 closed. >>>> >>>> >>>> I also mointored the output of dmesg | grep -i drm >>>> The last output I was able to save on disk is this: >>>> >>>> [   46.140720] ast 0000:03:00.0: [drm] Using P2A bridge for configuration >>>> [   46.140737] ast 0000:03:00.0: [drm] AST 2500 detected >>>> [   46.140754] ast 0000:03:00.0: [drm] Analog VGA only >>>> [   46.140772] ast 0000:03:00.0: [drm] dram MCLK=800 Mhz type=7 >>>> bus_width=16 >>>> [   46.153553] [drm] Initialized ast 0.1.0 20120228 for 0000:03:00.0 >>>> on minor 0 >>>> [   46.165097] fbcon: astdrmfb (fb0) is primary device >>>> [   46.391381] ast 0000:03:00.0: [drm] fb0: astdrmfb frame buffer device >>>> [   56.097697] systemd[1]: Starting Load Kernel Module drm... >>>> [   56.343556] systemd[1]: modprobe@drm.service: Succeeded. >>>> [   56.350382] systemd[1]: Finished Load Kernel Module drm. >>>> [13319.469462] [   2683] 70889  2683    55586        0    73728 >>>> 138             0 tdrm >>>> [13320.658386] [   2683] 70889  2683    55586        0    73728 >>>> 138             0 tdrm >>>> [13321.800970] [   2683] 70889  2683    55586        0    73728 >>>> 138             0 tdrm >>> >>> _______________________________________________ >>> dri-devel mailing list >>> dri-devel@lists.freedesktop.org >>> https://lists.freedesktop.org/mailman/listinfo/dri-devel >> >> -- >> Thomas Zimmermann >> Graphics Driver Developer >> SUSE Software Solutions Germany GmbH >> Maxfeldstr. 5, 90409 Nürnberg, Germany >> (HRB 36809, AG Nürnberg) >> Geschäftsführer: Felix Imendörffer >> > > > -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Maxfeldstr. 5, 90409 Nürnberg, Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer