11

Please read: See the last bit. I don't believe this is an issue related to Ubuntu, but rather VS Code.

Recently, under 17.10 and 18.04 (I just upgraded today), Ubuntu will randomly and completely freeze. I cannot move the cursor or use the keyboard. Naturally, I have tried switching to a TTY session with no success. Every time, I must resort to SysRq + REISUB, which is (obviously) not preferred.

I have attempted to switch graphics drivers, on the theory that it may be that. I was originally using the open source nVidia driver, and switched to the proprietary to no avail. I'm currently using the open source driver.

All that I typically have open is Firefox (not a ton of tabs loaded) and VS Code, with at most a couple files and a terminal open.

Any ideas?

Update: The system logs show no indication of anything at all happening, let alone something wrong. I don't know if this is related, but sometimes (and especially after booting) programs take a significant amount of time (> 5-10 seconds), even command line programs.

Yet another update! — Even with all GNOME extensions disabled, it still crashed. I tried XFCE, which still crashed.

Summary: Ubuntu completely freezes at seemingly random times, leaving no trace in logs, and is not related to any specific desktop environment or GNOME extensions.

(likely final) update: I'm convinced this is an issue with VS Code. I have been running GNOME for days, with other Electron apps open (Slack, Pulse, etc.), and have not had a single freeze. I have DM'd VS Code on Twitter, and will likely file a bug report as they haven't responded yet.

  • 1
    Start with your logs. That's much easier than mucking with video drivers. – user535733 Jul 1 '18 at 1:59
  • @user535733 Which log specifically? – jhpratt Jul 1 '18 at 2:00
  • Hi jhpratt, for me worked this askubuntu.com/a/870235/790920. – abu_bua Jul 1 '18 at 2:02
  • @jhpratt I suggest methodically searching ALL your logs in /var/log. It should be apparent pretty quickly which ones are relevant and which ones not. You are, of course, searching for the few seconds before a freeze occurs, not just tediously reading everything...so it helps if you keep track of EXACT time of an incident. – user535733 Jul 1 '18 at 2:06
  • 1
    journalctl -b -1 -xe will show you logs at the end of the previous boot. How much RAM do you have? How much swap? free;swapon will tell you. – waltinator Jul 1 '18 at 3:04
6

So it turns out that this isn't specific to Ubuntu, but I'll post this here anyways for future reference.

Apparently, even though I'm ignoring certain files using the files.exclude setting (notably the ./node_modules directory), VS Code still watches those files for changes.

To solve that, simply copy the list from files.exclude to files.watcherExclude. This will prevent VS Code from searching the many thousands of files that are in node_modules or other similar directories. That way, it will leave some RAM for Chrome to gobble up.

  • hi @jhpratt are these changes you're referring to changes to be made in VS Code's settings.json file? – cryanbhu Jul 22 at 6:48
  • 1
    @cryanbhu Yes, that's correct. To the best of my knowledge, this information is still accurate as well. – jhpratt Jul 22 at 8:45
3

I just ran into this. Upon launch, in a big project, my system would freeze after ~20 seconds and become unresponsive (Ubuntu 18.04). Running htop while launching VSCode showed that it took all the cores to 100% (i7-8700K), ate all the memory (16gb) and then the swap. The freeze happened moments later. This was happening because of a bad extension, in my case it was CSS Peek.

So try launching vscode with extensions disabled (code --disable-extensions) and see if it still happens. If it doesn't track down the faulty extension and send it to hell.

I had random full freezes happening and spent quite a few hours trying to find out why. On restart the logs were really not helpful. I initially thought it was the nvidia driver, but no - just a VSCode extension.

1

I've experienced the same problem. Eventually I realized that in my case the problem is running out of memory (I have 8gb ram and just 1gb swap partition on disk). I fixed this by allocating additional swap space using file in my root directory:

sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

this will temporary enable additional 8gb of swap for your system. If it will help, here you can read further instructions for enabling new swap constantly.

Another options are: add RAM physically or add/enlarge swap partition.

I used new swap as a file because I got luks+lvm encrypted system and resizing existing swap partition is too complicated and risky in my case.

P.S. I got Ubuntu 18.04

  • Probably nobody will spend time/money increasing RAM because of a "text editor". – matousc Sep 12 '18 at 13:57
  • @matousc well you are right, and because of that it's a second option. First is to add swap – Artem S. Jan 11 at 20:53
  • @matousc VS Code is a full-fledged IDE as well as a text editor. – prooffreader Mar 25 at 10:51
1

I have also suffered from random system crashes when running VSC. Even tried to start without extensions, which didn't help me at all. A few times my system froze right on startup of VSC.

However, I checked the logs and found that these crashes might correlate to the graphics driver (NVidia GTX 660).

Solution in my case: Switching from Nouveau to proprietary driver (I have chosen the metapackage)

Btw: Using Ubuntu 18.04

1

I got the same issue in my Ubuntu 16.04.

I did switch off git.autorefresh in the Settings, then it works flawlessly and smoothly

  • Helped me too, thanks. – ivan.ukr Aug 4 at 1:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.