Re: [PATCH v2] net: mvmdio: fix interrupt timeout handling

From: Leigh Brown
Date: Thu Dec 19 2013 - 14:27:57 EST


On 2013-12-19 17:43, Jason Gunthorpe wrote:
On Thu, Dec 19, 2013 at 01:09:48PM +0000, Leigh Brown wrote:
This version corrects the whitespace issue.

orion_mdio_wait_ready uses wait_event_timeout to wait for the
SMI interrupt to fire. wait_event_timeout waits for between
"timeout - 1" and "timeout" jiffies. In this case a 1ms timeout
when HZ is 1000 results in a wait of 0 to 1 jiffies, causing
premature timeouts.

This fix ensures a minimum timeout of 2 jiffies, ensuring
wait_event_timeout will always wait at least 1 jiffie.

Issue reported by Nicolas Schichan.

Tested-by: Nicolas Schichan <nschichan@xxxxxxxxxx>
Signed-off-by: Leigh Brown <leigh@xxxxxxxxxxxxx>
drivers/net/ethernet/marvell/mvmdio.c | 6 ++++++
1 file changed, 6 insertions(+)

Leigh, I have just noticed a regression in 3.13-rc3 vs 3.10, on
kirkwood where 3.13 occasionally prints:

3 12/11 13:59:02 kernel: orion-mdio f1072004.mdio: Timeout: SMI busy
for too long

Is that the same issue that this patch is addressing?

Yes, absolutely.

Regards,

Leigh.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/