[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 2/2 V2] iommu/amd: Workaround for erratum 787



At 14:41 +0100 on 10 Jun (1370875314), Jan Beulich wrote:
> >>> On 10.06.13 at 14:43, Tim Deegan <tim@xxxxxxx> wrote:
> > How about:
> >  write-to-clear status.pending
> >  process the log
> >  if (status.pending)
> >     reschedule the tasklet
> >  else
> >     unmask the interrupt.
> 
> Actually I think this is leaving a window for improperly handled
> log entries too: There's also no guarantee that re-enabling the
> interrupt would cause an interrupt to be raised when the buffer
> became non-empty between the status.pending check and the
> re-enable.

Oh.  Yes, I suppose that depends on whether the interrupt is
triggered on (edge(pending) && enabled) or edge(pending && enabled), or
something else.

> Therefore I think we need
> 
>   write-to-clear status.pending
>   process the log
>   unmask the interrupt.
>   if (status.pending)
>      reschedule the tasklet

Yes, that looks better.

Tim.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.