Estou trabalhando em um sistema embarcado que executa uma plataforma Linux personalizada e parece que o processo do Xorg está com vazamento de memória. Segundo o top, a memória virtual do Xorg cresce até o sistema falhar. De acordo com / proc / $ pid / status, seu VmPeak crescerá de forma incontrolável, mas seu VmSize permanecerá pequeno. Conteúdo de / proc / $ pid / status seguir:
Name: Xorg
State: S (sleeping)
Tgid: 610
Pid: 610
PPid: 605
TracerPid: 0
Uid: 0 0 0 0
Gid: 0 0 0 0
FDSize: 32
Groups: 0
VmPeak: 102628 kB
VmSize: 18020 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 8172 kB
VmRSS: 8172 kB
VmData: 2140 kB
VmStk: 136 kB
VmExe: 1808 kB
VmLib: 10064 kB
VmPTE: 116 kB
VmSwap: 0 kB
Threads: 1
SigQ: 1/16047
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000301000
SigCgt: 00000001d18066cf
CapInh: 0000000000000000
CapPrm: ffffffffffffffff
CapEff: ffffffffffffffff
CapBnd: ffffffffffffffff
Cpus_allowed: 3
Cpus_allowed_list: 0-1
Mems_allowed: 1
Mems_allowed_list: 0
voluntary_ctxt_switches: 2839
nonvoluntary_ctxt_switches: 109
Minha teoria é que o gtkextra (especificamente gtkplot) não está limpando corretamente seu buffer pixmap, já que o vazamento ocorre apenas quando um objeto criado com o gtkplot é renderizado na tela. Eu olhei em todos os lugares que eu posso pensar para alguma documentação de uma incompatibilidade ou alguém encontrar esse erro e vir vazio, e eu estou esperando que haja alguma bandeira no xorg.conf eu posso alternar para corrigir o problema, mas eu Não estou exatamente segurando minha respiração. A versão do xorg / xserver que eu uso é 1.11.2 e a versão do gtkextra é 3.0.1. Minha pergunta é a seguinte: existe algum valor de configuração conhecido que eu poderia alterar no xorg.conf para evitar esse problema, ou minhas versões são incompatíveis? A escassez de pessoas lutando com esse bug me faz suspeitar que estou cometendo algum erro de configuração.
Tags xorg memory memory-leak embedded