Oracle DB12c / OL7 / VBox 5 – Perl Segmentation Fault

Yay!

Back on August 22, 2015, I wrote a post about some challenges I was experiencing while trying to install Oracle DB12c on Linux 7 using VirtualBox 5.x. You can read that here. Since then, I have had the opportunity to work with Simon Coter, Principal Product Manager for Oracle VM and VirtualBox to get to the root of this problem. In particular the segmentation fault when you run the root.sh script.

Environment:

Oracle Virtual Box 5.0.12
MacBook Pro (Retina, 15-inch, Mid 2014)
Processor: 2.2 GHz Intel Core i7

Take a look at the following image and snippet from the installation log file:

grid_sf

As you can see, this is related to Perl and the initial solution proposed was to recompile the Perl binaries then your installation would complete.

What is really going on here?  According to my friends on the Virtual Box team:
“It appears that there maybe a bug in the intel-compiler that is not able to leverage 4th cache-level available on some modern CPUs. Very recent Intel CPUs have 4 cache descriptors and VBox 5.0.x passes this information to the guest. For those of you that  are still running VBox 4.3.x, “this problem was not triggered on VBox 4.3.x because this version did not pass the full CPUID cache line information to the guest.”

In order to correct this issue, you must execute the following series of commands PRIOR to running your VM where <VM name> is the name of the VBox VM.

These commands tweak the CPUID bits passed to the guest:

If you need to figure out the VM name, you can execute VBoxManage list vms at your command prompt.

Note, this fix is on a per virtual machine basis. I will continue to work with Oracle and hopefully we will see a more permanent solution.

Enjoy!dbaOnTap

Bookmark the permalink.

5 Responses to Oracle DB12c / OL7 / VBox 5 – Perl Segmentation Fault

  1. Pingback: Create Wallet causes Segmentation Fault in Oracle GoldenGate VBox5 - My Experiences with Oracle Technology

  2. Shane Borden says:

    Looks like once they fix the bug, you might have to remove the extra data from the virtual box config if you want to use the “4th cache” within the CPU. When you run this fix, it adds data to the .vbox file for that virtual host:

    ………

    Thoughts?

  3. Pingback: Vagrant for you RAC test environment | Future Veterans

  4. Pingback: Perl and new Intel CPUs with 4 level cache – Linux & Unix & Database

  5. Pingback: Installing Oracle Database 12cR2 on Linux 7.3 - My Experiences with Oracle Technology