Hi Ross Thanks for the info. I actually did look into the KPATCH_IGNORE_FUNCTION code. But.. I somehow ended up having this:
#define KPATCH_IGNORE_FUNCTION(_fn) \ void *__kpatch_ignore_func_##_fn __section(.kpatch.ignore.functions) = (#_fn); Which apparently caused the symbol not being a function type, but a string(?). Ok, thanks, I will be now dealing with this "artifact", ugh. Elena On Tue, Dec 12, 2017 at 12:09 AM, Ross Lagerwall <[email protected]> wrote: > On 12/12/2017 05:54 AM, [email protected] wrote: >> >> From: Elena Ufimtseva <[email protected]> >> >> It is expected that the symbol has type STT_FUNC in >> livpatch.ignore.functions >> sections, but it is incorrect and results in functions not to be ignored. >> To actually ignore functions in livepatch.ignore.functions section, >> attempt to >> find the symbol of type STT_FUNC by its name. >> > > Hi Elena, > > I suspect you might have got the wrong idea about how it is meant to be used > (or I misunderstood your patch). It is expected that the relocation points > to a symbol that has type STT_FUNC. This is subtly different from having a > symbol with type STT_FUNC in .livepatch.ignore.functions. > > The correct way to use it is to declare a pointer stored in > .livepatch.ignore.functions that points to the function you want to ignore. > > For example, place this at the end of arch/x86/mm/p2m.c to ignore changes to > map_domain_gfn: > void *__lp_ignore_func_map_domain_gfn __section(.livepatch.ignore.functions) > = map_domain_gfn; > > The code in livepatch-build-tools is based on kpatch and they have a macro > to do this in a more friendly way [1]. If you want, it would be great if you > could port this to Xen LivePatch. > > [1] > https://github.com/dynup/kpatch/blob/f4c0f3209e8e856d93622344560c8794cd8d8a45/kmod/patch/kpatch-macros.h#L39 > > As an aside, much of the code in livepatch-build-tools comes from kpatch, so > patches are ideally sent there first. We do intend eventually to merge the > tools to avoid code duplication and kpatch's build tool was recently > refactored to make this easier. > > Cheers, > -- > Ross Lagerwall > > > _______________________________________________ > Xen-devel mailing list > [email protected] > https://lists.xenproject.org/mailman/listinfo/xen-devel -- Elena _______________________________________________ Xen-devel mailing list [email protected] https://lists.xenproject.org/mailman/listinfo/xen-devel
