diff options
author | Thomas Schwinge <thomas@codesourcery.com> | 2015-11-01 18:57:00 +0100 |
---|---|---|
committer | Thomas Schwinge <thomas@codesourcery.com> | 2015-11-01 18:57:00 +0100 |
commit | cc1cbfb21aed52b60313121654345b167c7cdda7 (patch) | |
tree | 6d850dbefc1cc8b2edc8f6253fcd27808a8decf0 /microkernel/mach | |
parent | 5f2e6be200ae3ddf559697e028aca90c26f58360 (diff) | |
parent | c27bbcb3d543ba954d5c63c628b0077680f92371 (diff) |
Merge commit 'c27bbcb3d543ba954d5c63c628b0077680f92371'
Diffstat (limited to 'microkernel/mach')
-rw-r--r-- | microkernel/mach/gnumach/debugging.mdwn | 2 | ||||
-rw-r--r-- | microkernel/mach/gnumach/interface/thread_get_state.mdwn | 37 | ||||
-rw-r--r-- | microkernel/mach/gnumach/interface/thread_set_state.mdwn | 11 |
3 files changed, 49 insertions, 1 deletions
diff --git a/microkernel/mach/gnumach/debugging.mdwn b/microkernel/mach/gnumach/debugging.mdwn index c5c592b7..c14f6111 100644 --- a/microkernel/mach/gnumach/debugging.mdwn +++ b/microkernel/mach/gnumach/debugging.mdwn @@ -14,7 +14,7 @@ Here are some hints to debug with GNU Mach. [[!toc levels=2]] -# Kernel Debugger +# Kernel Debugger (KDB) Mach has a built-in kernel debugger. [Manual](http://www.gnu.org/software/hurd/gnumach-doc/Kernel-Debugger.html). diff --git a/microkernel/mach/gnumach/interface/thread_get_state.mdwn b/microkernel/mach/gnumach/interface/thread_get_state.mdwn new file mode 100644 index 00000000..c44cb927 --- /dev/null +++ b/microkernel/mach/gnumach/interface/thread_get_state.mdwn @@ -0,0 +1,37 @@ +[[!meta copyright="Copyright © 2014 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!meta title="thread_get_state, thread_set_state"]] + +[[!tag open_issue_documentation]] + + +# `i386_DEBUG_STATE` + +Access the x86 debug registers. + +[[!message-id "20110821231730.GF6004@type.famille.thibault.fr"]], +[[!GNU_Savannah_Git_hurd_gnumach d14e4924c55e3016d1ddf7a38a7e93460ca10ac8]]. + +For example, used by [[/GDB]] for implementing hardware watchpoints. + + +## Open Issues + +[[!tag open_issue_gnumach]] + + * Continuing on [[!message-id "87iokondoc.fsf@schwinge.name"]], do we need to + sanitize some of the values? Is user space allowed to set DR7's GD flag as + well as DR7's reserved flags, or should these flags be masked out? + Anything else? + + * If [[KDB|debugging]] is using hardware watchpoints, those set by user space + applications will be ignored. This is because KDB and the user-space + application are competing for the x86 debug registers, and KDB wins. diff --git a/microkernel/mach/gnumach/interface/thread_set_state.mdwn b/microkernel/mach/gnumach/interface/thread_set_state.mdwn new file mode 100644 index 00000000..35b75e98 --- /dev/null +++ b/microkernel/mach/gnumach/interface/thread_set_state.mdwn @@ -0,0 +1,11 @@ +[[!meta copyright="Copyright © 2014 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!meta redir=thread_get_state]] |