git.samba.org
/
sfrench
/
cifs-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[sfrench/cifs-2.6.git]
/
virt
/
kvm
/
arm
/
vgic
/
vgic-v3.c
diff --git
a/virt/kvm/arm/vgic/vgic-v3.c
b/virt/kvm/arm/vgic/vgic-v3.c
index 0c653a1e5215280f4076db92fdb1db61b7b01386..a4ad431c92a912d2b3a9330db301059858ebc62b 100644
(file)
--- a/
virt/kvm/arm/vgic/vgic-v3.c
+++ b/
virt/kvm/arm/vgic/vgic-v3.c
@@
-167,7
+167,10
@@
void vgic_v3_populate_lr(struct kvm_vcpu *vcpu, struct vgic_irq *irq, int lr)
model == KVM_DEV_TYPE_ARM_VGIC_V2) {
u32 src = ffs(irq->source);
model == KVM_DEV_TYPE_ARM_VGIC_V2) {
u32 src = ffs(irq->source);
- BUG_ON(!src);
+ if (WARN_RATELIMIT(!src, "No SGI source for INTID %d\n",
+ irq->intid))
+ return;
+
val |= (src - 1) << GICH_LR_PHYSID_CPUID_SHIFT;
irq->source &= ~(1 << (src - 1));
if (irq->source) {
val |= (src - 1) << GICH_LR_PHYSID_CPUID_SHIFT;
irq->source &= ~(1 << (src - 1));
if (irq->source) {