Intel® System Debugger User Guide

ID 648476
Date 06/13/2024
Confidential
Document Table of Contents

Loading a KASLR-Enabled Linux* Kernel

Important:

This feature is only available for x86_​64. If support is needed for other architectures, please reach out to support.

To load a Linux* kernel where kernel address space layout randomization (KASLR) is enabled, follow the steps below:

  1. Halt the target.

  2. Select a desired hardware thread in the Debug view.

  3. Expand the drop-down menu of the load_this Load the Current Module button and select Load a KASLR-Enabled Linux Kernel.

  4. In the dialog box, add the path to the vmlinux file and click the OK button.

  5. Launch the ISD Shell and check the error messages to determine possible issues.

    If the KASLR-Enabled Linux* Kernel was added successfully, the shell returns a corresponding message.

You can also load a KASLR-Enabled Linux* Kernel by calling the following function:

threads[N].load_kernel_modules(vmlinux_path="<vmlinux_path>")

where

  • N is the ordinal number of a hardware thread

  • vmlinux_​path is the path to the vmlinux file

Example

threads[0].load_kernel_modules(vmlinux_path="my_vmlinux")

Error Messages

Error Message

Failure Cause

Solution

<vmlinux path> is not a valid file

The vmlinux path selected is not valid.

Make sure the file path exists and is a valid Linux kernel image.

Feature not supported for the architecture of <thread>

Current support is for x86-64 only.

Make sure to use a supported target.

Unable to determine the memory offset of <vmlinux path>

Could not find the Linux kernel image in the target memory.

Make sure that Linux is booted up properly.