Skip to content

ERROR: panic.o: reference to static local variable spin_counter.34770 in do_oops_enter_exit.part.0 was removed #1035

Description

@haoren3696

Hi, I got a error in create-diff-object:
ERROR: panic.o: reference to static local variable spin_counter.34770 in do_oops_enter_exit.part.0 was removed
/kpatch/kpatch-build/create-diff-object: unreconcilable difference

It is because that the do_oops_enter_exit.part.0 in original panic.o can not correlate to do_oops_enter_exit in patched panic.o. So it got fatal error in kpatch_correlate_static_local_variables. In kpatch_rename_mangled_functions, current code seems to rename do_oops_enter_exit.part.0 to do_oops_enter_exit in patched object, but does not rename do_oops_enter_exit to oops_enter_exit.part.0 in my case.

localhost:~/.kpatch/tmp # eu-readelf -S orig/kernel/panic.o|grep do_oops_enter_exit
[18] .text.do_oops_enter_exit.part.0 PROGBITS     0000000000000000 00000348 000001d8  0 AX     0   0  8
[19] .rela.text.do_oops_enter_exit.part.0 RELA         0000000000000000 00024020 000002d0 24 I     150  18  8
localhost:~/.kpatch/tmp # eu-readelf -S patched/kernel/panic.o |grep do_oops_enter_exit
[18] .text.do_oops_enter_exit PROGBITS     0000000000000000 00000348 00000200  0 AX     0   0  8
[19] .rela.text.do_oops_enter_exit RELA         0000000000000000 00024240 000002e8 24 I     153  18  8

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions