7 Release-Specific Information for Oracle Linux 7.8 (aarch64)

WARNING:

Oracle Linux 7 is now in Extended Support. See Oracle Linux Extended Support and Oracle Open Source Support Policies for more information.

Migrate applications and data to Oracle Linux 8 or Oracle Linux 9 as soon as possible.

The following information pertains to the Oracle Linux 7.8 (aarch64) release.

Note that some information in this chapter may also apply generally to the x86_64 platform. For general information that may apply to both the x86_64 and Arm platforms, as well as information that is specific to the x86_64 platform, refer to the previous chapters of this document.

System Requirements and Limitations (aarch64)

System requirements and limitations for 64-bit Arm architecture are under review. You can check whether your hardware is supported on Oracle Linux 7.8 (aarch64) by checking the Hardware Certification List at https://linux.oracle.com/hardware-certifications. Hardware is listed as it becomes available and is validated.

File System, Storage, and Address Space Limitations

The following table describes the maximum file size and maximum file system size for the BTRFS, ext4, and XFS file systems. File system limitations are affected by kernel versions and features, and by the architecture of the system on which Oracle Linux is installed. The values depicted here are estimates based on the known variables that might affect the maximum theoretical value that can be achieved. The theoretical values might be higher than those depicted here, and the actual achievable values might be lower than the values shown, depending on the hardware and the kernel version that is used.

File System Type Maximum File Size Maximum File System Size

btrfs

8 EiB

8 EiB

ext4

16 TiB

1 EiB

xfs

8 EiB

8 EiB

The limits for the ext4 file system that are described here are higher than those recommended and might prove unstable. If you plan to work with systems where you are intend to work towards using higher file system sizes or file sizes, it is recommended that you use either the BTRFS or XFS file system.

The maximum supported size for a bootable logical unit number (LUN) is 50 TB. GPT and UEFI support are required for LUNs that are larger than 2 TB.

The maximum size of the address space that is available to each process is 128 TB.

Shipped Kernel (aarch64)

Oracle Linux 7.8 (aarch64) ships with the following kernel package:

kernel-uek-4.14.35-1902.300.11.el7uek

Unbreakable Enterprise Kernel Release 5 Update 3 (UEK R5U3), which is the default kernel.

Besides the Unbreakable Enterprise Kernel Release 5 (UEK R5) kernel, the Unbreakable Enterprise Kernel Release 6 (UEK R6) kernel is also supported on the 64-bit Arm platform. You can download the UEK R6 packages from ULN or the Oracle Linux yum server. For information about features and known issues in UEK R6, see Unbreakable Enterprise Kernel Release 6: Release Notes (5.4.17-2011).

The Oracle Linux release is tested as a bundle, as shipped on the installation media image. When installed from the installation media image, the minimum kernel version that is supported is the kernel that is included in the image. Downgrading kernel packages is not supported, unless recommended by Oracle Support.

The kernel source code for the shipped kernel is available after the initial release through a public git source code repository at https://github.com/oracle/linux-uek.

New Features (aarch64)

The following features are specific to the 64-bit Arm (aarch64) platformonly. See New Features and Changes for information about new features in Oracle Linux 7.8, many of which also are supported on the 64-bit Arm (aarch64) architecture.

Oracle Arm Toolset 1

This release includes the Oracle Arm Toolset 1, which provides the following developer tools:

  • gcc v7.3

    Supports the 2011 revision of the ISO C standard

  • g++ v7.3.0

    Supports the 2014 ISO C++ standard

  • gfortran v7.3.0

    Supports Fortran 2008

  • go v1.10.1

    Go Programming Language

  • gdb v8.0.1

    GNU debugger

  • binutils v2.30

    Binary utilities

Note that the versions of the tools that are listed are more recent than the base system versions. The base versions are intentionally kept stable for several years to ensure compatibility for device drivers and other components that might be closely tied to a specific compiler version. However, you might choose to use more modern language features for your own applications.

Refer to the Oracle Linux 7 Software Collections yum Repository for a complete list of the software packages that are included in Oracle Arm Toolset 1.

To use the Oracle Arm Toolset 1, do the following:

  1. Download the aarch64 version of the Oracle Linux .repo file.

    sudo cd /etc/yum.repos.d
    sudo wget https://yum.oracle.com/aarch64/public-yum-ol7.repo
  2. Enable the Software Collection by editing the .repo file and setting enable=1 for the ol7_software_collections repository.

    Note that the .repo file has many other repositories that can also be enabled, along with the ol7_software_collections repository.

  3. Install the oracle-armtoolset-1 package.

    sudo yum install 'oracle-armtoolset-1*'
  4. Start a new shell for the software collection, which is the bash shell in the following example:

    sudo scl enable oracle-armtoolset-1 bash

    You can optionally specify another shell in the command.

  5. Run the following commands to check that the gcc command starts the correct copy and also that the paths are as correct:

    which gcc
    echo $PATH
    echo $MANPATH
    echo $INFOPATH
    echo $LD_LIBRARY_PATH

    where the output of the which command should return the following:

    /opt/oracle/oracle-armtoolset-1/root/usr/bin/gcc

    The output of the four echo commands should begin with the following:

    /opt/oracle/oracle-armtoolset-1/

