📄 changelog
字号:
* src/debug/generic-stub.c: * src/debug/generic-stub.h: Added control of interrupts. Removed unused functions set_debug_trap and initialize_stub. Tue Oct 13 17:36:29 1998 Jonathan Larmour <jlarmour@cygnus.co.uk> * src/test/tsttracc.c (cyg_start): Replace CYG_REPORT_FUNCARGSVOID with the correct CYG_REPORT_FUNCARGVOID1998-10-09 Hugo Tyson <hmt@cygnus.co.uk> * src/common/thread.cxx: clear_timer() is a static which always affects the executing thread and none other. Removed the "foo->" from various "foo->clear_timer()" calls to make this less confusing. Ditto set_timer(). Changed a "clear_timer()" call to "timer.disable()" and added one so that they affect _this_ thread, the thread which is being kill()ed or reinitialize()d rather than the killer or the resuscitator. Otherwise the alarm list can still get a loop in it when a thread's killed when waiting with a timeout and restarted soon enough. 1998-10-08 Hugo Tyson <hmt@cygnus.co.uk> In general, these changes are to support create/delete of uITRON objects; this requires that an object can be destroyed whilst there are threads waiting on it, and that they shall be awoken with a specific return code. * include/thread.hxx: Cyg_Thread::DESTRUCT added to wake reasons, to deal with an object being destroyed whilst a thread is waiting on it; it's handled in a manner very similar to release() and BREAK wake_reason. * src/common/thread.cxx: thread_entry(): threads now exit() if the entry_point returns. Cyg_Thread() constructors now initialize wake_reason to NONE. reinitialize() clears any pending timeout before calling constructors. counted_sleep( [timeout] ) now both deal with the wake reason in general, and with DESTRUCT in particular. exit() now clears any pending timeout. kill() now force_resumes the thread first. kill() now does not explicitly remove the thread from any queue it's on; wake() does that for you anyway. delay() clears the timer just in case and handles DESTRUCT properly. DESTRUCT added to various switches for completeness. The fixes to counted_sleep()[x2] and kill() are a bugfix for PR#17688. * include/flag.hxx: * src/sync/flag.cxx: Add an argument, defaulting to 0, to the constructor which sets the initial flag value. Add handing of DESTRUCT wake reason. Add a destructor which wakes all threads with DESTRUCT wake_reason. * include/mboxt2.inl: Add handing of DESTRUCT wake reason. Add a destructor which wakes all threads with DESTRUCT wake_reason. * src/sync/cnt_sem2.cxx: Add handing of DESTRUCT wake reason. Add a destructor which wakes all threads with DESTRUCT wake_reason. Correct typo in logic for queueing a waiting thread in Cyg_Counting_Semaphore2::wait( cyg_tick_count abs_timeout ). This is a bugfix for PR#17687. * include/mboxt.inl: * include/mempoolt.inl: * include/mempolt2.inl: * src/sync/bin_sem.cxx: * src/sync/cnt_sem.cxx: * src/sync/mutex.cxx: All these gain handling of the DESTRUCT wake_reason, that's all. 1998-10-08 Gary Thomas <gthomas@penang.cygnus.co.uk> * include/pkgconf/kernel.h: Add support for new architecture1998-10-07 Nick Garnett <nickg@cygnus.co.uk> * tests/kcache1.c (entry0): Replaced CYG_TEST_FINISH() with CYG_TEST_PASS_FINISH(). * src/debug/dbg-thread-demux.c: Added dbg_thread_syscall_rmt_1() to save/set and restore the $gp register values when being called from Cygmon.Sun Sep 27 20:12:15 1998 David Moore <dsm@keema.cygnus.co.uk> * include/mlqueue.hxx: * include/bitmap.hxx: Disallow more than 32 priority levels * include/pkgconf/kernel.h: Changed range of allowed levels from 64 to 321998-09-27 Nick Garnett <nickg@cygnus.co.uk> * tests/memfix2.cxx: Changed message to say "Fixed memory pool 2 OK" rather than "Variable memory pool 2 OK".1998-09-26 Bart Veer <bartv@cygnus.co.uk> * include/intr.hxx (DSRs_pending): PR 17500: if DSR support is disabled completely then this inline function should not be defined at all.1998-09-26 Nick Garnett <nickg@cygnus.co.uk> * tests/kcache1.c: Added this test program for cache API. Includes some performance testing.1998-09-25 Nick Garnett <nickg@cygnus.co.uk> * src/debug/dbg_gdb.cxx: Removed some debugging code. * tests/thread_gdb.c: Added this test program to allow for GDB thread support testing.1998-09-25 Bart Veer <bartv@cygnus.co.uk> * include/pkgconf/kernel.h: The GDB thread support requires the kernel to keep track of all threads on a linked list. This is a separate option. An additional requires statement enforces the dependency. 1998-09-25 Nick Garnett <nickg@cygnus.co.uk> * src/debug/dbg-thread-demux.c: Added include of <pkgconf/kernel.h>, removed debug code.1998-09-24 Bart Veer <bartv@cygnus.co.uk> * src/debug/dbg-thread-demux.c (dbg_thread_syscall_rmt): PR 17327. If kernel gdb thread support is disabled, do not compile in the relevant cases in the rmt switch statement. This is a partial solution to the general problem of how the HAL, kernel, cygmon, and gdb interact.1998-09-24 Nick Garnett <nickg@cygnus.co.uk> * src/common/clock.cxx (Cyg_RealTimeClock): Changed clock priority from zero to one, since it is now used to set the hardware interrupt priority. * src/intr/intr.cxx: Cyg_Interrupt::chain_isr() now only calls interrupt objects that have the matching vector number. Call HAL_INTERRUPT_SET_LEVEL() when attaching interrupts using the priority passed in the constructor. Added call to HAL_TRANSLATE_VECTOR() for attaching chained interrupts. * include/instrmnt.h (CYG_INSTRUMENT_EVENT_INTR_CHAIN_ISR): Added this event.Thu Sep 24 11:07:12 1998 David Moore <dsm@keema.cygnus.co.uk> * tests/except1.cxx: * tests/kexcept1.cxx: Made exception tests detect when CYGPKG_KERNEL_EXCEPTIONS is disabled. 1998-09-22 Bart Veer <bartv@cygnus.co.uk> * include/pkgconf/kernel.h: Changed the kernel package from type bool to type dummy, since it is not yet possible to disable this package.1998-09-20 Mark Galassi <rosalia@cygnus.com> * include/pkgconf/kernel.h: updated CDL doc strings. fixed some typos in my doc strings.1998-09-18 Nick Garnett <nickg@cygnus.co.uk> * src/common/thread.cxx: * include/thread.inl: Modified threads list from a LIFO stack to a ring so that we can add new ones to the end and present the threads to GDB in an order that more closely matches how it assigns thread ids. Wed Sep 16 19:11:22 1998 Hugo Tyson <hmt@cygnus.co.uk> * include/thread.inl (get_unique_id): Move this declaration to before its first use, so that the user knows it is inline at the point of use. Avoids a warning.Wed Sep 16 08:49:48 1998 Jesper Skov <jskov@cygnus.co.uk> PR 17269 * src/common/except.cxx (Cyg_Exception_Control): Replaced CYGNUM_EXCEPTION_MAX (bug!) with CYG_EXCEPTION_COUNT. * include/kapidata.h (struct cyg_exception_conrol): Replaced CYG_EXCEPTION_MAX (bug!) with CYG_EXCEPTION_COUNT. * src/intr/intr.cxx: * include/intr.hxx (class Cyg_Interrupt): Replaced CYG_ISR_MAX+1 with CYG_ISR_COUNT. * include/except.hxx: Replaced CYGNUM_EXCEPTION_COUNT with CYG_EXCEPTION_COUNT. * tests/kintr0.c: * tests/intr0.cxx: Replaced CYG_ISR_MAX (bug!) with CYG_ISR_COUNT. Tue Sep 15 19:19:37 1998 Jonathan Larmour <jlarmour@cygnus.co.uk> * include/mboxt2.hxx: Add inclusion of thread.inl to silence warning * tests/kexcept1.c: Insert void as parameter list of __default_exception_vsr() to silence warningTue Sep 15 19:16:52 1998 David Moore <dsm@keema.cygnus.co.uk> * src/sched/sched.cxx: Cleaned up comments.1998-09-15 Nick Garnett <nickg@cygnus.co.uk> * src/debug/dbg-thread-demux.c: Stubbed out led() function. * src/debug/dbg_gdb.cxx: Decide whether to byteswap thread id depending on reported byte order of target. Many small changes to debug code. * include/thread.inl (init_context): Changed CYG_DEBUG to CYGPKG_INFRA_DEBUG.Tue Sep 15 09:35:14 1998 Jesper Skov <jskov@cygnus.co.uk> PR 17236 * src/common/clock.cxx (add_alarm): A retriggering alarm called with a trigger time in the past or now will be assigned a new trigger time. Don't find the counter list until the final trigger time is known. Also added a few #else error statements to catch a situation where no CYGIMP_KERNEL_COUNTERS_x_LIST implementation config is selected. * tests/clock0.cxx: Added extra ASSERT to ensure alarms enabled with a trigger time of now or in the past actually fire. * tests/kclock0.c: Same. 1998-09-15 Bart Veer <bartv@cygnus.co.uk> * include/pkgconf/kernel.h: Cleaning up coonfiguration data (mostly improving the descriptions). Mon Sep 14 11:08:59 1998 Jesper Skov <jskov@lassi.cygnus.co.uk> PR 17230 * include/pkgconf/kernel.h: CYGIMP_KERNEL_INTERRUPTS_CHAIN requires CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN.1998-09-14 Mark Galassi <rosalia@cygnus.com> * include/pkgconf/kernel.h: started adding CDL doc fields.1998-09-12 Bart Veer <bartv@cygnus.co.uk> * include/pkgconf/kernel.h: Sort out exception handling options (PR 16953) Added missing descriptions (PR 17184)Fri Sep 11 19:18:28 1998 Hugo Tyson <hmt@masala.cygnus.co.uk> * include/clock.hxx (class Cyg_Alarm): * src/common/clock.cxx (Cyg_Alarm::add_alarm): PR#17182 Move the code to synchronize a repeating alarm which had been firing in the dim and distant past with times in the future, which had been inline in Cyg_Alarm::enable(), into a function of its own, Cyg_Alarm::synchronize(). Call it from Cyg_Alarm::enable() and also from add_alarm() when the immediate time to fire is now or in the past; otherwise an initial time of, say, NOW-10 with an interval of 5 would just get lost. Also corrected/commented the logic there to allow an alarm's handler to cancel itself. Wed Sep 9 17:43:26 1998 Hugo Tyson <hmt@cygnus.co.uk> * src/common/delete.cxx: Control the provision of empty delete functions rather better, via an explicit option from the libc package. Read the rather lengthy comment in delete.cxx for the explanation. Also note that the correct place for this functionality is in the infrastructure, and the same should be done for the C++ new functions also.1998-09-09 Nick Garnett <nickg@cygnus.co.uk> * src/common/thread.cxx: combined separate next_unique_id variables in both constructors. This would have caused duplicate thread ids to be generated. * include/thread.inl: Added code to initialize Cyg_HardwareThread::saved_context. * src/debug/dbg-thread-demux.c: * src/debug/dbg_gdb.cxx: Many changes to get thread API working with Cygmon. Debug code currently left in place until complete testing is possible.Tue Sep 8 17:17:32 1998 Hugo Tyson <hmt@cygnus.co.uk> * include/pkgconf/kernel.h (CYGNUM_KERNEL_COUNTERS_RTC_PERIOD): Set up a sensible default RTC for CYG_HAL_MN10300_SIM different from that for the MN103002 or CYG_HAL_MN10300_STDEVAL1, so that sim tests run in less than geological time. This is the same as the default value of before.Fri Sep 4 18:25:02 1998 Hugo Tyson <hmt@cygnus.co.uk> * src/sched/mlqueue.cxx (timeslice): * src/sched/sched.cxx (unlock_inner): Condition out the tracing macros here by default, for tracing these consumes the whole quantum. 1998-09-04 Bart Veer <bartv@cygnus.co.uk> * include/pkgconf/kernel.h: Commented out the ROM monitor-specific option settings for now. * tests/kclock1.c: * include/pkgconf/kernel.h: * include/kapidata.h (struct cyg_counter): Fixed typos in configuration option names. 1998-09-03 David Moore <dsm@cygnus.co.uk> * include/pkgconf/kernel.h (CYGNUM_KERNEL_INTERRUPTS_DSRS_TABLE_SIZE): Fixed typo in configuration option name. * src/intr/intr.cxx: Fixed typo in configuration option name. Fixed cast to incorrect type. 1998-09-03 Nick Garnett <nickg@cygnus.co.uk> * src/PKGconf.mak (COMPILE): Added debug/dbg-thread-demux.c to COMPILE list. * src/debug/dbg_gdb.cxx (dbg_threadinfo): Added first cut at providing thread state string. * src/debug/dbg-thread-syscall.h: * src/debug/dbg-thread-demux.c: Added these two files to implement the interface between Cygmon and eCos. 1998-09-03 Bart Veer <bartv@cygnus.co.uk> * include/pkgconf/kernel.h (CYGSEM_KERNEL_MEMORY_COALESCE): * include/mvarimpl.inl (Cyg_Mempool_Variable_Implementation): Fixed typo in configuration option name. * include/pkgconf/kernel.h: Fixed type in configuration option name.Wed Sep 2 19:01:02 1998 Hugo Tyson <hmt@cygnus.co.uk> * include/mboxt.hxx: * include/mboxt.inl: * include/mboxt2.hxx: * include/mboxt2.inl: * include/mempolt2.hxx: * include/mempolt2.inl: * include/mempoolt.hxx: * include/mempoolt.inl: * include/sema2.hxx: * src/sync/cnt_sem2.cxx: * include/flag.hxx: * src/sync/flag.cxx: * include/kapi.h: * src/common/kapi.cxx: * tests/kmbox1.c: * tests/kmemfix1.c:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -