From 8227d65b72ff6df1bacc1560cd21f138cd52bb41 Mon Sep 17 00:00:00 2001 From: Alexander Kabaev Date: Mon, 27 Jan 2020 00:14:51 +0000 Subject: [PATCH] Enter net epoch in msk_tick. One more instance of if_input being called outside of interrupt, by means of msk_handle_events. Differential Revision: https://reviews.freebsd.org/D23379 --- sys/dev/msk/if_msk.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/dev/msk/if_msk.c b/sys/dev/msk/if_msk.c index 6f0f8806359..307d9aec35c 100644 --- a/sys/dev/msk/if_msk.c +++ b/sys/dev/msk/if_msk.c @@ -3374,6 +3374,7 @@ msk_txeof(struct msk_if_softc *sc_if, int idx) static void msk_tick(void *xsc_if) { + struct epoch_tracker et; struct msk_if_softc *sc_if; struct mii_data *mii; @@ -3386,7 +3387,9 @@ msk_tick(void *xsc_if) mii_tick(mii); if ((sc_if->msk_flags & MSK_FLAG_LINK) == 0) msk_miibus_statchg(sc_if->msk_if_dev); + NET_EPOCH_ENTER(et); msk_handle_events(sc_if->msk_softc); + NET_EPOCH_EXIT(et); msk_watchdog(sc_if); callout_reset(&sc_if->msk_tick_ch, hz, msk_tick, sc_if); }