Bug 24692

Summary: system nearly loose response when 2 apps consume most RAM on box without swap
Product: Memory Management Reporter: Gu Rui (chaos.proton)
Component: OtherAssignee: Andrew Morton (akpm)
Status: RESOLVED INVALID    
Severity: normal CC: alan
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.37-rc5-00062-g6313e3c Subsystem:
Regression: No Bisected commit-id:
Attachments: full output of `ps auxw --sort=rss`

Description Gu Rui 2010-12-11 15:58:49 UTC
Hardware configuration:
DELL Vostro3500, Core i3, 2G RAM, no swap in the system.

Steps to Reproduce:
1, launch an app that consume a lot of memories. Just like https://bugs.kde.org/show_bug.cgi?id=259519 , but don't let it consume too much that could trigger a OOM.
2, launch an other RAM consuming app, like chrome(start with multiple tabs)

Actual Results:
The hard disk becomes crazy running and system nearly loose response. Here is the snip of `ps auxw --sort=rss` when system choking:(attachment is the full version)

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    14:48   0:00 [kthreadd]
...
grissiom 14694  0.4  0.3 212452  6948 ?        S    23:13   0:00 /home/grissiom/chrome-linux/chrome
grissiom 14695  0.0  0.3 223052  7064 ?        S    23:13   0:00 /home/grissiom/chrome-linux/chrome --type=zygote
root      1785  0.0  0.4  94120  8408 ?        S    14:48   0:14 /usr/bin/python -O /usr/share/wicd/daemon/wicd-daemon.py
grissiom  1977  0.0  0.4 503192  9080 ?        Sl   14:53   0:07 kdeinit4: kded4 [kdeinit]                      
grissiom  2137  0.0  0.4 233476  9348 ?        S    14:53   0:00 kdeinit4: kio_http_cache_cleaner [kdeinit]     
grissiom  2162  0.0  0.5 550104 10168 ?        Sl   14:53   0:00 kdeinit4: kmix [kdeinit] -session 10d7d5d3dd000128793448700000024450010_1291998249_972695
grissiom 14745  0.0  0.6 820944 11544 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=CacheSize/CacheSizeGroup_4/CacheThrottle/CacheThr
grissiom 14771  0.0  0.6 820944 11604 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=CacheSize/CacheSizeGroup_4/CacheThrottle/CacheThr
grissiom 14764  0.0  0.6 821040 11700 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=CacheSize/CacheSizeGroup_4/CacheThrottle/CacheThr
grissiom 14731  0.0  0.6 821040 11724 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=CacheSize/CacheSizeGroup_4/CacheThrottle/CacheThr
grissiom 14770  0.0  0.6 829236 11728 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=CacheSize/CacheSizeGroup_4/CacheThrottle/CacheThr
grissiom 14766  0.0  0.6 821296 12016 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=CacheSize/CacheSizeGroup_4/CacheThrottle/CacheThr
grissiom 14765  0.0  0.6 821964 12112 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=CacheSize/CacheSizeGroup_4/CacheThrottle/CacheThr
grissiom 14729  0.0  0.6 829492 12124 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=ConnCountImpact/conn_count_6/ConnnectBackupJobs/C
grissiom  2050  0.0  0.6 557216 12212 ?        Sl   14:53   0:02 /usr/bin/knotify4
grissiom 14721  0.0  0.6 825056 12628 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=ConnCountImpact/conn_count_6/ConnnectBackupJobs/C
grissiom 14742  0.0  0.6 827716 13188 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=CacheSize/CacheSizeGroup_4/CacheThrottle/CacheThr
grissiom  2173  0.0  0.6 208388 13196 ?        S    14:53   0:00 /usr/bin/python -O /usr/share/wicd/gtk/wicd-client.py
grissiom 14726  0.1  0.7 828340 14320 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=ConnCountImpact/conn_count_6/ConnnectBackupJobs/C
grissiom 14723  0.1  0.7 823756 14324 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=extension --lang=en-US --force-fieldtest=ConnCountImpact/conn_count_6/ConnnectBackupJobs/C
grissiom  2202  0.0  0.8 394324 15468 ?        S    14:53   0:09 /usr/bin/python /usr/share/ibus/ui/gtk/main.py
grissiom 14719  0.2  0.9 827936 17928 ?        Dl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=renderer --lang=en-US --force-fieldtest=ConnCountImpact/conn_count_6/ConnnectBackupJobs/Co
grissiom 14712  0.1  1.0 833068 20868 ?        Dl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=renderer --lang=en-US --force-fieldtest=ConnCountImpact/conn_count_6/ConnnectBackupJobs/Co
grissiom  2136  0.0  1.1 617724 21116 ?        SNl  14:53   0:13 /usr/bin/nepomukservicestub nepomukstorage
grissiom  2018  2.0  1.2 576100 23720 ?        Sl   14:53  10:09 kwin -session 10d7d5d3dd000129139800000000019590000_1291998250_36566
grissiom  2065  0.0  1.2 221496 24340 ?        Sl   14:53   0:11 /usr/libexec/mysqld --defaults-file=/home/grissiom/.local/share/akonadi//mysql.conf --datadir /home/grissiom/.local/share/akonadi/db_data/ --socket=/home/grissiom/.local/share/akonadi/db_misc/mysql.socket
grissiom  2186  0.0  1.4 575384 28108 ?        SNl  14:53   0:21 /usr/bin/nepomukservicestub nepomukstrigiservice
grissiom 14715  0.2  1.5 853996 29300 ?        Sl   23:13   0:00 /home/grissiom/chrome-linux/chrome --type=renderer --lang=en-US --force-fieldtest=ConnCountImpact/conn_count_6/ConnnectBackupJobs/Co
grissiom  2052  0.1  1.8 777060 34916 ?        Dl   14:53   0:37 kdeinit4: plasma-desktop [kdeinit]             
grissiom 14711  0.5  2.1 842688 40960 ?        Dl   23:13   0:01 /home/grissiom/chrome-linux/chrome --type=renderer --lang=en-US --force-fieldtest=ConnCountImpact/conn_count_6/ConnnectBackupJobs/Co
grissiom 14651  2.6  2.3 458080 45348 ?        Dl   23:13   0:05 /home/grissiom/chrome-linux/chrome
root      1787  3.0  2.6 156584 49896 tty7     Ss+  14:48  15:28 /usr/bin/X -br -novtswitch -quiet :0 vt7 -nolisten tcp -auth /var/run/xauth/A:0-ayJrya
grissiom 14708  0.6  2.8 871444 53732 ?        Sl   23:13   0:01 /home/grissiom/chrome-linux/chrome --type=renderer --lang=en-US --force-fieldtest=ConnCountImpact/conn_count_6/ConnnectBackupJobs/Co
grissiom  2152  0.0  2.8 961768 54440 ?        Sl   14:53   0:10 kdeinit4: krunner [kdeinit]                    
grissiom 10822  0.2  2.9 510904 57052 ?        Dl   20:47   0:20 /usr/bin/okular /home/grissiom/Everybody can use English-20100414.pdf -icon okular -caption Okular
grissiom  2141  0.1  5.2 154600 99716 ?        SNl  14:53   0:31 /usr/bin/virtuoso-t +foreground +configfile /tmp/virtuoso_kn2136.ini +wait


`free -m` shows that cache size is more than 1GB while the "free" RAM is 1xMB. After I `killall okular`, system went well again.

`top` shows kswapd0 is busy running in this condition.

This condition is reproducible (at least) on my box. If you need any other info, feel free to tell me.
Comment 1 Gu Rui 2010-12-11 16:00:33 UTC
Created attachment 39842 [details]
full output of `ps auxw --sort=rss`
Comment 2 Alan 2012-08-14 14:10:36 UTC
This is expected behaviour. If you want to bound the memory usage to keep better performance use containers or overcommit settings