[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 1/2] VT-d: Reduce spin timeout to 1ms, which can be boot-time changed.
> On 14.12.2015 at 5:14pm, <JBeulich@xxxxxxxx> wrote: > >>> On 12.12.15 at 14:21, <quan.xu@xxxxxxxxx> wrote: > > @@ -167,10 +172,12 @@ static int queue_invalidate_wait(struct iommu > *iommu, > > start_time = NOW(); > > while ( poll_slot != QINVAL_STAT_DONE ) > > { > > - if ( NOW() > (start_time + DMAR_OPERATION_TIMEOUT) ) > > + if ( NOW() > (start_time + IOMMU_QI_TIMEOUT) ) > > { > > print_qi_regs(iommu); > > - panic("queue invalidate wait descriptor was not > executed"); > > + dprintk(XENLOG_WARNING VTDPREFIX, > > + "Queue invalidate wait descriptor was > timeout.\n"); > > + return -ETIMEDOUT; > > } > > Without the v2 discussion even having finished, and without you having taken > care of v2 comments here, I don't see much value in this v3. > I should check for _any_ kind_of_error and all_the_way_up_the_call_trees in [patch 1/2]. 1. For _any_ kind_of_error, now it includes '-ETIMEDOUT' and '-EOPNOTSUPP'. I should check the return code, if it is _not_ZERO. The callers need to also either pass it on or deal with it. (if the return code is _not_ZERO, it should check whether it is '-ETIMEDOUT' in [patch 2/2]) 2. all_the_way_up_the_call_trees .i.e enable_intremap() |--iommu_flush_iec_global() |--__iommu_flush_iec() |--invalidate_sync() In enable_intremap(), if iommu_flush_iec_global() is failed, enable_intremap() should deal with this error and then return. right? Jan, thanks for your patience. Quan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |