From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751195AbeAVWRM (ORCPT ); Mon, 22 Jan 2018 17:17:12 -0500 Received: from sonic305-4.consmr.mail.bf2.yahoo.com ([74.6.133.43]:33663 "EHLO sonic305-4.consmr.mail.bf2.yahoo.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751002AbeAVWRL (ORCPT ); Mon, 22 Jan 2018 17:17:11 -0500 X-YMail-OSG: DC_bSrUVM1lgOEKK9YxPNRkveAcvnTZuNv4dMwpFZORVMyWl40PoPW2vj1t0Q2R 3yd6qwhFWU1tN0iWDiGzfheHGKGiUwa9TaOW5fhcyDafYwYI0cF.56qZDnJ4gQRoBwSd0tcnFZ1m 1mSfrcWfFgjZaen9mQ4LzKXHH0nOXHA5MItm4Zze43LPNnAVeKtwPr4ufAiWkHiKuHFFVmtcGKhO dPDt8u8J5hRr2Fayo5jNnqip.OQ.caV1lC_q5fVU6WlGyNTujujBK9uB_YIAAZ_5ylO1BCjkhLZL jKaAq8njG6TZ4cC8FD_BHKCkoAXH9fLxQYv3TjtFED3gjUCSuK8xhzySBCiP4glLwZeF_uI88ZYT fOq8Zi5XettmphWEZvp4Q8dR4f0LWynogLZcv5PgrkDSDJsgzd2HR0Mky3g7pZVgTHN.mu8EjtLv 463FrJkGETOgQWs5adJ40qRju0FXmTwR6S07fTGXLyDI_vtnPODJS0LO9NG5COm4bfPnxP7tGx6u XrrhW4cRSSGVmNkujj8ATS12VSVNRqge2qD.p Date: Mon, 22 Jan 2018 22:17:06 +0000 (UTC) From: Denis Du To: David Miller Cc: khc@pm.waw.pl, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Message-ID: <1243263981.2842803.1516659426298@mail.yahoo.com> In-Reply-To: <20180122.152513.1108868799788445512.davem@davemloft.net> References: <751079597.1884905.1516121905374.ref@mail.yahoo.com> <751079597.1884905.1516121905374@mail.yahoo.com> <20180122.152513.1108868799788445512.davem@davemloft.net> Subject: Re: [PATCH] Carrier detect ok, don't turn off negotiation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Mailer: WebService/1.1.11214 YMailNorrin Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mail.home.local id w0MMHF1x013364 The timer is supposed to be triggered by carrier detect interrupt. After remove the line noise, the carrier detect interrupt is never triggered again, because the carrier is always ok and it only trigger the timer once, Since the protocol was terminated and no new interrupts happen, the link will never be back. So the case here is that the line noise is good and just good to make the carrier detect still good  but the protocol fail, the timer will be never triggered again. Of course, if you increase the noise and make even the carrier detect fail, then remove the noise, the link will be up, Because the carrier down and up again and then trigger the timer to restart. Denis Du On Monday, January 22, 2018, 3:25:16 PM EST, David Miller wrote: From: Denis Du Date: Tue, 16 Jan 2018 16:58:25 +0000 (UTC) > From b5902a4dfc709b62b704997ab64f31c9ef69a6db Mon Sep 17 00:00:00 2001 > From: Denis Du > Date: Mon, 15 Jan 2018 17:26:06 -0500 > Subject: [PATCH] netdev: carrier detect ok, don't turn off negotiation > > Sometimes when physical lines have a just good noise to make the protocol > handshaking fail, but the carrier detect still good. Then after remove of > the noise, nobody will trigger this protocol to be start again to cause > the link to never come back. The fix is when the carrier is still on, not > terminate the protocol handshaking. > > Signed-off-by: Denis Du The timer is supposed to restart the protocol again, that's how this whole thing is designed to work. I think you are making changes to the symptom rather than the true cause of the problems you are seeing. Sorry, I will not apply this until the exact issue is better understood. Thank you.