summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2003-02-26 19:21:56 +0000
committerjhb <jhb@FreeBSD.org>2003-02-26 19:21:56 +0000
commitcaf8c705b393a265c2d8f52d4c113d44b43b7dd0 (patch)
treeb4c79c27e45d139b0897258b20eb41f12f506c08
parent789b4b4840730e49ff383ec39433c066d541b4ac (diff)
downloadFreeBSD-src-caf8c705b393a265c2d8f52d4c113d44b43b7dd0.zip
FreeBSD-src-caf8c705b393a265c2d8f52d4c113d44b43b7dd0.tar.gz
Move an optimization check so that it breaks out of the correct loop.
Basically, as soon as we have run out of events to handle in the swi, we stop looping through all the channels in a for loop.
-rw-r--r--sys/dev/rc/rc.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/dev/rc/rc.c b/sys/dev/rc/rc.c
index 672b091..40178ec 100644
--- a/sys/dev/rc/rc.c
+++ b/sys/dev/rc/rc.c
@@ -818,11 +818,10 @@ done1: ;
critical_exit();
(*linesw[tp->t_line].l_start)(tp);
}
+ if (sc->sc_scheduled_event == 0)
+ break;
}
- if (sc->sc_scheduled_event == 0)
- break;
- }
- while (sc->sc_scheduled_event >= LOTS_OF_EVENTS);
+ } while (sc->sc_scheduled_event >= LOTS_OF_EVENTS);
}
static void
OpenPOWER on IntegriCloud