From: Marc Zyngier <maz@kernel.org> To: Mark Brown <broonie@kernel.org> Cc: Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will@kernel.org>, kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH] arm64: kvm: Annotate assembly using modern annoations Date: Fri, 14 Feb 2020 14:19:18 +0000 [thread overview] Message-ID: <e8e8da7f1e02e9c2f8e67968697bdf85@kernel.org> (raw) In-Reply-To: <20200214114027.GA4827@sirena.org.uk> On 2020-02-14 11:40, Mark Brown wrote: > On Thu, Feb 13, 2020 at 09:36:56PM +0000, Marc Zyngier wrote: >> On 2020-02-13 15:38, Mark Brown wrote: > >> > -ENTRY(__kvm_call_hyp) >> > +SYM_FUNC_START(__kvm_call_hyp) > >> I'm not convinced by this particular change. _kvm_call_hyp is called >> directly from >> C, and behaves almost like a normal function. What's the issue here? > > I'm not sure I understand your comment here - this is annotated as > SYM_FUNC_ which is the annotation for things that look like normal > C functions. You're right, apologies. I got confused between _FUNC_ and _CODE_. > >> > .align 11 >> > -ENTRY(__bp_harden_hyp_vecs_start) >> > +SYM_CODE_START_NOALIGN(__bp_harden_hyp_vecs) >> > +SYM_INNER_LABEL(__bp_harden_hyp_vecs_start, SYM_L_GLOBAL) > >> Why isn't SYM_CODE_START_NOALIGN enough? And what is the rational for > > The _start and _end labels that were there before are explicitly > referenced by code, removing them would break the build. But if we're going to clean things up, I'd rather we actually do that. The only time __bp_harden_hyp_vecs_end is used is when computing the size of the vectors, and that'd better be BP_HARDEN_EL2_SLOTS * 2kB (which can be statically asserted at compile time). > >> the _NOALIGN, btw? I'd expect an alignment of 2kB to be more than >> enough. > > So that the explicit .align above takes effect rather than anything the > macro decides to do, I'm trying to err on the side of caution here. I don't think we need this. The macros should do the right thing, and be fixed if they don't. M. -- Jazz is not dead. It just smells funny... _______________________________________________ kvmarm mailing list kvmarm@lists.cs.columbia.edu https://lists.cs.columbia.edu/mailman/listinfo/kvmarm
WARNING: multiple messages have this Message-ID (diff)
From: Marc Zyngier <maz@kernel.org> To: Mark Brown <broonie@kernel.org> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>, Catalin Marinas <catalin.marinas@arm.com>, James Morse <james.morse@arm.com>, Julien Thierry <julien.thierry.kdev@gmail.com>, Will Deacon <will@kernel.org>, kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH] arm64: kvm: Annotate assembly using modern annoations Date: Fri, 14 Feb 2020 14:19:18 +0000 [thread overview] Message-ID: <e8e8da7f1e02e9c2f8e67968697bdf85@kernel.org> (raw) In-Reply-To: <20200214114027.GA4827@sirena.org.uk> On 2020-02-14 11:40, Mark Brown wrote: > On Thu, Feb 13, 2020 at 09:36:56PM +0000, Marc Zyngier wrote: >> On 2020-02-13 15:38, Mark Brown wrote: > >> > -ENTRY(__kvm_call_hyp) >> > +SYM_FUNC_START(__kvm_call_hyp) > >> I'm not convinced by this particular change. _kvm_call_hyp is called >> directly from >> C, and behaves almost like a normal function. What's the issue here? > > I'm not sure I understand your comment here - this is annotated as > SYM_FUNC_ which is the annotation for things that look like normal > C functions. You're right, apologies. I got confused between _FUNC_ and _CODE_. > >> > .align 11 >> > -ENTRY(__bp_harden_hyp_vecs_start) >> > +SYM_CODE_START_NOALIGN(__bp_harden_hyp_vecs) >> > +SYM_INNER_LABEL(__bp_harden_hyp_vecs_start, SYM_L_GLOBAL) > >> Why isn't SYM_CODE_START_NOALIGN enough? And what is the rational for > > The _start and _end labels that were there before are explicitly > referenced by code, removing them would break the build. But if we're going to clean things up, I'd rather we actually do that. The only time __bp_harden_hyp_vecs_end is used is when computing the size of the vectors, and that'd better be BP_HARDEN_EL2_SLOTS * 2kB (which can be statically asserted at compile time). > >> the _NOALIGN, btw? I'd expect an alignment of 2kB to be more than >> enough. > > So that the explicit .align above takes effect rather than anything the > macro decides to do, I'm trying to err on the side of caution here. I don't think we need this. The macros should do the right thing, and be fixed if they don't. M. -- Jazz is not dead. It just smells funny... _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-02-14 14:19 UTC|newest] Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-02-13 15:38 [PATCH] arm64: kvm: Annotate assembly using modern annoations Mark Brown 2020-02-13 15:38 ` Mark Brown 2020-02-13 21:36 ` Marc Zyngier 2020-02-13 21:36 ` Marc Zyngier 2020-02-14 11:40 ` Mark Brown 2020-02-14 11:40 ` Mark Brown 2020-02-14 14:19 ` Marc Zyngier [this message] 2020-02-14 14:19 ` Marc Zyngier 2020-02-14 14:52 ` Mark Brown 2020-02-14 14:52 ` Mark Brown 2020-02-14 15:04 ` Mark Brown 2020-02-14 15:04 ` Mark Brown
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=e8e8da7f1e02e9c2f8e67968697bdf85@kernel.org \ --to=maz@kernel.org \ --cc=broonie@kernel.org \ --cc=catalin.marinas@arm.com \ --cc=kvmarm@lists.cs.columbia.edu \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=will@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.