| Issue |
76957
|
| Summary |
[libunwind]
|
| Labels |
new issue
|
| Assignees |
|
| Reporter |
SihangZhu
|
In libgcc, we register the eh_frame section of the live patching. We can use the `__register_frame` interface. This libunwind library also provides` __register_frame` and `__deregister_frame` functions, but they are aliases for `__unw_add_dynamic_fde` and `__unw_remove_dynamic_fde` and thus can only take a single FDE. I found the `__unw_add_dynamic_eh_frame_section` function, but during live patching, the eh_frame section may be followed by all 0. Scenario, the content of all 0 will be regarded as legal CIE.
We will fall into an infinite loop or access illegal memory.
the data of patchArea as below

_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs