System freeze/restart on high memory usage

Bug #1504914 reported by yas
34
This bug affects 7 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Medium
Unassigned

Bug Description

What is expected to happen is when all RAM and swap is either nearly or fully consumed by a process or application, the OS remains responsive, it doesn't crash to the login screen, and eventually the process or application asking for the majority of resources is force closed.

What happens instead is the mouse stops responding promptly or not at all, and eventually the system resets to the logon screen.

Specific scenarios to reproduce:
- First, when having several chrome tabs open, press CTRL+T several times and arrive to a memory limit.
- Second, I experience this when using virtualbox, given that the VM was asking for half of the memory available, as soon as I open a couple of tabs in chrome in the host the system started to be unusable.
- Third, to reproduce it easily I've installed memtester application and run a couple of instances of it asking 2G chunks, this effectively reproduce the crash very effectively.

I've checked:
- All 4GB of memory passed memtest86+.
- Tested with and without 4GB swap file same crash.

Untested: Adding in /etc/rc.local :
sysctl vm.vfs_cache_pressure=100000

WORKAROUND: By adding into /etc/sysctl.conf the following, I'm not losing control of the system even if it slows down when ramping up the swap use:
vm.min_free_kbytes=131072
vm.swappiness=5

ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: linux-image-3.13.0-65-generic 3.13.0-65.106
ProcVersionSignature: Ubuntu 3.13.0-65.106-generic 3.13.11-ckt26
Uname: Linux 3.13.0-65-generic x86_64
ApportVersion: 2.14.1-0ubuntu3.15
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: yas 3625 F.... pulseaudio
CurrentDesktop: Unity
Date: Sun Oct 11 10:41:41 2015
InstallationDate: Installed on 2015-01-17 (266 days ago)
InstallationMedia: Ubuntu 14.04.1 LTS "Trusty Tahr" - Release amd64 (20140722.2)
MachineType: SAMSUNG ELECTRONICS CO., LTD. 900X3C/900X3D/900X3E/900X4C/900X4D
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.13.0-65-generic.efi.signed root=UUID=c5d1dcf0-367e-4643-99f9-735befcdaba1 ro quiet splash vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-3.13.0-65-generic N/A
 linux-backports-modules-3.13.0-65-generic N/A
 linux-firmware 1.127.15
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 07/15/2015
dmi.bios.vendor: Phoenix Technologies Ltd.
dmi.bios.version: P11ABK
dmi.board.asset.tag: Base Board Asset Tag
dmi.board.name: NP900X3E-A01ES
dmi.board.vendor: SAMSUNG ELECTRONICS CO., LTD.
dmi.board.version: FAB1
dmi.chassis.asset.tag: No Asset Tag
dmi.chassis.type: 9
dmi.chassis.vendor: SAMSUNG ELECTRONICS CO., LTD.
dmi.chassis.version: 0.1
dmi.modalias: dmi:bvnPhoenixTechnologiesLtd.:bvrP11ABK:bd07/15/2015:svnSAMSUNGELECTRONICSCO.,LTD.:pn900X3C/900X3D/900X3E/900X4C/900X4D:pvr0.1:rvnSAMSUNGELECTRONICSCO.,LTD.:rnNP900X3E-A01ES:rvrFAB1:cvnSAMSUNGELECTRONICSCO.,LTD.:ct9:cvr0.1:
dmi.product.name: 900X3C/900X3D/900X3E/900X4C/900X4D
dmi.product.version: 0.1
dmi.sys.vendor: SAMSUNG ELECTRONICS CO., LTD.

Revision history for this message
yas (sayazyi) wrote :
Revision history for this message
Brad Figg (brad-figg) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
yas (sayazyi) wrote :

I've tested it in the upstream kernel as indicated here: https://wiki.ubuntu.com/Kernel/MainlineBuilds
$ uname -a
Linux ultra 3.14.1-031401-generic #201404141220 SMP Mon Apr 14 16:21:48 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

It behaves properly when swap is on, and when swap is off it slows down when reaching higher limits of memory consumption and finally google-chrome crashes and memtester quits when trying to access more than available memory.
The system stays stable, losing a little of responsiveness (even if CPU is not at maximum usage) but being still usable . I guess is reasonable expected and a much better behavior.

