You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将Kyber转换为内核模块时触发DOUBLEFAULT异常求助

将Kyber转换为内核模块时触发DOUBLEFAULT异常

我尝试将pq-crystals/kyber转换为内核模块,但触发了DOUBLEFAULT异常。我的复刻仓库地址为fwag/kyber。以下是核心转储与反汇编信息:

crash> bt
PID: 3230     TASK: ffff9069d0b90000  CPU: 0    COMMAND: "insmod"
 #0 [fffffe000000ad60] machine_kexec at ffffffff9768b0e0
 #1 [fffffe000000adc0] __crash_kexec at ffffffff97798772
 #2 [fffffe000000ae90] crash_kexec at ffffffff97799a5c
 #3 [fffffe000000aea0] oops_end at ffffffff97642aba
 #4 [fffffe000000aec8] die at ffffffff97642ce3
 #5 [fffffe000000aef8] exc_double_fault at ffffffff9836300b
 #6 [fffffe000000af50] asm_exc_double_fault at ffffffff98400c8f
    [exception RIP: indcpa_keypair+65]
    RIP: ffffffffc09f07b1  RSP: ffff9df1c3ce6a38  RFLAGS: 00010246
    RAX: 0000000000000000  RBX: ffff9df1c3cea320  RCX: 0000000000000000
    RDX: 0000000000000000  RSI: 0000000000000020  RDI: ffff9df1c3cea240
    RBP: ffff9df1c3cea2b0   R8: 0000000000000010   R9: ffff9069d19b97d0
    R10: 0000000000000000  R11: 0000000000000000  R12: 0000000000000000
    R13: ffff9df1c3ce7240  R14: 0000000000000000  R15: ffff9df1c3ceaf60
    ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
--- <DOUBLEFAULT exception stack> ---
 #7 [ffff9df1c3ce6a38] indcpa_keypair at ffffffffc09f07b1 [kkyber]
 #8 [ffff9df1c3cea2b8] crypto_kem_keypair at ffffffffc09f02f7 [kkyber]
 #9 [ffff9df1c3cea2d8] test_keys at ffffffffc09f3312 [kkyber]
#10 [ffff9df1c3cebbd0] my_init_module at ffffffffc09f33ce [kkyber]
#11 [ffff9df1c3cebbe0] do_one_initcall at ffffffff976039c8
#12 [ffff9df1c3cebc50] do_init_module at ffffffff97792ed2
#13 [ffff9df1c3cebc78] load_module at ffffffff977953dd
#14 [ffff9df1c3cebd98] __do_sys_finit_module at ffffffff9779593f
#15 [ffff9df1c3cebe70] __x64_sys_finit_module at ffffffff977959ba
#16 [ffff9df1c3cebe80] do_syscall_64 at ffffffff9836252c
#17 [ffff9df1c3cebec8] syscall_exit_to_user_mode at ffffffff98366c27
#18 [ffff9df1c3cebee0] do_syscall_64 at ffffffff98362539
#19 [ffff9df1c3cebf08] syscall_exit_to_user_mode at ffffffff98366c27
#20 [ffff9df1c3cebf20] do_syscall_64 at ffffffff98362539
#21 [ffff9df1c3cebf50] entry_SYSCALL_64_after_hwframe at ffffffff98400099
    RIP: 00007f13ab09d76d  RSP: 00007ffd869a7a18  RFLAGS: 00000246
    RAX: ffffffffffffffda  RBX: 000055752255b790  RCX: 00007f13ab09d76d
    RDX: 0000000000000000  RSI: 0000557521fcc358  RDI: 0000000000000003
    RBP: 0000000000000000   R8: 0000000000000000   R9: 00007f13ab174580
    R10: 0000000000000003  R11: 0000000000000246  R12: 0000557521fcc358
    R13: 0000000000000000  R14: 000055752255b760  R15: 0000000000000000
    ORIG_RAX: 0000000000000139  CS: 0033  SS: 002b
crash> dis indcpa_keypair
0xffffffffc09f0770 <indcpa_keypair>:    nopl   0x0(%rax,%rax,1) [FTRACE NOP]
0xffffffffc09f0775 <indcpa_keypair+5>:  push   %rbp
0xffffffffc09f0776 <indcpa_keypair+6>:  mov    %rsp,%rbp
0xffffffffc09f0779 <indcpa_keypair+9>:  push   %r15
0xffffffffc09f077b <indcpa_keypair+11>: mov    %rsi,%r15
0xffffffffc09f077e <indcpa_keypair+14>: mov    $0x20,%esi
0xffffffffc09f0783 <indcpa_keypair+19>:  push   %r14
0xffffffffc09f0785 <indcpa_keypair+21>:  push   %r13
0xffffffffc09f0787 <indcpa_keypair+23>: lea    -0x3070(%rbp),%r13
0xffffffffc09f078e <indcpa_keypair+30>:  push   %r12
0xffffffffc09f0790 <indcpa_keypair+32>: xor    %r12d,%r12d
0xffffffffc09f0793 <indcpa_keypair+35>:  push   %rbx
0xffffffffc09f0794 <indcpa_keypair+36>: mov    %rdi,%rbx
0xffffffffc09f0797 <indcpa_keypair+39>: lea    -0x70(%rbp),%rdi
0xffffffffc09f079b <indcpa_keypair+43>: sub    $0x3850,%rsp
0xffffffffc09f07a2 <indcpa_keypair+50>: mov    %gs:0x28,%rax
0xffffffffc09f07ab <indcpa_keypair+59>: mov    %rax,-0x30(%rbp)
0xffffffffc09f07af <indcpa_keypair+63>: xor    %eax,%eax
0xffffffffc09f07b1 <indcpa_keypair+65>: call   0xffffffffc09f32c0 <randombytes>

此外,我尝试注释部分代码,但异常仍会在其他位置触发,恳请各位提供帮助。

内容的提问来源于stack exchange,提问作者knip

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 15:37:09