CVE-2025-39704 – LoongArch: KVM: Fix stack protector issue in send_ipi_data()

The following table lists the changes that have been made to the
CVE-2025-39704 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution
of a vulnerability, and for identifying the most recent changes that may
impact the vulnerability’s severity, exploitability, or other characteristics.

  • New CVE Received
    by 416baaa9-dc9f-4396-8d5f-8c081fb06d67

    Sep. 05, 2025

    Action Type Old Value New Value
    Added Description In the Linux kernel, the following vulnerability has been resolved:

    LoongArch: KVM: Fix stack protector issue in send_ipi_data()

    Function kvm_io_bus_read() is called in function send_ipi_data(), buffer
    size of parameter *val should be at least 8 bytes. Since some emulation
    functions like loongarch_ipi_readl() and kvm_eiointc_read() will write
    the buffer *val with 8 bytes signed extension regardless parameter len.

    Otherwise there will be buffer overflow issue when CONFIG_STACKPROTECTOR
    is enabled. The bug report is shown as follows:

    Kernel panic – not syncing: stack-protector: Kernel stack is corrupted in: send_ipi_data+0x194/0x1a0 [kvm]
    CPU: 11 UID: 107 PID: 2692 Comm: CPU 0/KVM Not tainted 6.17.0-rc1+ #102 PREEMPT(full)
    Stack : 9000000005901568 0000000000000000 9000000003af371c 900000013c68c000
    900000013c68f850 900000013c68f858 0000000000000000 900000013c68f998
    900000013c68f990 900000013c68f990 900000013c68f6c0 fffffffffffdb058
    fffffffffffdb0e0 900000013c68f858 911e1d4d39cf0ec2 9000000105657a00
    0000000000000001 fffffffffffffffe 0000000000000578 282049464555206e
    6f73676e6f6f4c20 0000000000000001 00000000086b4000 0000000000000000
    0000000000000000 0000000000000000 9000000005709968 90000000058f9000
    900000013c68fa68 900000013c68fab4 90000000029279f0 900000010153f940
    900000010001f360 0000000000000000 9000000003af3734 000000004390000c
    00000000000000b0 0000000000000004 0000000000000000 0000000000071c1d

    Call Trace:
    [] show_stack+0x5c/0x180
    [] dump_stack_lvl+0x6c/0x9c
    [] vpanic+0x108/0x2c4
    [] panic+0x3c/0x40
    [] __stack_chk_fail+0x14/0x18
    [] send_ipi_data+0x190/0x1a0 [kvm]
    [] __kvm_io_bus_write+0xa4/0xe8 [kvm]
    [] kvm_io_bus_write+0x54/0x90 [kvm]
    [] kvm_emu_iocsr+0x180/0x310 [kvm]
    [] kvm_handle_gspr+0x280/0x478 [kvm]
    [] kvm_handle_exit+0xc0/0x130 [kvm]

    Added Reference https://git.kernel.org/stable/c/5c68549c81bcca70fc464e305ffeefd9af968287
    Added Reference https://git.kernel.org/stable/c/b5b49d341f90eed6de794b6ff34ad3dd66d34343
Share the Post:

Related Posts