David Miller [mailto:davem@xxxxxxxxxxxxx] > Sent: Thursday, January 26, 2017 3:31 AM [...] > I think the fundamental issue is that since you can't stop URBs from > queueing up, you cannot properly synchronize NAPI and schedule polling > properly. > > From my perspective what happened here is you want GRO support, but it > comes at the expense of this extremely racey NAPI support which does > not at all achieve one of the main advantages of NAPI which is > interrupt mitigation. May you apply these patches first, until I find another way to replace current one? The driver uses NAPI now and I have no idea to find better way to replace current one. I think it would take me long time to find out the solution. And the issue is still there until I finish this work. If now I give up the NAPI and its advantages except for the interrupt mitigation, some things would become worse. Our hw supports packet aggregation. The purpose is interrupt mitigation, too. I wouldn't say it is better than what the NAPI does. However, I could say we try to improve it. If the interrupt could be disabled, I would be happy to do it. However, it is the limitation of USB devices. That is why I still use NAPI even though the interrupt cannot be disabled for USB devices. Because one of the advantages of NAPI couldn't be satisfied, I must not use the NAPI. Doesn't it seem too strict? Best Regards, Hayes -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html