Juan Jose Garcia Ripoll
|
e192df6069
|
Fixed order of arguments to pthread_sigmask()
|
2012-04-05 01:08:39 +02:00 |
|
Juanjo Garcia-Ripoll
|
1683fe140d
|
Removed wrong comment
|
2012-04-02 17:28:33 +02:00 |
|
Juanjo Garcia-Ripoll
|
0fecb887e0
|
Implemented semaphores using atomic operations
|
2012-04-02 17:12:50 +02:00 |
|
Juan Jose Garcia Ripoll
|
e607b5c7f8
|
Fixed a typo in queue.d
|
2012-04-01 12:32:44 +02:00 |
|
Juan Jose Garcia Ripoll
|
b45695b642
|
Remove change that slipped from previous debugging sessions.
|
2012-03-31 11:30:06 +02:00 |
|
Juan Jose Garcia Ripoll
|
1de1d7e428
|
ecl_wait_on() takes the environment as an argument
|
2012-03-31 11:25:56 +02:00 |
|
Juan Jose Garcia Ripoll
|
667362a485
|
mp_get_lock_wait() checks the type of the lock before dereferencing a field.
|
2012-03-31 11:22:23 +02:00 |
|
Juan Jose Garcia Ripoll
|
e278e1d5a7
|
When the lock is interrupted, we have to ensure that some thread is woken up.
|
2012-03-31 11:17:27 +02:00 |
|
Juan Jose Garcia Ripoll
|
108dffc08e
|
Moved some comments
|
2012-03-31 11:17:08 +02:00 |
|
Juan Jose Garcia Ripoll
|
57b24d5807
|
The main process was not marked as ctive.
|
2012-03-31 11:16:10 +02:00 |
|
Juan Jose Garcia Ripoll
|
008a260e1f
|
In ecl_wait_on(), take care of the situation in which we abort waiting but do not care to acquire the lock: the other waiters must then be awoken.
|
2012-03-31 10:54:01 +02:00 |
|
Juan Jose Garcia Ripoll
|
e614f54a10
|
Resucitate the ecl_wait_on() implementation based on nanosleep().
|
2012-03-29 22:45:58 +02:00 |
|
Juan Jose Garcia Ripoll
|
a5d1a4fdad
|
Only block the process communication thread
|
2012-03-29 22:25:28 +02:00 |
|
Juan Jose Garcia Ripoll
|
1a9789f271
|
Directly access the option values array and only block the process interrupt in ecl_wait_on().
|
2012-03-29 22:11:29 +02:00 |
|
Juan Jose Garcia Ripoll
|
c4023263f0
|
Fixed small typo.
|
2012-03-29 20:25:28 +02:00 |
|
Juan Jose Garcia Ripoll
|
0b013aeaa4
|
Remove install_process_interupt_handler(), which is after all a synchronous signal handler
|
2012-03-29 20:23:14 +02:00 |
|
Juan Jose Garcia Ripoll
|
2d0f9bd1ed
|
Split the process interrupt handler from others, to speed it up a bit.
|
2012-03-29 20:15:05 +02:00 |
|
Juan Jose Garcia Ripoll
|
616bcfcf0c
|
Move the definition of sched_yield() up for scope reasons.
|
2012-03-29 19:34:12 +02:00 |
|
Juan Jose Garcia Ripoll
|
fc62d7927f
|
Eliminated all of the remnants from the ecl_atomic_queue interface
|
2012-03-29 18:57:31 +02:00 |
|
Juan Jose Garcia Ripoll
|
a0252e9509
|
Remove debug statement
|
2012-03-29 18:51:08 +02:00 |
|
Juan Jose Garcia Ripoll
|
328ac68f83
|
No need to create an extra cons for the wait queue
|
2012-03-29 18:50:58 +02:00 |
|
Juan Jose Garcia Ripoll
|
72fb2b575c
|
Use the spinlock in the queue object and not in the cons
|
2012-03-29 18:33:58 +02:00 |
|
Juan Jose Garcia Ripoll
|
47b906b18f
|
Do not pass the wait queue cons object around
|
2012-03-29 18:18:38 +02:00 |
|
Juan Jose Garcia Ripoll
|
5b1007c787
|
Change field names and introduce the spinlock in the lock structure
|
2012-03-29 17:43:27 +02:00 |
|
Juan Jose Garcia Ripoll
|
658d1c53ab
|
Removed unused code and refactored all the queue code into queueu.d
|
2012-03-29 17:37:35 +02:00 |
|
Juan Jose Garcia Ripoll
|
9331ec4ac5
|
Condition variables must _always_ wake up somebody.
|
2012-03-29 16:47:55 +02:00 |
|
Juan Jose Garcia Ripoll
|
4cf99dce0b
|
Reuse the cons that is used for adding a process to a wait queue.
|
2012-03-29 15:25:59 +02:00 |
|
Juan Jose Garcia Ripoll
|
b9cebb0cf7
|
print_lock() is now more like printf(). New implementation of the queue.
|
2012-03-29 12:45:22 +02:00 |
|
Juan Jose Garcia Ripoll
|
4bbeaa8f6e
|
Handle SIGILL.
|
2012-03-29 12:43:50 +02:00 |
|
Juan Jose Garcia Ripoll
|
76de423dcd
|
Remove debug statements
|
2012-03-28 21:53:48 +02:00 |
|
Juan Jose Garcia Ripoll
|
a5661d8ad5
|
Do not try the atomic lock operation if there are processes waiting.
|
2012-03-27 22:55:02 +02:00 |
|
Juan Jose Garcia Ripoll
|
e0a8c7b568
|
Check whether sched_yield() is available.
|
2012-03-27 22:53:58 +02:00 |
|
Juan Jose Garcia Ripoll
|
9ed7234c54
|
Debug wait queue
|
2012-03-23 23:23:53 +01:00 |
|
Juan Jose Garcia Ripoll
|
ad3b5ce069
|
Export spinlocks in internal.h
|
2012-03-23 22:30:19 +01:00 |
|
Juanjo Garcia-Ripoll
|
d0e9b4cd47
|
While a thread is booting: i) signals are ignored, ii) mp_process_join() and mp_process_kill() wait.
|
2012-03-20 17:46:31 +01:00 |
|
Juan Jose Garcia Ripoll
|
cacf1be931
|
mp_process_kill() and mp_process_join() now check whether the process is alive.
|
2012-03-20 00:02:51 +01:00 |
|
Juan Jose Garcia Ripoll
|
d54cbaa749
|
ecl_check_pending_interrupts() now takes the environment as argument
To wake up a process we need not supply any function (it is faster as it saves a call to queue_signal()
|
2012-03-20 00:02:47 +01:00 |
|
Juan Jose Garcia Ripoll
|
b10c0c1acf
|
Interrupts will be discarded for exiting processes (avoids a harmful process kill signal when trying to clean up)
|
2012-03-19 23:59:58 +01:00 |
|
Juan Jose Garcia Ripoll
|
a444e8d290
|
When giving up a lock there is no need to disable interrupts.
|
2012-03-19 23:59:16 +01:00 |
|
Juan Jose Garcia Ripoll
|
445431daa4
|
Mutexes and condition variables now rely on a queue for organizing waiters.
|
2012-03-19 01:14:22 +01:00 |
|
Juan Jose Garcia Ripoll
|
a98208d1ea
|
Fixed identification of inactive processes in unixint.d
|
2012-03-19 01:13:58 +01:00 |
|
Juan Jose Garcia Ripoll
|
bc738ccae8
|
The lock.waiter field was not marked during GC
|
2012-03-19 00:59:51 +01:00 |
|
Juan Jose Garcia Ripoll
|
6719519516
|
Simplified the function that creates the bytecodes compiler environment
|
2012-03-18 20:19:47 +01:00 |
|
Juan Jose Garcia Ripoll
|
af9808d5d9
|
Save the value of the code walker in the compiler environment
|
2012-03-18 20:03:30 +01:00 |
|
Juan Jose Garcia Ripoll
|
83b38deac6
|
In list_directory() the text mask is now a lisp object
|
2012-03-18 17:21:00 +01:00 |
|
Juan Jose Garcia Ripoll
|
f074dd441f
|
When a directory component is not a wild string, nor a wild keyword, ECL no longer tries to list the directory.
|
2012-03-18 16:54:10 +01:00 |
|
Juan Jose Garcia Ripoll
|
f37055af48
|
New function to detect wild pathname components.
|
2012-03-18 16:53:44 +01:00 |
|
Juan Jose Garcia Ripoll
|
a85ee4d210
|
When in Unicode, ensure that the output string is always of the desired format, which defaults to :UTF8 for compiled files.
|
2012-03-18 16:24:46 +01:00 |
|
Juan Jose Garcia Ripoll
|
e48229c81a
|
After -shell, stop processing any further arguments.
|
2012-03-18 16:24:46 +01:00 |
|
Juan Jose Garcia Ripoll
|
a9878638c1
|
MSVC admits 64 bit integers also in 32 bit mode.
|
2012-03-18 15:43:27 +01:00 |
|