> On 11.12.2015 at 6:01pm, <jbeul...@suse.com> wrote: > >>> On 10.12.15 at 10:33, <quan...@intel.com> 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; > > } > > I don't see such a change be valid without making sure callers actually honor > errors. For example, no caller of iommu_flush_iec_{global,index}() cares to > check. And not even your second patch addresses this (i.e. > it's also not just bad patch ordering). > > If you require errors to be dealt with (and you do here), make use of > __must_check all the way up the call trees. >
ok, I will make use of __must_check all the way up the call trees in v3. Quan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel