elks-enhanced

publicRead
Owner: themasterBranch: masterCommits: 6893Updated: 2026-04-19 00:15
Git CLI clone URL
git clone https://www.xt-emporium.com/git/elks-enhanced.git
Fullscreen desktop URL

Commit diff

Commit 88ad71ac3e2e88cf83c138bcfc6ac2250f3c929
commit 88ad71ac3e2e88cf83c138bcfc6ac2250f3c9290
Author: Greg Haerr <greg@censoft.com>
Date:   Sat Apr 18 15:08:51 2026 -0400

    [kernel] Add BH interrupt check after syscall
---
 elks/arch/i86/kernel/irqtab.S | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/elks/arch/i86/kernel/irqtab.S b/elks/arch/i86/kernel/irqtab.S
index 069b74fc..99e9f065 100644
--- a/elks/arch/i86/kernel/irqtab.S
+++ b/elks/arch/i86/kernel/irqtab.S
@@ -164,7 +164,11 @@ save_regs:
         // strace.c must be compiled with tail optimization off to protect top of stack
         call    trace_end       // syscall return value is top of stack
 #endif
-        call    do_signal       // process signals
+
+        cmpw    $0,bh_active    // Any active bottom halfs?
+        je      1f              // No
+        call    do_bottom_half  // Run bottom halves
+1:      call    do_signal       // process signals
         cli
         jmp     restore_regs
 //