Muitos daemons do Gnome 3.28 estão usando mais de 100 GB de VIRT. Por quê?

9

Atualizei recentemente este laptop para o Fedora 28 Beta e com ele o Gnome 3.28. As coisas são principalmente boas.

Mas algumas coisas são estranhas. Isso não está causando problemas porque isso é tudo memória virtual.

Mas por que esses daemons estão alocando mais de 100 GB de memória virtual?

0  1000  2012  1719  20   0 101649024 32904 SyS_po Sl ?         0:00 /usr/libexec/goa-daemon
0  1000  1983  1719  20   0 101704260 46416 SyS_po Sl ?         0:00 /usr/libexec/gnome-shell-calendar-server
0  1000  2210  1765  20   0 101736292 33656 SyS_po Sl+ tty2     0:00 /usr/libexec/deja-dup/deja-dup-monitor
0  1000  2452  1719  20   0 101927808 45988 SyS_po Ssl ?        0:00 /usr/libexec/evolution-addressbook-factory
0  1000  2240  1765  20   0 102007840 57328 SyS_po Sl+ tty2     0:00 /usr/libexec/evolution/evolution-alarm-notify
0  1000  2415  2288  20   0 102356528 47216 SyS_po Sl ?         0:00 /usr/libexec/evolution-calendar-factory-subprocess --factory all --bus-name org.gnome.evolution.dataserver.Subprocess.Backend.Calendarx2288x2 --own-path /org/gnome/evolution/dataserver/Subprocess/Backend/Calendar/2288/2
0  1000  2021  1719  20   0 102405692 46532 SyS_po Ssl ?        0:00 /usr/libexec/evolution-source-registry
0  1000  2288  1719  20   0 118711416 46164 SyS_po Ssl ?        0:00 /usr/libexec/evolution-calendar-factory
0  1000  2518  2452  20   0 119163652 49648 SyS_po Sl ?         0:00 /usr/libexec/evolution-addressbook-factory-subprocess --factory all --bus-name org.gnome.evolution.dataserver.Subprocess.Backend.AddressBookx2452x2 --own-path /org/gnome/evolution/dataserver/Subprocess/Backend/AddressBook/2452/2
    
por Zan Lynx 17.04.2018 / 18:42

1 resposta

11

Todos esses daemons usam o WebKit (principalmente para mostrar prompts de login do oauth2), e o WebKit introduziu recentemente gigacages para isolar o heap usado por sua implementação JS. A alocação para um gigacage é grande o suficiente para que qualquer acesso a um offset de 32 bits não assinado e arbitrário ainda ocorra no gigacage, resultando em enormes alocações. Veja este post para mais detalhes sobre gigacages: link

    
por 18.04.2018 / 20:15