[SFOS Browser] Solving the browser memory issue

So I started running the tests, current setup is:

I accessed the website Visual Studio Code March 2023 which has a surprising one shot one kill effect and always kills my browser when opened. It’s my first time ever visiting this specific page.

Bellow my “journalctl -f”, i pasted the “full” log here: Framapad annuel

As you can see I open the browser (which previously crashed) at 17:09:13:

Mai 06 17:09:13 Xperia10II-DualSIM dbus-daemon[5957]: dbus-daemon[5957]: [session uid=100000 pid=5957] Activating service name='org.sailfishos.browser.ui' requested by ':1.5520' (uid=100000 pid=25032 comm="/usr/libexec/mliteremoteaction org.sailfishos.brow" label="u:r:kernel:s0")

And 4 seconds later lowmemorykiller is killing stuff:

Mai 06 17:09:19 Xperia10II-DualSIM kernel: lowmemorykiller: Killing 'am.android:mqtt' (24015), adj 905,
                                              to free 47172kB on behalf of 'Cache2 I/O' (25167) because
                                              cache 744468kB is below limit 745120kB for oom_score_adj 529
Mai 06 17:09:19 Xperia10II-DualSIM kernel: lowmemorykiller: Killing 'stagram.android' (23854), adj 250,
                                              to free 153008kB on behalf of 'HwBinder:3134_1' (24676) because
                                              cache 652904kB is below limit 652960kB for oom_score_adj 147
Mai 06 17:09:20 Xperia10II-DualSIM kernel: lowmemorykiller: Killing 'id.ext.services' (22516), adj 100,
                                              to free 59600kB on behalf of 'Cache2 I/O' (25167) because
                                              cache 560784kB is below limit 560800kB for oom_score_adj 58
Mai 06 17:09:20 Xperia10II-DualSIM kernel: lowmemorykiller: Killing 'stagram.android' (25321), adj 0,
                                              to free 46920kB on behalf of 'pool-tracker-mi' (25022) because
                                              cache 464416kB is below limit 468640kB for oom_score_adj 0
Mai 06 17:09:20 Xperia10II-DualSIM kernel: lowmemorykiller: Killing 'maliit-server' (20203), adj 0,
                                              to free 54364kB on behalf of 'systemd-journal' (632) because
                                              cache 457108kB is below limit 468640kB for oom_score_adj 0
Mai 06 17:09:20 Xperia10II-DualSIM kernel: lowmemorykiller: Killing 'invoker' (25035), adj 0,
                                              to free 2400kB on behalf of 'VideoDecMsgThre' (25313) because
                                              cache 457108kB is below limit 468640kB for oom_score_adj 0

And finally the browser…

Mai 06 17:09:20 Xperia10II-DualSIM kernel: lowmemorykiller: Killing 'sailfish-browse' (22258), adj 0,
                                              to free 384508kB on behalf of 'HwBinder:3134_5' (6054) because
                                              cache 456492kB is below limit 468640kB for oom_score_adj 0

At 19:09:07 (so before re-opening the browser after it crashed), my memory was shared between:

Memory at 2023-05-06T17:09:07.194
Memory details: 3.5 GiB total, 48.9 MiB free, 138.5 MiB buffers, 838.0 MiB cached (including 11.2 MiB shmem (tmpfs)), 0 B swap cache
Kernel:         509.8 MiB SLAB (117.7 MiB reclaimable), 
                ~ 1.5 GiB other kernel memory? It means: total - anonymous process - slab - free - buffers - cached - swap cache
Swap:           1024.0 MiB total, 340.2 MiB free (33%)
Available:      1.2 GiB (35%) estimated by kernel
                1.1 GiB (32%) computed. It means: free + buffers + (cached - Shmem) + swap cache + slab reclaimable

