linux-next: manual merge of the kvm tree with the kvm-fixes tree

From: Stephen Rothwell
Date: Fri Jun 24 2022 - 00:10:06 EST


Hi all,

Today's linux-next merge of the kvm tree got a conflict in:

tools/testing/selftests/kvm/lib/aarch64/ucall.c

between commit:

9e2f6498efbb ("selftests: KVM: Handle compiler optimizations in ucall")

from the kvm-fixes tree and commit:

5d9cd8b55cdc ("selftests: kvm: replace ternary operator with min()")

from the kvm 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.

--
Cheers,
Stephen Rothwell

diff --cc tools/testing/selftests/kvm/lib/aarch64/ucall.c
index be1d9728c4ce,0b949ee06b5e..000000000000
--- a/tools/testing/selftests/kvm/lib/aarch64/ucall.c
+++ b/tools/testing/selftests/kvm/lib/aarch64/ucall.c
@@@ -77,20 -78,19 +76,20 @@@ void ucall(uint64_t cmd, int nargs, ...
va_list va;
int i;

+ WRITE_ONCE(uc.cmd, cmd);
- nargs = nargs <= UCALL_MAX_ARGS ? nargs : UCALL_MAX_ARGS;
+ nargs = min(nargs, UCALL_MAX_ARGS);

va_start(va, nargs);
for (i = 0; i < nargs; ++i)
- uc.args[i] = va_arg(va, uint64_t);
+ WRITE_ONCE(uc.args[i], va_arg(va, uint64_t));
va_end(va);

- *ucall_exit_mmio_addr = (vm_vaddr_t)&uc;
+ WRITE_ONCE(*ucall_exit_mmio_addr, (vm_vaddr_t)&uc);
}

- uint64_t get_ucall(struct kvm_vm *vm, uint32_t vcpu_id, struct ucall *uc)
+ uint64_t get_ucall(struct kvm_vcpu *vcpu, struct ucall *uc)
{
- struct kvm_run *run = vcpu_state(vm, vcpu_id);
+ struct kvm_run *run = vcpu->run;
struct ucall ucall = {};

if (uc)

Attachment: pgpDBZKlKJ15J.pgp
Description: OpenPGP digital signature