4

Google Chrome won't launch.

Whenever I try to launch it,

google-chrome-stable 

I get,

Illegal instruction (core dumped)

(I have already taken a look at,

No help. Yes, majority of these are closed. And before you vote to close this one as well, please understand that the same Chrome is running in the same OS (Ubuntu 15.10) in at least two other of my machines without any problem. So, if I report this on launchpad, the issue is likely to be ignored since they will not be able to reproduce it.)

Steps tried so far

  1. Completely remove Chrome.

    sudo apt-get purge google-chrome*
    
  2. Remove my (Chrome) configuration directory.

    rm -rvf .config/google-chrome/
    
  3. Reinstall Chrome from the latest binary.

    sudo dpkg -i ~/Downloads/google-chrome-stable_current_amd64.deb
    
  4. Relaunch Chrome and watch the log file. Chrome won't launch and core is dumped again. For log file, with command,

    sudo tail -f /var/log/syslog
    

    I get,

    Oct 18 12:27:53 HomeDell kernel: [ 1047.701443] traps: chrome[4798] trap invalid opcode ip:55f20da8199f sp:7ffd755d2080 error:0 in chrome[55f20c27d000+58b7000]
    

This is where I feel lost and do not know how to proceed further.

As I have already said, I am using Ubuntu 15.10 and it has been upgraded fully.


EDIT 1

Output of lscpu

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                2
On-line CPU(s) list:   0,1
Thread(s) per core:    2
Core(s) per socket:    1
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            15
Model:                 4
Model name:            Intel(R) Pentium(R) 4 CPU 3.00GHz
Stepping:              3
CPU MHz:               2992.460
BogoMIPS:              5984.92
L1d cache:             16K
L2 cache:              2048K
NUMA node0 CPU(s):     0,1

Output of file /opt/google/chrome/chrome

/opt/google/chrome/chrome: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.26, BuildID[sha1]=7990871775815c5438608f84498e66be16dd8d8b, stripped

EDIT 2

As advised here, I enabled the microcode (which was indeed disabled) for CPU, downloaded and installed the latest .deb file, made it a point to reboot my machine, then (try to) launch Google Chrome.

Unfortunately, the situation did not improve.

Masroor
  • 3,203

1 Answers1

4

This error happens when the CPU tries to execute an instruction that is not part of its instruction set. This may be caused by several reasons, like:

  • a corrupted executable file
  • a bug that makes the CPU load instructions from a memory segment that doesn't hold executable code
  • the program was compiled targeting an instruction set unsupported by the CPU
  • hardware failure

File corruption is easy to detect, you could just download the deb file again and reinstall. Hardware failure would probably affect other programs, not only Chrome.

I guess your other systems in which Chrome runs flawlessly have a newer CPU, right? Maybe last versions of chrome dropped support for Pentium 4 (although Chrome requirements for Linux states that Pentium 4 is supported). It could even be a bug in code that detects CPU capabilities and directs execution for a branch optimized for a particular instruction set.

There's one thing I think is worth trying. Open "Additional Drivers" and try to enable (or disable) the processor microcode firmware:

enter image description here

I've seen this causing "illegal instruction" errors sometimes.

Eric Carvalho
  • 55,453