From: Stephen Rothwell <sfr@canb.auug.org.au>
To: Christoffer Dall <cdall@cs.columbia.edu>, Marc Zyngier <maz@kernel.org>
Cc: Paolo Bonzini <pbonzini@redhat.com>, KVM <kvm@vger.kernel.org>,
Linux Next Mailing List <linux-next@vger.kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Tianjia Zhang <tianjia.zhang@linux.alibaba.com>,
James Morse <james.morse@arm.com>, Gavin Shan <gshan@redhat.com>
Subject: Re: linux-next: manual merge of the kvm-arm tree with the kvm tree
Date: Sun, 9 Aug 2020 18:54:36 +1000 [thread overview]
Message-ID: <20200809185436.5b6e2887@canb.auug.org.au> (raw)
In-Reply-To: <20200713143935.799861b9@canb.auug.org.au>
[-- Attachment #1: Type: text/plain, Size: 5162 bytes --]
Hi all,
On Mon, 13 Jul 2020 14:39:35 +1000 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the kvm-arm tree got conflicts in:
>
> arch/arm64/include/asm/kvm_coproc.h
> arch/arm64/kvm/handle_exit.c
>
> between commit:
>
> 74cc7e0c35c1 ("KVM: arm64: clean up redundant 'kvm_run' parameters")
>
> from the kvm tree and commits:
>
> 6b33e0d64f85 ("KVM: arm64: Drop the target_table[] indirection")
> 750ed5669380 ("KVM: arm64: Remove the target table")
> 3a949f4c9354 ("KVM: arm64: Rename HSR to ESR")
>
> from the kvm-arm tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> diff --cc arch/arm64/include/asm/kvm_coproc.h
> index 454373704b8a,147f3a77e6a5..000000000000
> --- a/arch/arm64/include/asm/kvm_coproc.h
> +++ b/arch/arm64/include/asm/kvm_coproc.h
> @@@ -19,20 -19,12 +19,12 @@@ struct kvm_sys_reg_table
> size_t num;
> };
>
> - struct kvm_sys_reg_target_table {
> - struct kvm_sys_reg_table table64;
> - struct kvm_sys_reg_table table32;
> - };
> -
> - void kvm_register_target_sys_reg_table(unsigned int target,
> - struct kvm_sys_reg_target_table *table);
> -
> -int kvm_handle_cp14_load_store(struct kvm_vcpu *vcpu, struct kvm_run *run);
> -int kvm_handle_cp14_32(struct kvm_vcpu *vcpu, struct kvm_run *run);
> -int kvm_handle_cp14_64(struct kvm_vcpu *vcpu, struct kvm_run *run);
> -int kvm_handle_cp15_32(struct kvm_vcpu *vcpu, struct kvm_run *run);
> -int kvm_handle_cp15_64(struct kvm_vcpu *vcpu, struct kvm_run *run);
> -int kvm_handle_sys_reg(struct kvm_vcpu *vcpu, struct kvm_run *run);
> +int kvm_handle_cp14_load_store(struct kvm_vcpu *vcpu);
> +int kvm_handle_cp14_32(struct kvm_vcpu *vcpu);
> +int kvm_handle_cp14_64(struct kvm_vcpu *vcpu);
> +int kvm_handle_cp15_32(struct kvm_vcpu *vcpu);
> +int kvm_handle_cp15_64(struct kvm_vcpu *vcpu);
> +int kvm_handle_sys_reg(struct kvm_vcpu *vcpu);
>
> #define kvm_coproc_table_init kvm_sys_reg_table_init
> void kvm_sys_reg_table_init(void);
> diff --cc arch/arm64/kvm/handle_exit.c
> index 1df3beafd73f,98ab33139982..000000000000
> --- a/arch/arm64/kvm/handle_exit.c
> +++ b/arch/arm64/kvm/handle_exit.c
> @@@ -87,9 -87,9 +87,9 @@@ static int handle_no_fpsimd(struct kvm_
> * world-switches and schedule other host processes until there is an
> * incoming IRQ or FIQ to the VM.
> */
> -static int kvm_handle_wfx(struct kvm_vcpu *vcpu, struct kvm_run *run)
> +static int kvm_handle_wfx(struct kvm_vcpu *vcpu)
> {
> - if (kvm_vcpu_get_hsr(vcpu) & ESR_ELx_WFx_ISS_WFE) {
> + if (kvm_vcpu_get_esr(vcpu) & ESR_ELx_WFx_ISS_WFE) {
> trace_kvm_wfx_arm64(*vcpu_pc(vcpu), true);
> vcpu->stat.wfe_exit_stat++;
> kvm_vcpu_on_spin(vcpu, vcpu_mode_priv(vcpu));
> @@@ -114,12 -115,11 +114,12 @@@
> * guest and host are using the same debug facilities it will be up to
> * userspace to re-inject the correct exception for guest delivery.
> *
> - * @return: 0 (while setting run->exit_reason), -1 for error
> + * @return: 0 (while setting vcpu->run->exit_reason), -1 for error
> */
> -static int kvm_handle_guest_debug(struct kvm_vcpu *vcpu, struct kvm_run *run)
> +static int kvm_handle_guest_debug(struct kvm_vcpu *vcpu)
> {
> + struct kvm_run *run = vcpu->run;
> - u32 hsr = kvm_vcpu_get_hsr(vcpu);
> + u32 esr = kvm_vcpu_get_esr(vcpu);
> int ret = 0;
>
> run->exit_reason = KVM_EXIT_DEBUG;
> @@@ -144,12 -144,12 +144,12 @@@
> return ret;
> }
>
> -static int kvm_handle_unknown_ec(struct kvm_vcpu *vcpu, struct kvm_run *run)
> +static int kvm_handle_unknown_ec(struct kvm_vcpu *vcpu)
> {
> - u32 hsr = kvm_vcpu_get_hsr(vcpu);
> + u32 esr = kvm_vcpu_get_esr(vcpu);
>
> - kvm_pr_unimpl("Unknown exception class: hsr: %#08x -- %s\n",
> - hsr, esr_get_class_string(hsr));
> + kvm_pr_unimpl("Unknown exception class: esr: %#08x -- %s\n",
> + esr, esr_get_class_string(esr));
>
> kvm_inject_undefined(vcpu);
> return 1;
> @@@ -237,12 -237,11 +237,12 @@@ static int handle_trap_exceptions(struc
> * Return > 0 to return to guest, < 0 on error, 0 (and set exit_reason) on
> * proper exit to userspace.
> */
> -int handle_exit(struct kvm_vcpu *vcpu, struct kvm_run *run,
> - int exception_index)
> +int handle_exit(struct kvm_vcpu *vcpu, int exception_index)
> {
> + struct kvm_run *run = vcpu->run;
> +
> if (ARM_SERROR_PENDING(exception_index)) {
> - u8 hsr_ec = ESR_ELx_EC(kvm_vcpu_get_hsr(vcpu));
> + u8 esr_ec = ESR_ELx_EC(kvm_vcpu_get_esr(vcpu));
>
> /*
> * HVC/SMC already have an adjusted PC, which we need
This is now a conflict between the kvm-arm tree and Linus' tree.
--
Cheers,
Stephen Rothwell
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
next prev parent reply other threads:[~2020-08-09 8:54 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-13 4:39 linux-next: manual merge of the kvm-arm tree with the kvm tree Stephen Rothwell
2020-08-09 8:54 ` Stephen Rothwell [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-04-06 3:06 Stephen Rothwell
2023-03-31 2:26 Stephen Rothwell
2022-12-01 2:16 Stephen Rothwell
2022-12-01 15:23 ` Marc Zyngier
2022-12-01 1:09 Stephen Rothwell
2022-12-01 0:57 Stephen Rothwell
2022-12-01 0:36 Stephen Rothwell
2022-12-01 0:24 Stephen Rothwell
2022-07-18 5:19 Stephen Rothwell
2022-05-05 4:47 Stephen Rothwell
2021-12-17 4:19 Stephen Rothwell
2021-12-09 22:01 broonie
2021-06-25 5:24 Stephen Rothwell
2021-06-25 5:20 Stephen Rothwell
2021-06-25 5:15 Stephen Rothwell
2021-06-23 5:53 Stephen Rothwell
2021-06-22 5:31 Stephen Rothwell
2021-04-22 4:43 Stephen Rothwell
2021-04-22 4:39 Stephen Rothwell
2020-07-13 4:40 Stephen Rothwell
2020-08-09 8:55 ` Stephen Rothwell
2020-03-25 3:23 Stephen Rothwell
2018-10-18 2:46 Stephen Rothwell
2017-04-10 3:52 Stephen Rothwell
2017-04-10 6:26 ` Christoffer Dall
2016-07-24 6:04 Stephen Rothwell
2016-07-24 5:59 Stephen Rothwell
2016-07-20 5:27 Stephen Rothwell
2015-10-16 3:53 Stephen Rothwell
2015-10-16 4:20 ` Wu, Feng
2014-11-26 6:19 Stephen Rothwell
2014-11-26 11:39 ` Christoffer Dall
2014-09-25 5:32 Stephen Rothwell
2014-09-18 3:52 Stephen Rothwell
2014-09-18 15:13 ` Marc Zyngier
2014-09-08 6:04 Stephen Rothwell
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=20200809185436.5b6e2887@canb.auug.org.au \
--to=sfr@canb.auug.org.au \
--cc=cdall@cs.columbia.edu \
--cc=gshan@redhat.com \
--cc=james.morse@arm.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=maz@kernel.org \
--cc=pbonzini@redhat.com \
--cc=tianjia.zhang@linux.alibaba.com \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).