Hi,

This diff sets isr to the correct value (sc->rl_intrs).
While here don't assign ifp twice in the same function.

Tested with:
re0 at pci2 dev 0 function 0 "Realtek 8168" rev 0x15: RTL8168H/8111H (0x5400), 
msi, address d8:cb:8a:xx:xx:xx

re0 at pci3 dev 0 function 0 "Realtek 8168" rev 0x0c: RTL8168G/8111G (0x4c00), 
msi, address 30:9c:23:xx:x:xx

ok?

Index: sys/dev/ic/re.c
===================================================================
RCS file: /cvs/src/sys/dev/ic/re.c,v
retrieving revision 1.202
diff -u -p -u -p -r1.202 re.c
--- sys/dev/ic/re.c     19 Jun 2017 09:36:27 -0000      1.202
+++ sys/dev/ic/re.c     18 Nov 2019 06:59:26 -0000
@@ -1416,8 +1416,6 @@ re_txeof(struct rl_softc *sc)
        unsigned int    idx;
        int             free = 0;
 
-       ifp = &sc->sc_arpcom.ac_if;
-
        prod = sc->rl_ldata.rl_txq_prodidx;
        cons = sc->rl_ldata.rl_txq_considx;
 
@@ -1955,7 +1953,7 @@ re_init(struct ifnet *ifp)
         * Enable interrupts.
         */
        re_setup_intr(sc, 1, sc->rl_imtype);
-       CSR_WRITE_2(sc, RL_ISR, sc->rl_imtype);
+       CSR_WRITE_2(sc, RL_ISR, sc->rl_intrs);
 
        /* Start RX/TX process. */
        CSR_WRITE_4(sc, RL_MISSEDPKT, 0);

Reply via email to