-
Notifications
You must be signed in to change notification settings - Fork 305
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
What do I need to do to support arm64? #1216
Comments
Yes, the upstream livepatching effort for arm64 is definitely gaining steam. In fact, Madhavan T. Venkataraman recently inquired about using kpatch on arm64. (I'll point him here to your interest as well.) As far the additional livepatching work that remains outstanding, we would need those to be implemented prior to declaring kpatch support. This is mostly since the old Additional thoughts:
|
Hi @joe-lawrence , Thank you for the information. |
Hi. I haven't fully understood it yet, but for now I'll write what I know:
So for arm64, the functions that can be profiled are findable with symbols information in __patchable_function_entries section and its relocation section.
Special Sections:
Mapping Symbols:
Skip files:
Currently, I'm trying implement kpatch_line_macro_change_only() for arm64, this implementation based on the implementation of ppc64. |
Hi @keiya-nobuta : that sounds like progress. Are you currently testing against any of the integration tests, and then if so, loading the resulting kpatch on a kernel with Madhavan's patchset? |
Hi @joe-lawrence, My testing kernel is based on v5.15-rc1, including Madhavan's patchset (v8) and Suraj's, with a few fixes. I tried cmdline-string.patch for the time begin, it seems to work:
I modified cmdline-string.patch for v5.15-rc1:
|
Sorry for the late work. I ran the tests and found some issues, so make a note of them: Livepatch relocation issue on Arm64 Specifically, when a patch module is loaded, Mem Abort occurs as follows:
This issue needs to be addressed on the kernel side. Reliable stack trace issue |
Oh, Suraj has also a pull-requested #1236. |
I've rebased & extended Suraj's arm64 work in #1302 It's marked Draft for now, until tested with vanilla kernel/clang/gcc (with Madhavan's kernel patches) |
This issue has been open for 30 days with no activity and no assignee. It will be closed in 7 days unless a comment is added. |
This issue was closed because it was inactive for 7 days after being marked stale. |
Discussions about enabling Live patch on arm64 are underway on the Linux mailing list:
In addition to the above patches, it is said that the following changes are still needed:
So Live patch for arm64 is still a little ahead, but I think kpatch will need to support arm64 in the future.
What should I start with if I'm trying to port for arm64?
(Should I ask to reopen the pull-request [#1010] ?)
Thanks
The text was updated successfully, but these errors were encountered: