[Xfce-bugs] [Bug 16423] New: Memory leak in Xfdesktop when connecting and disconnecting HDMI monitors

bugzilla-daemon at xfce.org bugzilla-daemon at xfce.org
Mon Feb 3 18:41:48 CET 2020


https://bugzilla.xfce.org/show_bug.cgi?id=16423

            Bug ID: 16423
           Summary: Memory leak in Xfdesktop when connecting and
                    disconnecting HDMI monitors
    Classification: Xfce Core
           Product: Xfdesktop
           Version: 4.14.1
          Hardware: PC (x86_64)
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Medium
         Component: General
          Assignee: xfce-bugs at xfce.org
          Reporter: bugzilla at globalbcx.com
  Target Milestone: Xfce 4.14

Created attachment 9424
  --> https://bugzilla.xfce.org/attachment.cgi?id=9424&action=edit
Monitor drm event triggers and xfdesktop memory usage at 5 minutes interval

xfdesktop 4.1x leaks memory whenever a HDMI monitor is connected. Maybe
duplicate of https://bugzilla.xfce.org/show_bug.cgi?id=16314 and
https://bugzilla.xfce.org/show_bug.cgi?id=14844

Steps to reproduce (any of these will do)
=========================
- turn monitor off then on
- switch monitor source to another input (2nd HDMI, DVI or DP depending on the
monitor)  then back again
- trigger KVM to change source (to my laptop) and back

Actual Results
===========
After the monitor is connected back, memory usage by xfreedeskop often
increases. Sometimes it drops back a little or doesn't change if interval too
short but the persistent trend is to increase until desktop is very sluggish
and a reboot is required.

Expected results
===========
Memory usage by xfdesktop should not be affected by reconnecting an existing
monitor.

Build date and hardware
================
Happened since last xfce version in Fedora 30 and 31 
- Fedora 31 (upgraded from 30)
- R5-2400G / AMD 5700XT ( added weeks after Fedora 31 upgrade )
- Philips 1920x1080 HDMI (iGPU) and Acer 2560x1440 HDMI (5700XT) via a physical
KVM switch


Additional info
==========
I have a udev rule which triggers on drm change action to trigger xrandr and
logging of mem info. xrandr fixes an issue where xfce does not configure the
Acer properly. It is a 120Hz LCD but after the KVM, 120Hz will cause no
display, setting the Display configuration to 60Hz as well as in config text
files does not hold for some reason and it frequently reverts to 120Hz and
wrong positioning by itself. 

It is unlikely to be relevant but the udev script does the following:
echo "$(date) : Monitor hotplug event" >> /var/log/xfdesktop_mem.log
ps -eo pid,%cpu,%mem,vsz,rss,tty,stat,start,time,cmd | grep [x]fdesktop >>
/var/log/xfdesktop_mem.log
export XAUTHORITY=/home/user/.Xauthority
DISPLAY=:0 /usr/bin/xrandr --newmode "2560x1440_60.00"  312.25  2560 2752 3024
3488  1440 1443 1448 1493 -hsync +vsync
DISPLAY=:0 /usr/bin/xrandr --addmode HDMI-1 2560x1440_60.00
DISPLAY=:0 /usr/bin/xrandr --output HDMI-1 --mode 2560x1440_60.00 --right-of
DVI-D-1
sleep 0.5
DISPLAY=:0 /usr/bin/xrandr --output HDMI-1 --right-of DVI-D-1

Every 5 minutes, i have a cronjob that outputs the same ps line to the log
file.

Triggering monitor connect/disconnect in rapid succession appears not to cause
memory to increase as consistently.

Attached log 
========
contains two types of entry
- udev drm events with date/time
- undated 5 minutes interval logging of xfdesktop memory usage
Period includes before a dnf update and reboot.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Xfce-bugs mailing list