From Fedora Project Wiki

Revision as of 00:41, 6 July 2020 by Chrismurphy (talk | contribs) (optionally install earlyoom)

Description

Test building WebKitGTK with swap-on-zram enabled and running.

Setup

  1. Install mock, and download webkit2gtk3 source.
    sudo dnf install mock
    curl -O https://kojipkgs.fedoraproject.org//packages/webkit2gtk3/2.29.2/1.fc33/src/webkit2gtk3-2.29.2-1.fc33.src.rpm
    
  2. Add user to mock group.
    sudo usermod -a -G mock chris
    
  3. Optional: On desktops other than Fedora Workstation, install earlyoom, and confirm that it's running.
    sudo dnf install earlyoom
    sudo systemctl status earlyoom
    

How to test

  1. Make sure you have at zram swap, or both a disk-based swap and a zram swap.
    $ swapon
    NAME       TYPE       SIZE USED PRIO
    /dev/sda5  partition 10.4G   0B   -2
    /dev/zram0 partition  3.8G   0B  100
    
  2. Build WebKitGTK
    mock webkit2gtk3-2.29.2-1.fc33.src.rpm
    
  3. Repeat two more times.

Expected Results

  1. Either the build succeeds, or earlyoom will report killing off one of the related build processes (probably cc1plus).
    sudo journalctl -b | grep earlyoom
    Jul 05 18:34:44 f33v.local earlyoom[643]: mem avail:    51 of  2895 MiB ( 1.78%), swap free:  134 of 1446 MiB ( 9.30%)
    Jul 05 18:34:44 f33v.local earlyoom[643]: low memory! at or below SIGTERM limits: mem  4.00%, swap 10.00%
    Jul 05 18:34:44 f33v.local earlyoom[643]: sending SIGTERM to process 10570 uid 1000 "cc1plus": badness 258, VmRSS 850 MiB
    
  2. Other sources of failures likely indicate a problem.