For more details and troubleshooting information, see the blog post at https://blogs.oracle.com/linux/getting-started-with-oracle-arm-toolset-1.

Known Issues (aarch64)

The following are known issues for Oracle Linux 7.8 (aarch64). Some issues might also apply to the x86_64 platform. See Known Issues for information about issues that apply to both the x86_64 and Arm platforms.

Note that additional issues that are specific to the kernel that you are using might also exist. For issues that are specific to the kernel, see the release notes for the UEK R5 release that you are running in the Unbreakable Enterprise Kernel documentation library.

Support Limited to Text-Mode Environments and Server Software

Oracle Linux 7.8 (aarch64) is engineered and tested for server-related usage only. Although packages for desktop and productivity features are built and provided, testing of these packages is limited and support for graphical mode packages is not provided in this update. You can install any of these packages on your platform, but some of these applications might not work or could have issues that are not documented here.

Oracle does not provide support for these packages and any assistance is community-based. If you choose to run a desktop environment or any desktop applications, direct your questions to the Oracle Linux for Arm community forum at https://community.oracle.com/tech/apps-infra/categories/oracle-linux-for-arm.

Installation Issues

The following issues might be encountered during an Oracle Linux 7.8 (aarch64) installation.

Alternate installation options during text-based installations

During a text-based installation, when the installer detects the video controller, it offers a graphical installation option on the system video console by default. The boot menu also may not offer options to perform text-based or VNC-based installation.

To perform a text-based installation, you must specify the inst.text option on the boot command line. If you intend to perform a remote graphical installation over VNC, you must use the inst.vnc option, as well as specify boot options to configure the network. Typically ip=dhcp is used for this purpose.

For more information about boot options, see Oracle Linux 7: Installation Guide.

(Bug ID 27581120)

Installing the oracle-armtoolset-8 package sometimes fails

Running the yum install oracle-armtoolset-8 command sometimes fails to install the package. This failure occurs at the following stage of the installation:

Installing : oracle-armtoolset-8-runtime-8.0-1.el7_6.aarch64  16/69
Error unpacking rpm package oracle-armtoolset-8-runtime-8.0-1.el7_6.aarch64
error: unpacking of archive failed on file
/opt/oracle/oracle-armtoolset-8/root/lib64: cpio: rename
  Installing : oracle-armtoolset-8-libgo-8.2.0-6.el7_6.aarch64  17/69
error: oracle-armtoolset-8-runtime-8.0-1.el7_6.aarch64: install failed
  Installing : oracle-armtoolset-8-libasan-8.2.0-6.el7_6.aarch64  18/69

Subsequent attempts to install the individual package also fail:

Failed:
  oracle-armtoolset-8-runtime.aarch64 0:8.0-1.el7_6 

If you encounter this issue, run the following commands to remove and then reinstall the oracle-armtoolset-8 package:

sudo yum remove 'oracle-armtoolset-8*'
sudo yum remove policycoreutils-python
sudo rm -Rf /opt/oracle/oracle-armtoolset-8/
sudo yum install policycoreutils-python
sudo yum install 'oracle-armtoolset-8*'

(Bug ID 29672241)

Kernel panic for QLogic cnic module on ThunderX2 during installation

The QLogic cnic driver module is unsupported on 64-bit Arm platforms. The Cavium ThunderX2 servers include hardware that can cause the cnic driver module to load, thus triggering a kernel panic.

To work around this issue, blocklist the cnic module at boot by using the module_blacklist=cnic boot option in the kernel command line for the installer. To prevent the module from installing or loading in the future, create the file /etc/modprobe.d/cnic.conf file and add the following lines:

blacklist cnic
install cnic /bin/true

(Bug IDs 27011806, 28109733)

btrfs-convert operation results in a file system that cannot be mounted

You can use the btrfs-convert tool to convert an ext4 file system to btrfs. However, if the tool attempts to convert a file system that has not been created with a sector block size that matches the system default page size (which is set to 64 KB for the aarch64 platform) the resulting file system cannot be mounted. This issue can occur if the original ext4 file system is not created by using the -b 65536 option to specify a 64 KB block size.

(Bug ID 28200561)

Manual execution of shim first-stage boot loader may fail in the UEFI shell

Manually loading shim binaries from the UEFI shell may fail in some scenarios. The following cases are known to fail:

  • FS0:\EFI\redhat\shimaa64.efi

  • FS0:\EFI\redhat\> shimaa64.efi

FS0:\> \EFI\redhat\shimaa64.efi is known to work correctly.

A standard installation is unaffected by this bug. The problem is limited to the manual execution of shim in the UEFI shell.

(Bug ID 27962691)

Kdump tools fail to create a vmcore-dmesg.txt on systems with multiple CPUs

