summaryrefslogtreecommitdiff
path: root/xen/include/public
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2021-05-27 14:40:29 +0200
committerJan Beulich <jbeulich@suse.com>2021-05-27 14:40:29 +0200
commit722f59d38c710a940ab05e542a83020eb5546dea (patch)
tree2be319594ad3729b1a3b552095a24af126f8da1a /xen/include/public
parentb509d4a688d80e802ff580990288ef5e17859df6 (diff)
x86: make hypervisor build with gcc11
Gcc 11 looks to make incorrect assumptions about valid ranges that pointers may be used for addressing when they are derived from e.g. a plain constant. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100680. Utilize RELOC_HIDE() to work around the issue, which for x86 manifests in at least - mpparse.c:efi_check_config(), - tboot.c:tboot_probe(), - tboot.c:tboot_gen_frametable_integrity(), - x86_emulate.c:x86_emulate() (at -O2 only). The last case is particularly odd not just because it only triggers at higher optimization levels, but also because it only affects one of at least three similar constructs. Various "note" diagnostics claim the valid index range to be [0, 2⁶³-1]. Signed-off-by: Jan Beulich <jbeulich@suse.com> Tested-by: Jason Andryuk <jandryuk@gmail.com> Acked-by: Roger Pau Monné <roger.pau@citrix.com>
Diffstat (limited to 'xen/include/public')
0 files changed, 0 insertions, 0 deletions