It comes already with this default values:
vm.swappiness = 60
vm.min_free_kbytes = 67584
vm.vfs_cache_pressure = 100

Hope this helps.

yas (sayazyi)
tags: added: kernel-fixed-upstream
Revision history for this message
penalvch (penalvch) wrote :

yas, to confirm, when you are booted back to the logon screen with the Ubuntu kernel (not mainline), are there any crash files in /var/crash?

Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Incomplete
yas (sayazyi)
tags: removed: kernel-fixed-upstream
Revision history for this message
yas (sayazyi) wrote :

Hi Christopher,
I've done further tests.
Regarding your question, effectively after reproducing the problem with the previous kernel I've got a crash file from google-chrome. Even with the default values mentioned in #3
What I've observed is:
- when having swap off the problem arrives faster when reaching the memory limit, the system just restart at logon screen (but it doesn't seem a complete reset because I didn't get the GRUB screen (more like the lightdm process restart?)
- when having swap on the problem arrives when consuming almost all the swap memory, but same issue: mouse and keyboard start not to respond and then finally restart.
- with the new kernel 3.14 the restart does not arrive but the system become equally freeze near the limit of memory and eventually require a hard reset or have to wait to be able to kill some of the process (that could take too long). But in this case google-chrome started to give unresponsive windows messages and kill their own processes himself, giving proper errors.

The steps I use to reproduce the problem are:
- execute $ sudo memtester 2G
- open almost 30 bookmarks of web pages as tabs of google-chrome
- eventually execute $ sudo memtester 1G (when using swap to reach the limit again)

Revision history for this message
penalvch (penalvch) wrote :

yas:
"Regarding your question, effectively after reproducing the problem with the previous kernel I've got a crash file from google-chrome."

Please do file a crash report against that crash file as outlined in https://wiki.ubuntu.com/ReportingBugs .

Despite this, could you please test the latest upstream kernel available from the very top line at the top of the page from http://kernel.ubuntu.com/~kernel-ppa/mainline/?C=N;O=D (the release names are irrelevant for testing, and please do not test the daily folder)? Install instructions are available at https://wiki.ubuntu.com/Kernel/MainlineBuilds . This will allow additional upstream developers to examine the issue.

If the latest kernel did not allow you to test to the issue (ex. you couldn't boot into the OS) please make a comment in your report about this, and continue to test the next most recent kernel version until you can test to the issue. Once you've tested the upstream kernel, please comment on which kernel version specifically you tested. If this issue is fixed in the mainline kernel, please add the following tags by clicking on the yellow circle with a black pencil icon, next to the word Tags, located at the bottom of the report description:
kernel-fixed-upstream
kernel-fixed-upstream-X.Y-rcZ

Where X, Y, and Z are numbers corresponding to the kernel version.

If the mainline kernel does not fix the issue, please add the following tags:
kernel-bug-exists-upstream
kernel-bug-exists-upstream-X.Y-rcZ

Please note, an error to install the kernel does not fit the criteria of kernel-bug-exists-upstream.

Once testing of the latest upstream kernel is complete, please mark this report's Status as Confirmed. Please let us know your results.

Thank you for your understanding.

description: updated
Revision history for this message
yas (sayazyi) wrote :

Hi Christopher: I've tested it with the latest upstream kernel available 4.3.0-040300rc5 and the problem persist with the same symptoms described previously. This time tough I've got a crash file _usr_bin_Xorg.0.crash but when I've tried to send it as bug report it gives an error and prevent me to send it. The title of the crash report would be "Xorg crashed with SIGABRT in __libc_message()". HTH

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
jecks (slayerproof32) wrote :

Happens on every Linux OS I've tried
-Opensuse Leap
-Manjaro
Ubuntu 17.10 and 18.04 though 18.04 is a little better
-Fedora 27 and 28

How to trigger
-Open a whole bunch of tabs
-Reach high mem usage
-CPU load average will spike to really high numbers
-Excessive writes to hard drive
And system will freeze for a MINIMUM of 10 minute
-tests performed using Firefox
-This bug still exists in 2018.

Revision history for this message
jecks (slayerproof32) wrote :

Tested systems
-E6400 with 3Gb ram, 3Gb swap gnome 3.26 and 3.28 kernel 4.12 and 4.15
-I5 320m with 4gb ram 4gb swap /gnome 3.28

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.