On 20/11/2019 16:40, Jürgen Groß wrote:
> On 20.11.19 17:30, Jan Beulich wrote:
>> On 08.11.2019 12:18, Jan Beulich wrote:
>>> The .file assembler directives generated by the compiler do not include
>>> any path components (gcc) or just the ones specified on the command
>>> line
>>> (clang, at least version 5), and hence multiple identically named
>>> source
>>> files (in different directories) may produce identically named static
>>> symbols (in their kallsyms representation). The binary diffing
>>> algorithm
>>> used by xen-livepatch, however, depends on having unique symbols.
>>>
>>> Make the ENFORCE_UNIQUE_SYMBOLS Kconfig option control the (build)
>>> behavior, and if enabled use objcopy to prepend the (relative to the
>>> xen/ subdirectory) path to the compiler invoked STT_FILE symbols. Note
>>> that this build option is made no longer depend on LIVEPATCH, but
>>> merely
>>> defaults to its setting now.
>>>
>>> Conditionalize explicit .file directive insertion in C files where it
>>> exists just to disambiguate names in a less generic manner; note that
>>> at the same time the redundant emission of STT_FILE symbols gets
>>> suppressed for clang. Assembler files as well as multiply compiled C
>>> ones using __OBJECT_FILE__ are left alone for the time being.
>>>
>>> Since we now expect there not to be any duplicates anymore, also don't
>>> force the selection of the option to 'n' anymore in allrandom.config.
>>> Similarly COVERAGE no longer suppresses duplicate symbol warnings if
>>> enforcement is in effect, which in turn allows
>>> SUPPRESS_DUPLICATE_SYMBOL_WARNINGS to simply depend on
>>> !ENFORCE_UNIQUE_SYMBOLS.
>>>
>>> Signed-off-by: Jan Beulich <jbeul...@suse.com>
>>
>> I've got acks from Konrad and Wei, but still need an x86 and a release
>> one here. Andrew? Or alternatively - Jürgen, would you rather not see
>> this go in anymore?
>
> In case the needed x86 Ack is coming in before RC3 I'm fine to give my
> Release-ack, but I'm hesitant to take it later.

Has anyone actually tried building a livepatch with this change in place?

I ask, because there is 0 testing of livepatches, and already one major
regression in 4.13 which forces XenServer to revert back to older build
tools.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to