LINUX.ORG.RU

История изменений

Исправление red75prim, (текущая версия) :

Регулярная операция.

Занятно. А почему тогда в стектрейсах в x86 не разбирают структуру ядерного стека, а используют эвристику: если число в стеке указывает куда-то внутрь кода ядра, то наверно это адрес функции.

https://www.kernel.org/doc/html/latest/x86/kernel-stacks.html#printing-backtraces-on-x86

А для ORC unwinder там недалеко есть такое предложение: «If GCC optimizations become too complicated for objtool to follow, the ORC data generation might stop working or become incomplete. (It’s worth noting that livepatch already has such a dependency on objtool’s ability to follow GCC code flow.)»

То есть корректность размотки стека не гарантируется.

Исправление red75prim, :

Регулярная операция.

Занятно. А почему тогда в стектрейсах в x86 не разбирают структуру стека, а используют эвристику: если число в стеке указывает куда-то внутрь кода ядра, то наверно это адрес функции.

https://www.kernel.org/doc/html/latest/x86/kernel-stacks.html#printing-backtraces-on-x86

А для ORC unwinder там недалеко есть такое предложение: «If GCC optimizations become too complicated for objtool to follow, the ORC data generation might stop working or become incomplete. (It’s worth noting that livepatch already has such a dependency on objtool’s ability to follow GCC code flow.)»

То есть корректность размотки стека не гарантируется.

Исходная версия red75prim, :

Регулярная операция.

Занятно. А почему тогда в стектрейсах в x86 не разбирают структуру стека, а используют эвристику: если число в стеке указывает куда-то внутрь кода ядра, то наверно это адрес возврата.

https://www.kernel.org/doc/html/latest/x86/kernel-stacks.html#printing-backtraces-on-x86

А для ORC unwinder там недалеко есть такое предложение: «If GCC optimizations become too complicated for objtool to follow, the ORC data generation might stop working or become incomplete. (It’s worth noting that livepatch already has such a dependency on objtool’s ability to follow GCC code flow.)»

То есть корректность размотки стека не гарантируется.