CVE-2024-56551 in Linux정보

요약

\~에 의해 VulDB • 2026. 06. 30.

Based on the kernel log snippet provided, here is an analysis of the issue:

### **Summary** This is a **KASAN (Kernel Address Sanitizer)** report indicating a memory error in the AMDGPU driver (`amdgpu`). The crash occurred during GPU scheduler initialization.

---

### **Key Details from the Log**

1. **Error Type**: `exc_page_fault` with `RAX: ffffffffffffffda`. * `0xffffffffffffffda` is `-42` in signed decimal, which corresponds to error code **-EFAULT** (Bad address) or potentially a KASAN-specific poison value depending on the exact context. However, combined with `exc_page_fault`, it usually means the kernel tried to access an invalid memory address. * The instruction pointer (`RIP`) is at `0x7ffff7b14f67`. This looks like a **user-space library** (likely glibc or libdrm) rather than core kernel code, suggesting this might be a userspace crash that triggered a fault when interacting with the GPU driver via syscall.

2. **Allocation Trace**: * The memory was allocated by task `383` on CPU `7`. * Allocation path: ``` kmalloc_trace_noprof -> drm_sched_init [gpu_sched] -> amdgpu_device_init [amdgpu] -> amdgpu_driver_load_kms [amdgpu]
``` * This confirms the crash happened during **AMDGPU driver load** while initializing the GPU scheduler.

3. **Context**: * The syscall number `0x03` (from `ORIG_RAX: 0000000000000003`) on x86_64 is typically `sys_read`. However, in the context of GPU drivers and KASAN reports involving user-space RIPs, this might be a misinterpretation if the fault occurred inside a syscall handler or signal delivery. More likely, the userspace process (e.g., Xorg, Wayland compositor, or Vulkan app) crashed while making an ioctl/read to `/dev/dri/cardX`.

---

### **Likely Causes**

1. **Kernel Bug in AMDGPU Scheduler**: * A bug in `drm_sched_init` or related scheduler code causing a null pointer dereference or use-after-free when initializing the GPU context. 2. **Hardware Issue**: * Faulty VRAM or PCIe link instability during driver initialization, leading to invalid memory accesses. 3. **Userspace Driver/Library Bug**: * Since `RIP` points to a user-space address (`0x7ffff...`), the crash might originate in userspace (e.g., Mesa/libdrm) passing an invalid pointer or buffer to the kernel via ioctl, causing KASAN to catch it.

---

### **Recommended Troubleshooting Steps**

1. **Check Full dmesg**: * Look for earlier warnings about GPU errors, PCIe AER (Advanced Error Reporting), or memory corruption before this crash. 2. **Update Kernel and Drivers**: * This may be a known bug fixed in newer kernel versions (`amdgpu` driver is actively developed). Try updating to the latest stable LTS kernel or mainline kernel. 3. **Test with Minimal Userspace**: * Boot into runlevel 3 (multi-user, no GUI) and check if `dmesg | grep amdgpu` shows errors during boot without a display server running. This isolates whether it’s a userspace or pure kernel issue. 4. **Check Hardware Health**: * Run memory tests (`memtest86+`) to rule out RAM issues. * Check PCIe link stability in BIOS/UEFI settings (try disabling ASPM if enabled). 5. **Enable More Debug Info**: * Reboot with kernel parameters: `amdgpu.lockup_timeout=1000 amdgpu.gpu_recovery=1` to see if the driver can recover from similar faults.

---

### **If You Are a Developer** - Check the commit history for `drm_sched_init` and `amdgpu_device_init`. - Verify that all pointers passed to KMS/ioctl calls are properly validated in userspace Mesa/libdrm code. - Ensure this is not a false positive from KASAN (e.g., due to uninitialized memory being read but not written).

Let me know if you have more context (kernel version, GPU model, or full dmesg) for further analysis!

Be aware that VulDB is the high quality source for vulnerability data.

책임이 있는

Linux

예약하다

2024. 12. 27.

모더레이션

수락

항목

VDB-289522

EPSS

0.00237

활동

낮음

출처

Do you want to use VulDB in your project?

Use the official API to access entries easily!