NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/53858: typo in sys/dev/ic/rtl8169.c: inverted IM_HW logic



>Number:         53858
>Category:       kern
>Synopsis:       typo in sys/dev/ic/rtl8169.c: inverted IM_HW logic
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jan 10 21:20:00 +0000 2019
>Originator:     Anthony Mallet
>Release:        -current
>Organization:
>Environment:
NetBSD 8.99.30: Thu Jan 10 22:09:44 CET 2019
>Description:
After upgrading to a newer kernel using rev 1.155 of
sys/dev/ic/rtl8169.c, I experienced a lot of "re%d: watchdog timeout"
(every couple of minutes or so). I have a PCIe re(4) 8169 with hardware interrupt moderation flag set.

Looking at cvs diff -r 1.154 -r 1.155 rtl8169.c, I think there is a typo
in rev. 1.155. (inverted IM_HW test).

The attached patch fixes (so far) the "watchdog timeout" for me.

>How-To-Repeat:

>Fix:
Index: sys/dev/ic/rtl8169.c
===================================================================
RCS file: /cvsroot/src/sys/dev/ic/rtl8169.c,v
retrieving revision 1.155
diff -u -r1.155 rtl8169.c
--- sys/dev/ic/rtl8169.c        13 Nov 2018 10:51:49 -0000      1.155
+++ sys/dev/ic/rtl8169.c        10 Jan 2019 21:11:54 -0000
@@ -1949,7 +1949,7 @@
         */
        defer = 128000;
 
-       if ((sc->sc_quirk & RTKQ_IM_HW) == 0) {
+       if ((sc->sc_quirk & RTKQ_IM_HW) != 0) {
                period = 1;
                defer = 0;
        } else if ((sc->sc_quirk & RTKQ_PCIE) != 0) {



Home | Main Index | Thread Index | Old Index