Processes memory (smaps Pss):

    PID process                                                 size (% of total)  [oom_adj, oom_score, oom_score_adj]
  22258 booster [browse                                     21.6 MiB (1%)  [-1000, 0, 0]
   7451 tracker-miner-f                                     15.8 MiB (0%)  [-750, 0, 0]
  20290 memory-record                                       14.2 MiB (0%)  [-1000, 0, 0]
  25008 tracker-extract                                      9.2 MiB (0%)  [-750, 0, 0]
   6293 pulseaudio                                           7.7 MiB (0%)  [-750, 0, 0]
   6035 xt9-server                                           6.5 MiB (0%)  [-750, 0, 0]
   5902 systemd                                              2.5 MiB (0%)  [-750, 0, 0]
   5957 dbus-daemon                                          1.7 MiB (0%)  [-750, 0, 0]
   6408 dconf-service                                        1.6 MiB (0%)  [-750, 0, 0]
   6041 ngfd                                                 1.4 MiB (0%)  [-750, 0, 0]
  14141 alienkeyboardse                                    901.0 KiB (0%)  [-750, 0, 0]
   6687 0                                                  840.0 KiB (0%)  [-1000, 0, 0]
  14105 alienaudioservi                                    705.0 KiB (0%)  [-750, 0, 0]
   7048 booster-browser                                    417.0 KiB (0%)  [-1000, 0, 0]
  22545 invoker                                            388.0 KiB (0%)  [-750, 0, 0]
  21999 bash                                               339.0 KiB (0%)  [-1000, 0, 0]
  15270 bash                                               332.0 KiB (0%)  [-1000, 0, 0]
  21727 bash                                               322.0 KiB (0%)  [-1000, 0, 0]
  21879 bash                                               321.0 KiB (0%)  [-1000, 0, 0]
   6625 mpris-proxy                                        292.0 KiB (0%)  [-750, 0, 0]
   6031 profiled                                           228.0 KiB (0%)  [-750, 0, 0]
  21816 grep                                               217.0 KiB (0%)  [-1000, 0, 0]
   6493 audiosystem-pas                                     76.0 KiB (0%)  [-750, 0, 0]
   5954 ohm-session-age                                     33.0 KiB (0%)  [-750, 0, 0]
  14174 invoker                                             26.0 KiB (0%)  [-750, 0, 0]
   6688 invoker                                             25.0 KiB (0%)  [-750, 0, 0]
   6635 invoker                                             25.0 KiB (0%)  [-250, 0, 0]
   6220 invoker                                             24.0 KiB (0%)  [-750, 0, 0]
  14249 invoker                                             24.0 KiB (0%)  [-750, 0, 0]
   6028 invoker                                             24.0 KiB (0%)  [-750, 0, 0]

        others                                             295.0 KiB (0%)
        sum                                                 88.1 MiB (2%)

At 17:09:17 (while lowmemorykiller was slaughtering) it was:

Memory at 2023-05-06T17:09:17.192
Memory details: 3.5 GiB total, 18.5 MiB free, 138.9 MiB buffers, 837.1 MiB cached (including 12.1 MiB shmem (tmpfs)), 0 B swap cache
Kernel:         510.0 MiB SLAB (117.8 MiB reclaimable), 
                ~ 1.4 GiB other kernel memory? It means: total - anonymous process - slab - free - buffers - cached - swap cache
Swap:           1024.0 MiB total, 340.5 MiB free (33%)
Available:      1.1 GiB (33%) estimated by kernel
                1.1 GiB (31%) computed. It means: free + buffers + (cached - Shmem) + swap cache + slab reclaimable

Processes memory (smaps Pss):

    PID process                                                 size (% of total)  [oom_adj, oom_score, oom_score_adj]
  22258 booster [browse                                    250.1 MiB (7%)
  25037 booster [browse                                     20.8 MiB (1%)  [-1000, 0, 0]
   7451 tracker-miner-f                                     15.9 MiB (0%)  [-750, 0, 0]
  20290 memory-record                                       14.3 MiB (0%)  [-1000, 0, 0]
   6293 pulseaudio                                           7.7 MiB (0%)  [-750, 0, 0]
   6035 xt9-server                                           6.5 MiB (0%)  [-750, 0, 0]
   5902 systemd                                              2.6 MiB (0%)  [-750, 0, 0]
   5957 dbus-daemon                                          1.7 MiB (0%)  [-750, 0, 0]
   6408 dconf-service                                        1.6 MiB (0%)  [-750, 0, 0]
   6041 ngfd                                                 1.4 MiB (0%)  [-750, 0, 0]
  14141 alienkeyboardse                                    897.0 KiB (0%)  [-750, 0, 0]
   6687 0                                                  845.0 KiB (0%)  [-1000, 0, 0]
  14105 alienaudioservi                                    702.0 KiB (0%)  [-750, 0, 0]
  25035 invoker                                            401.0 KiB (0%)
  22545 invoker                                            366.0 KiB (0%)  [-750, 0, 0]
   7048 booster-browser                                    348.0 KiB (0%)  [-1000, 0, 0]
  21999 bash                                               339.0 KiB (0%)  [-1000, 0, 0]
  15270 bash                                               332.0 KiB (0%)  [-1000, 0, 0]
  21727 bash                                               322.0 KiB (0%)  [-1000, 0, 0]
  21879 bash                                               321.0 KiB (0%)  [-1000, 0, 0]
   6625 mpris-proxy                                        292.0 KiB (0%)  [-750, 0, 0]
   6031 profiled                                           228.0 KiB (0%)  [-750, 0, 0]
  21816 grep                                               217.0 KiB (0%)  [-1000, 0, 0]
   6493 audiosystem-pas                                     76.0 KiB (0%)  [-750, 0, 0]
   5954 ohm-session-age                                     33.0 KiB (0%)  [-750, 0, 0]
  14174 invoker                                             26.0 KiB (0%)  [-750, 0, 0]
   6688 invoker                                             25.0 KiB (0%)  [-750, 0, 0]
   6635 invoker                                             25.0 KiB (0%)  [-250, 0, 0]
   6034 invoker                                             24.0 KiB (0%)  [-750, 0, 0]
   6934 invoker                                             24.0 KiB (0%)  [-500, 0, 0]

        others                                             316.0 KiB (0%)
        sum                                                328.5 MiB (9%)

And at 17:09:22 (after the browser crashed) :

Memory at 2023-05-06T17:09:22.195
Memory details: 3.5 GiB total, 237.5 MiB free, 90.9 MiB buffers, 412.4 MiB cached (including 10.3 MiB shmem (tmpfs)), 0 B swap cache
Kernel:         497.9 MiB SLAB (106.9 MiB reclaimable), 
                ~ 1.9 GiB other kernel memory? It means: total - anonymous process - slab - free - buffers - cached - swap cache
Swap:           1024.0 MiB total, 330.7 MiB free (32%)
Available:      882.0 MiB (25%) estimated by kernel
                837.4 MiB (24%) computed. It means: free + buffers + (cached - Shmem) + swap cache + slab reclaimable

Processes memory (smaps Pss):

    PID process                                                 size (% of total)  [oom_adj, oom_score, oom_score_adj]
  25037 booster [browse                                     24.6 MiB (1%)  [-1000, 0, 0]
   7451 tracker-miner-f                                     15.6 MiB (0%)  [-750, 0, 0]
  20290 memory-record                                       14.5 MiB (0%)  [-1000, 0, 0]
  25341 tracker-extract                                      9.5 MiB (0%)  [-750, 0, 0]
   6293 pulseaudio                                           7.6 MiB (0%)  [-750, 0, 0]
   6035 xt9-server                                           6.1 MiB (0%)  [-750, 0, 0]
   5902 systemd                                              2.5 MiB (0%)  [-750, 0, 0]
   5957 dbus-daemon                                          1.7 MiB (0%)  [-750, 0, 0]
   6408 dconf-service                                        1.6 MiB (0%)  [-750, 0, 0]
   6041 ngfd                                                 1.4 MiB (0%)  [-750, 0, 0]
   6687 0                                                  844.0 KiB (0%)  [-1000, 0, 0]
  14141 alienkeyboardse                                    832.0 KiB (0%)  [-750, 0, 0]
  14105 alienaudioservi                                    706.0 KiB (0%)  [-750, 0, 0]
   7048 booster-browser                                    423.0 KiB (0%)  [-1000, 0, 0]
  15270 bash                                               322.0 KiB (0%)  [-1000, 0, 0]
  21727 bash                                               317.0 KiB (0%)  [-1000, 0, 0]
  21999 bash                                               317.0 KiB (0%)  [-1000, 0, 0]
  21879 bash                                               314.0 KiB (0%)  [-1000, 0, 0]
   6625 mpris-proxy                                        292.0 KiB (0%)  [-750, 0, 0]
  21816 grep                                               209.0 KiB (0%)  [-1000, 0, 0]
   6031 profiled                                           208.0 KiB (0%)  [-750, 0, 0]
   6493 audiosystem-pas                                     76.0 KiB (0%)  [-750, 0, 0]
   5954 ohm-session-age                                     33.0 KiB (0%)  [-750, 0, 0]
   6635 invoker                                             26.0 KiB (0%)  [-250, 0, 0]
  14174 invoker                                             26.0 KiB (0%)  [-750, 0, 0]
   6688 invoker                                             25.0 KiB (0%)  [-750, 0, 0]
   6034 invoker                                             24.0 KiB (0%)  [-750, 0, 0]
   6037 invoker                                             24.0 KiB (0%)  [-750, 0, 0]
   6934 invoker                                             24.0 KiB (0%)  [-500, 0, 0]
   6616 invoker                                             24.0 KiB (0%)  [-750, 0, 0]

        others                                             271.0 KiB (0%)
        sum                                                 90.3 MiB (3%)

That’s the first information I found, I wonder what steps can I do next so we can get further on this topic ?

3 Likes