[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] GNU Mach branch, master, updated. v1.5-78-ge6c6e15
From: |
Justus Winter |
Subject: |
[SCM] GNU Mach branch, master, updated. v1.5-78-ge6c6e15 |
Date: |
Mon, 17 Aug 2015 15:50:46 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Mach".
The branch, master has been updated
via e6c6e15b03639e98df68df35ba0f639bdbc1dc51 (commit)
via 347cb29151859a56a6c5f0f355a43033e5e035a5 (commit)
via bdc9b8583e6336bb3a44a80f10bac8b7b369719c (commit)
from 8259090d7394b667fbca4d4b05153e980a39db6b (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit e6c6e15b03639e98df68df35ba0f639bdbc1dc51
Author: Justus Winter <address@hidden>
Date: Sat Aug 15 18:30:28 2015 +0200
kern: keep track of the writer when debugging locks
* configfrag.ac (MACH_LDEBUG): Adjust comment, we use it to sanity
check all locks now.
* kern/lock.c (lock_write): Keep track of the writer thread.
(lock_done): Clear writer.
(lock_read_to_write): Keep track of the writer thread.
(lock_write_to_read): Assert that the current thread holds the lock.
Clear writer.
(lock_try_write): Keep track of the writer thread.
(lock_try_read_to_write): Likewise.
(lock_set_recursive): Assert that the current thread holds the lock.
* kern/lock.h (struct lock): New field `writer'.
(have_read_lock, have_write_lock, have_lock): New macros that can be
used to assert that the current thread holds the given lock. If
MACH_LDEBUG is not set, they evaluate to true.
commit 347cb29151859a56a6c5f0f355a43033e5e035a5
Author: Justus Winter <address@hidden>
Date: Sat Aug 15 17:04:08 2015 +0200
kern: improve simple lock debugging
Do not bother saving the return address when acquire a simple lock.
Save the location as provided by the compiler as string instead. Also
save the lock parameter.
* kern/lock.c (struct simple_locks_info): Drop `ra', add `expr', `loc'.
(simple_lock): Rename to `_simple_lock', add expression and location
parameters and save them.
(simple_lock_try): Likewise.
(simple_unlock): Zero-out the now unused slot in the list of taken locks.
(db_show_all_slocks): Use the new information.
* kern/lock.h (simple_lock, simple_lock_try): Provide macro versions
passing the location and expression as string.
commit bdc9b8583e6336bb3a44a80f10bac8b7b369719c
Author: Justus Winter <address@hidden>
Date: Sat Aug 15 16:43:24 2015 +0200
kern: disable the simple lock checks while debugging
* kern/lock.c (do_check_simple_locks): New variable.
(check_simple_locks): Make check conditional.
(check_simple_locks_{en,dis}able): New functions.
* kern/lock.h (check_simple_locks_{en,dis}able): New declarations.
* ddb/db_trap.c (db_task_trap): Disable simple lock checks.
-----------------------------------------------------------------------
Summary of changes:
configfrag.ac | 2 +-
ddb/db_trap.c | 4 +++
kern/lock.c | 74 +++++++++++++++++++++++++++++++++++++++++++-------------
kern/lock.h | 35 +++++++++++++++++++++++++-
4 files changed, 95 insertions(+), 20 deletions(-)
hooks/post-receive
--
GNU Mach
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] GNU Mach branch, master, updated. v1.5-78-ge6c6e15,
Justus Winter <=