Jan Kiszka wrote:
> I love KVM - not only because I'm heavily hacking on it now, also
> because it is so easy to trigger various kinds of guest issues with
> it (SMP host + threaded virtual CPUs => true SMP guest - and if you
> want to watch fancy things happen, just load one host core).
> 
> Here is one I found that way:
> 
> void fastcall __ipipe_sync_stage(unsigned long syncmask)
> {
> [ ... ]
>       while ((mask = (ipipe_this_cpudom_var(irqpend_himask) & syncmask)) != 
> 0) {
>               level = __ipipe_ffnz(mask);
> 
>               while ((submask = ipipe_this_cpudom_var(irqpend_lomask)[level]) 
> != 0) {
>                       rank = __ipipe_ffnz(submask);
>                       irq = (level << IPIPE_IRQ_ISHIFT) + rank;
> 
>                       if (test_bit(IPIPE_LOCK_FLAG, &ipd->irqs[irq].control)) 
> {
>                               __clear_bit(rank, 
> &ipipe_this_cpudom_var(irqpend_lomask)[level]);
-                               continue;
+                               goto rpm_needs_more_neurons;
>                       }
> 
>                       __clear_bit(rank, 
> &ipipe_this_cpudom_var(irqpend_lomask)[level]);
> 
+ rpm_needs_more_neurons:
>                       if (ipipe_this_cpudom_var(irqpend_lomask)[level] == 0)
>                               __clear_bit(level, 
> &ipipe_this_cpudom_var(irqpend_himask));
> [ ... ]
> 
> Who sees the deadlock? 100 points for the right answer! But be quick,
> I'm already hacking on a fix. :)
> 
> Jan
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Adeos-main mailing list
> [email protected]
> https://mail.gna.org/listinfo/adeos-main


-- 
Philippe.

_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main

Reply via email to