Commit 04343ae3 authored by James Morse's avatar James Morse Committed by Marc Zyngier
Browse files

KVM: arm64: Tolerate an empty target_table list



Before emptying the target_table lists, and then removing their
infrastructure, add some tolerance to an empty list.

Instead of bugging-out on an empty list, pretend we already
reached the end in the two-list-walk.

Signed-off-by: default avatarJames Morse <james.morse@arm.com>
Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20200622113317.20477-3-james.morse@arm.com
parent 6b33e0d6
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -2809,7 +2809,10 @@ static int walk_sys_regs(struct kvm_vcpu *vcpu, u64 __user *uind)
	i2 = sys_reg_descs;
	end2 = sys_reg_descs + ARRAY_SIZE(sys_reg_descs);

	BUG_ON(i1 == end1 || i2 == end2);
	if (i1 == end1)
		i1 = NULL;

	BUG_ON(i2 == end2);

	/* Walk carefully, as both tables may refer to the same register. */
	while (i1 || i2) {