diff --git a/scheme/interfaces.scm b/scheme/interfaces.scm index c7d7fa3..fcda49d 100644 --- a/scheme/interfaces.scm +++ b/scheme/interfaces.scm @@ -630,7 +630,7 @@ call-before-heap-overflow! (interrupt :syntax))) -(define-interface sigevents-interface +(define-interface rts-sigevents-interface (export rts-next-sigevent rts-next-sigevent/no-wait most-recent-sigevent @@ -638,7 +638,7 @@ sigevent-type schedule-timer-interrupt!)) -(define-interface sigevents-internal-interface +(define-interface rts-sigevents-internal-interface (export waiting-for-sigevent? initialize-sigevents!)) diff --git a/scheme/packages.scm b/scheme/packages.scm index fd243a4..8464f08 100644 --- a/scheme/packages.scm +++ b/scheme/packages.scm @@ -292,8 +292,8 @@ methods meta-methods interrupts - sigevents - sigevents-internal + rts-sigevents + rts-sigevents-internal low-level more-types number-i/o diff --git a/scheme/rts-packages.scm b/scheme/rts-packages.scm index f8680e8..9c72554 100644 --- a/scheme/rts-packages.scm +++ b/scheme/rts-packages.scm @@ -226,8 +226,8 @@ (files (rts interrupt)) (optimize auto-integrate)) ;mostly for threads package... -(define-structures ((sigevents sigevents-interface) - (sigevents-internal sigevents-internal-interface)) +(define-structures ((rts-sigevents rts-sigevents-interface) + (rts-sigevents-internal rts-sigevents-internal-interface)) (open scheme-level-1 define-record-types threads threads-internal interrupts @@ -283,7 +283,7 @@ interrupts ;with-interrupts-inhibited wind ;call-with-current-continuation channel-i/o ;waiting-for-i/o? - sigevents-internal) ;waiting-for-os-sigevent? + rts-sigevents-internal) ;waiting-for-os-sigevent? (access primitives) ;unspecific, wait (files (rts root-scheduler))) @@ -331,7 +331,7 @@ thread-cells-internal ;initialize-dynamic-state! exceptions ;initialize-exceptions! interrupts ;initialize-interrupts! - sigevents-internal ;initialize-sigevents! + rts-sigevents-internal ;initialize-sigevents! records-internal ;initialize-records! export-the-record-type ;just what it says threads-internal ;start threads diff --git a/scsh/procobj.scm b/scsh/procobj.scm index aa12d19..fde5edf 100644 --- a/scsh/procobj.scm +++ b/scsh/procobj.scm @@ -114,8 +114,8 @@ ;;; I'm really tired of opening everything (i.e. events) in scsh-level-0 ;;; this is here until someone (Olin !!!) cleans up the scsh modules -(define next-sigevent (structure-ref scsh-events next-sigevent)) -(define most-recent-sigevent (structure-ref scsh-events most-recent-sigevent)) +(define next-sigevent (structure-ref sigevents next-sigevent)) +(define most-recent-sigevent (structure-ref sigevents most-recent-sigevent)) (define *autoreap-policy* #f) ; Not exported from this module. diff --git a/scsh/scsh-interfaces.scm b/scsh/scsh-interfaces.scm index 7a86246..d893ad8 100644 --- a/scsh/scsh-interfaces.scm +++ b/scsh/scsh-interfaces.scm @@ -1039,7 +1039,7 @@ interrupt/xcpu interrupt/xfsz)) -(define-interface scsh-events-interface +(define-interface sigevents-interface (export most-recent-sigevent sigevent? next-sigevent diff --git a/scsh/scsh-package.scm b/scsh/scsh-package.scm index 5c08e13..be27ddd 100644 --- a/scsh/scsh-package.scm +++ b/scsh/scsh-package.scm @@ -140,7 +140,7 @@ ; (scsh-regexp-package scsh-regexp-interface) ) (for-syntax (open scsh-syntax-helpers scheme)) - (access sigevents scsh-events threads) + (access rts-sigevents sigevents threads) (open enumerated defenum-package external-calls ;JMG new FFI @@ -284,7 +284,7 @@ scsh-utilities interrupts low-interrupt - scsh-events + sigevents primitives scheme) (files startup)) @@ -300,7 +300,7 @@ extended-ports fluids interfaces - scsh-events + sigevents low-interrupt fluids-internal ; JMG: get-dynamic-env handle ; JMG: with-handler @@ -412,12 +412,12 @@ scheme) (files here)) -(define-structure scsh-events scsh-events-interface +(define-structure sigevents sigevents-interface (open scsh-level-0 scheme structure-refs low-interrupt - sigevents) + rts-sigevents) (files event)) (define-structure simple-syntax (export define-simple-syntax) diff --git a/scsh/sighandlers.scm b/scsh/sighandlers.scm index ddab93b..8c7fe4d 100644 --- a/scsh/sighandlers.scm +++ b/scsh/sighandlers.scm @@ -191,10 +191,10 @@ (run-as-long-as deliver-interrupts thunk)) (define (deliver-interrupts) - (let lp ((last ((structure-ref scsh-events most-recent-sigevent)))) - (let ((event ((structure-ref scsh-events next-sigevent-set) + (let lp ((last ((structure-ref sigevents most-recent-sigevent)))) + (let ((event ((structure-ref sigevents next-sigevent-set) last full-interrupt-set))) - (call-interrupt-handler ((structure-ref scsh-events sigevent-type) event)) + (call-interrupt-handler ((structure-ref sigevents sigevent-type) event)) (lp event)))) ;;; I am ashamed to say the 33 below is completely bogus. diff --git a/scsh/syscalls.scm b/scsh/syscalls.scm index 0c062bb..cb24f73 100644 --- a/scsh/syscalls.scm +++ b/scsh/syscalls.scm @@ -414,7 +414,7 @@ proc-group)))) signal)) (define (itimer sec) - ((structure-ref scsh-events schedule-timer-interrupt!) (* sec 1000))) + ((structure-ref sigevents schedule-timer-interrupt!) (* sec 1000))) ;;; SunOS, not POSIX: ;;; (define-foreign signal-process-group/errno ;;; (killpg (integer proc-group) (integer signal))