Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/arm26/arm26 Crude hack to ensure that if a soft-int...
details: https://anonhg.NetBSD.org/src/rev/ed2fe5f645bd
branches: trunk
changeset: 515087:ed2fe5f645bd
user: bjh21 <bjh21%NetBSD.org@localhost>
date: Sun Sep 16 12:58:53 2001 +0000
description:
Crude hack to ensure that if a soft-interrupt handler schedules a soft
interrupt, the second handler gets called when the first returns.
diffstat:
sys/arch/arm26/arm26/softintr.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diffs (34 lines):
diff -r 3254e2014c45 -r ed2fe5f645bd sys/arch/arm26/arm26/softintr.c
--- a/sys/arch/arm26/arm26/softintr.c Sun Sep 16 12:52:34 2001 +0000
+++ b/sys/arch/arm26/arm26/softintr.c Sun Sep 16 12:58:53 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: softintr.c,v 1.9 2001/08/25 17:45:32 bjh21 Exp $ */
+/* $NetBSD: softintr.c,v 1.10 2001/09/16 12:58:53 bjh21 Exp $ */
/*
* Copyright (c) 1999 Ben Harris.
@@ -38,7 +38,7 @@
#include <sys/param.h>
-__RCSID("$NetBSD: softintr.c,v 1.9 2001/08/25 17:45:32 bjh21 Exp $");
+__RCSID("$NetBSD: softintr.c,v 1.10 2001/09/16 12:58:53 bjh21 Exp $");
#include <sys/malloc.h>
#include <sys/queue.h>
@@ -93,6 +93,7 @@
{
struct softintr_handler *sh;
+again:
for (sh = LIST_FIRST(&sh_head); sh != NULL && sh->sh_ipl > level;
sh = LIST_NEXT(sh, sh_link))
if (sh->sh_pending) {
@@ -100,6 +101,7 @@
uvmexp.softs++;
sh->sh_pending = 0;
sh->sh_func(sh->sh_arg);
+ goto again;
}
}
Home |
Main Index |
Thread Index |
Old Index