[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] xen/common: Drop function calls for Xen compile/version information



On 16/01/17 13:18, Jan Beulich wrote:
>>>> On 16.01.17 at 14:04, <andrew.cooper3@xxxxxxxxxx> wrote:
>> The chageset/version/compile information is currently exported as a set of
>> function calls into a separate translation unit, which is inefficient for all
>> callers.
>>
>> Replace the function calls with externs pointing appropriately into .rodata,
>> which allows all users to generate code referencing the data directly.
>>
>> No functional change, but causes smaller and more efficient compiled code.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> Provided especially the "smaller" part above really hold at least
> on average over the entire change (which I'm not convinced it
> does),
> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
>

andrewcoop@andrewcoop:/local/xen.git/xen$ ../scripts/bloat-o-meter
xen-syms-before xen-syms-after
add/remove: 0/0 grow/shrink: 5/15 up/down: 485/-256 (229)
function                                     old     new   delta
xen_banner                                    13     439    +426
xen_changeset                                 13      37     +24
xen_compile_date                              13      29     +16
xen_compiler                                  13      28     +15
xen_compile_domain                            13      17      +4
hvm_save                                     409     408      -1
xen_compile_host                              13      11      -2
xen_compile_by                                13      11      -2
xen_extra_version                             13      10      -3
xen_deny                                      13       9      -4
xen_compile_time                              13       9      -4
xen_minor_version                             11       4      -7
xen_major_version                             11       4      -7
cpuid_viridian_leaves                        439     421     -18
print_xen_info                                89      64     -25
do_xen_version                              1915    1889     -26
compat_xen_version                          1849    1823     -26
console_init_preirq                          487     455     -32
cpuid_hypervisor_leaves                      656     612     -44
kexec_crash_save_info                        898     843     -55

The data has switched from being anonymous strings to named objects
replacing the functions, so the actual delta is +0/-321

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.