lkml.org 
[lkml]   [2017]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v2 06/18] arm64: kvm: use -fno-jump-tables with clang
    On Wed, Nov 15, 2017 at 01:34:16PM -0800, Sami Tolvanen wrote:
    > Use -fno-jump-tables to make sure clang doesn't generate branches
    > to EL1 virtual addresses.

    Are there any other reasons that clang might generate absolute
    references/relocations?

    It would be nice if there was the option to disable that more generally,
    rather than disabling individual optimizations. Is there any PIC/PIE
    option that we could use?

    We might need something simnilar for GCC, even if we're not seeing
    problems today.

    Thanks,
    Mark.

    > Suggested-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
    > Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
    > ---
    > arch/arm64/kvm/hyp/Makefile | 4 ++++
    > 1 file changed, 4 insertions(+)
    >
    > diff --git a/arch/arm64/kvm/hyp/Makefile b/arch/arm64/kvm/hyp/Makefile
    > index f04400d494b7..19fa1c6b6b69 100644
    > --- a/arch/arm64/kvm/hyp/Makefile
    > +++ b/arch/arm64/kvm/hyp/Makefile
    > @@ -5,6 +5,10 @@
    >
    > ccflags-y += -fno-stack-protector -DDISABLE_BRANCH_PROFILING
    >
    > +ifeq ($(cc-name),clang)
    > +ccflags-y += -fno-jump-tables
    > +endif
    > +
    > KVM=../../../../virt/kvm
    >
    > obj-$(CONFIG_KVM_ARM_HOST) += $(KVM)/arm/hyp/vgic-v2-sr.o
    > --
    > 2.15.0.448.gf294e3d99a-goog
    >

    \
     
     \ /
      Last update: 2017-11-20 15:42    [W:4.840 / U:0.072 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site