Re: [PATCH] 82xx: FCC: Fixing a bug causing to FCC port lock-up (second try)
From: David Miller
Date: Mon Jan 25 2016 - 13:47:34 EST
From: Martin Roth <martin.roth@xxxxxxxxxxxxxxxxxxxxx>
Date: Sun, 24 Jan 2016 00:56:19 +0200
> This is an additional patch to the one already submitted recently.
> The previous patch was not complete, and the FCC port lock-up scenario
> has been reproduced in lab.
> I had an opportunity to check the current patch in lab and the FCC
> port lock no longer freezes, while the previous patch still locks-up the
> FCC port.
> The current patch fixes a pointer arithmetic bug (second bug in the same
> line), which leads FCC port lock-up during underrun/collision handling.
> Within the tx_startup() function in mac-fcc.c, the address of last BD is
> not calculated correctly. As a result of wrong calculation of the last BD
> address, the next transmitted BD may be set to an area out of the transmit
> BD ring. This actually causes to port lock-up and it is not recoverable.
>
> Signed-off-by: Martin Roth <martin.roth@xxxxxxxxxxxxxxxxxxxxx>
Applied, thank you.