Hi, On Wed, Jul 08, 2015 at 02:21:27PM +0530, Mugunthan V N wrote: > On Wednesday 08 July 2015 01:08 PM, Felipe Balbi wrote: > > Hi, > > > > On Wed, Jul 08, 2015 at 12:17:46PM +0530, Mugunthan V N wrote: > >> With the below commit, common isr is split into tx and rx, but in > >> rx isr tx interrupt is also disabled. So tx packets are not handled > >> during rx interrupts and rx napi completion. Fixing by disabling on > >> rx interrupt in rx isr. > >> > >> Fixes: c03abd84634d ("net: ethernet: cpsw: don't requests IRQs we don't use") > > > > why does this fix that commit ? What was the regression ? So RX IRQ fire > > and both RX and TX are disabled, sure that's bad. But it should cause > > lower throughput. At a minimum, I think your commit log needs some work. > > Agreed, will change the commit and resubmit the patch as it affects > performance only and not a regression. thanks > > Also, disable_irq_nosync() shouldn't really be needed, you could just > > mask the IRQ in the IRQ Enable register, but I guess that'd be v4.3 > > material. > > This was needed because there is a latch inbetween CPSW interrupt line > and Interrupt Controller (to convert from pulse interrupt to level > interrupt), because of this even though interrupt is disabled from the > IP, CPU is held up in isr as it is not cleared or masked to Interrupt > controller. Because of disable_irq_nosync() was added initially. I will > revisit this but as you said it will be for 4.3 still, that shouldn't be needed. Just mask and clear the IRQ straight away, then handle it. > With this patch I am able to see +3 Mbps with omap2plus_defconfig and > +40Mbps with having AM43xx SoC only and removing some kernel debugging > options. looks like this should be in commit log in some shape or form. -- balbi
Attachment:
signature.asc
Description: Digital signature