On systems with multiple CPUs, the crash dump tools that are included with Kdump fail to create a vmcore-dmesg.txt file, which is created with the vmcore file. This issue may result in the following segmentation fault:

...
kdump: saving to /sysroot//var/crash/127.0.0.1-2018-05-22-12:34:45/
kdump: saving vmcore-dmesg.txt
/lib/kdump-lib-initramfs.sh: line 118:   459 Segmentation fault      
$_dmesg_collector /proc/vmcore > ${_path}/vmcore-dmesg-incomplete.txt
kdump: saving vmcore-dmesg.txt failed
kdump: saving vmcore
Copying data                                      : [100.0 %] \          
eta: 0s
kdump: saving vmcore complete 

This issue is occurs because the log buffer that is dynamically allocated by the kernel. vmcore-dmesg does not know how to access memory that allocated in this way. The issue is typically triggered on systems with 64 or more CPUs, but has also been observed on a 32-core Ampere X-Gene 3 system.

The dmesg output can be retrieved manually by the running crash command against vmcore and then by using the dmesg command when in the crash shell.

(Bug ID 28064675, 28670960)

Segmentation fault when running bluedevil-wizard

The bluedevil-wizard, which is available in the bluedevil package, is unable to connect or locate Bluetooth devices and fails with a segmentation fault when it is run.

(Bug ID 27101618)

dsktune command fails with an unsupported error message

The dsktune command, which is included with the 389 Directory Server base package (389-ds-base) fails with the following error message:

ERROR: This system does not support CMPXCHG16B instruction (cpuflag cx16).
nsslapd-enable-nunc-stans must be set to "off" on this system.
In a future release of Directory Server this platform will NOT be
supported.

ERROR  : The above errors MUST be corrected before proceeding.

The message is notifying you that the system does not have support for cx16, which is a feature commonly available on x86_64 platforms.

The dsktune command checks that a system meets requirements and can provide helpful information pertaining to configuration; however, it is not required to run the 389 Directory Server.

(Bug ID 26861135)

Installation and Availability (aarch64)

The following installation and availability information applies specifically to the 64-bit Arm platform for the Oracle Linux 7.8 (aarch64) release. For general installation and availability information, as well as information that applies specifically to the x86_64 platform, see Installation and Availability.

You can also obtain the latest packages for Oracle Linux 7.8 (aarch64) from the Unbreakable Linux Network (ULN) and the Oracle Linux yum server. To install additional software for Oracle Linux 7.8 (aarch64), subscribe to the different channels on ULN or by enable the required repositories within your yum configuration. To explore the channels that are available on ULN, log in to https://uln.oracle.com/ and view the Channels option. To view the Oracle Linux yum repositories that are available for Oracle Linux 7.8 (aarch64), visit https://yum.oracle.com/oracle-linux-7.html.

Note:

The Oracle Linux yum server does not provide equivalent repositories for some channels that are available on ULN. These channels provide non-open source packages.

UEK R5 is the default boot kernel for fresh installations of Oracle Linux 7.8 (aarch64). For more information, see the releases notes for the UEK R5 release that you are running in the Unbreakable Enterprise Kernel documentation library.

Besides the Unbreakable Enterprise Kernel Release 5 (UEK R5) kernel, the Unbreakable Enterprise Kernel Release 6 (UEK R6) kernel is also supported on the 64-bit Arm platform. You can download the UEK R6 packages from ULN or the Oracle Linux yum server. For information about features and known issues in UEK R6, see Unbreakable Enterprise Kernel Release 6: Release Notes (5.4.17-2011).

Installing the ISO

The installation process for Oracle Linux 7.8 (aarch64) does not differ substantially from the installation process on the x86_64 platform. The same instructions and information that are provided in Oracle Linux 7: Installation Guide also apply to the Arm platform.

The following is the recommended installation process:

  1. Obtain the ISO image from the Oracle Technology Network (https://www.oracle.com/linux/).

  2. Configure a network installation server to perform the installation.

  3. Create a kickstart file to automate your installation.

  4. Connect your target Arm hardware to the network and then configure the firmware to boot from the network or by performing a PXE boot.

    Refer to your hardware documentation for instructions.

  5. Boot the target hardware and wait for the installation to complete.

For more information about configuring a network installation server and using a kickstart file to boot the installer, see Oracle Linux 7: Installation Guide.

The following exceptions and additional information might be required to complete the installation:

Graphical network-based installation

If you are performing a manual installation over the network and intend to use the remote graphical installer over VNC by setting the inst.vnc boot option, you must also set boot options to configure the network. Otherwise, the graphical installer fails to load and the installation reverts to text mode.

To ensure that the VNC server starts at boot, append the appropriate ip option to your kernel boot command. Typically, for a DHCP configuration, this may look similar to the following: ip=eth0:dhcp.

Software Selection Groups

Note that the available Software Selection Groups in the installer may differ slightly from the groups that are available in the x86_64 installer.

Software Sources

Note that unlike the x86_64 installer, there are no alternate Software Source repositories provided on this ISO.