[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] netback Oops then xenwatch stuck in D state
>>> On 14.02.13 at 12:38, Wei Liu <wei.liu2@xxxxxxxxxx> wrote: > On Thu, 2013-02-14 at 11:34 +0000, Ian Campbell wrote: >> On Thu, 2013-02-14 at 11:20 +0000, Wei Liu wrote: >> >> > I'm not convinced. netbk_tx_err only has one xenvif_put, however >> > netbk_fatal_tx_err has two puts. >> >> One balances the get in poll_net_schedule_list (i.e. at the top of the >> loop in xen_netbk_tx_build_gops. >> >> The other one I guess you mean the one in xenvif_carrier_off? This >> balances the refcount taken in xenvif_connect, when the carrier is >> brought up. >> >> In my testing I found that both were required or else things deadlock in >> xenvif_disconnect with the refcnt stuck at 1. >> >> The eventual put in xenvif_disconnect is balanced by the initial count >> of 1 in xenvif_alloc() > > Oh, I get what you mean now. Because the vif is down so > xenvif_carrier_off is not invoked in disconnect path. > > But I think a better place to balance refcount taken in xenvif_connect > is xenvif_disconnect, so I would rather move that xenvif_put in > fatal_tx_err to xenvif_disconnect. I relatively certain this would make things worse, not better. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |