On 1/29/2016 4:07 PM, Lu, Wenzhuo wrote: > Hi Michael, > >> -----Original Message----- >> From: Qiu, Michael >> Sent: Friday, January 29, 2016 1:58 PM >> To: dev at dpdk.org >> Cc: Zhou, Danny; Liu, Yong; Liang, Cunming; Lu, Wenzhuo; Qiu, Michael >> Subject: [PATCH v2] ixgbe: Fix disable interrupt twice >> >> Currently, ixgbe vf and pf will disable interrupt twice in stop stage and >> uninit >> stage. It will cause an error: >> >> testpmd> quit >> >> Shutting down port 0... >> Stopping ports... >> Done >> Closing ports... >> EAL: Error disabling MSI-X interrupts for fd 26 >> Done >> >> Becasue the interrupt already been disabled in stop stage. >> Since it is enabled in init stage, better remove from stop stage. > I'm afraid it?s not a good idea to just remove the intr_disable from dev_stop. > I think dev_stop have the chance to be used independently with dev_unint. In > this scenario, we still need intr_disable, right? > Maybe what we need is some check before we disable the intr:)
Yes, indeed we need some check in disable intr, but it need additional fields in "struct rte_intr_handle", and it's much saft to do so, but as I check i40e/fm10k code, only ixgbe disable it in dev_stop(). On other hand, if we remove it in dev_stop, any side effect? In ixgbe start, it will always disable it first and then re-enable it, so it's safe. Thanks, Michael >