1<html lang="en"> 2<head> 3<title>Hurd Native - Debugging with GDB</title> 4<meta http-equiv="Content-Type" content="text/html"> 5<meta name="description" content="Debugging with GDB"> 6<meta name="generator" content="makeinfo 4.13"> 7<link title="Top" rel="start" href="index.html#Top"> 8<link rel="up" href="Native.html#Native" title="Native"> 9<link rel="prev" href="Cygwin-Native.html#Cygwin-Native" title="Cygwin Native"> 10<link rel="next" href="Neutrino.html#Neutrino" title="Neutrino"> 11<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> 12<!-- 13Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 141998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 15Free Software Foundation, Inc. 16 17Permission is granted to copy, distribute and/or modify this document 18under the terms of the GNU Free Documentation License, Version 1.3 or 19any later version published by the Free Software Foundation; with the 20Invariant Sections being ``Free Software'' and ``Free Software Needs 21Free Documentation'', with the Front-Cover Texts being ``A GNU Manual,'' 22and with the Back-Cover Texts as in (a) below. 23 24(a) The FSF's Back-Cover Text is: ``You are free to copy and modify 25this GNU Manual. Buying copies from GNU Press supports the FSF in 26developing GNU and promoting software freedom.''--> 27<meta http-equiv="Content-Style-Type" content="text/css"> 28<style type="text/css"><!-- 29 pre.display { font-family:inherit } 30 pre.format { font-family:inherit } 31 pre.smalldisplay { font-family:inherit; font-size:smaller } 32 pre.smallformat { font-family:inherit; font-size:smaller } 33 pre.smallexample { font-size:smaller } 34 pre.smalllisp { font-size:smaller } 35 span.sc { font-variant:small-caps } 36 span.roman { font-family:serif; font-weight:normal; } 37 span.sansserif { font-family:sans-serif; font-weight:normal; } 38--></style> 39<link rel="stylesheet" type="text/css" href="../cs.css"> 40</head> 41<body> 42<div class="node"> 43<a name="Hurd-Native"></a> 44<p> 45Next: <a rel="next" accesskey="n" href="Neutrino.html#Neutrino">Neutrino</a>, 46Previous: <a rel="previous" accesskey="p" href="Cygwin-Native.html#Cygwin-Native">Cygwin Native</a>, 47Up: <a rel="up" accesskey="u" href="Native.html#Native">Native</a> 48<hr> 49</div> 50 51<h4 class="subsection">21.1.6 Commands Specific to <span class="sc">gnu</span> Hurd Systems</h4> 52 53<p><a name="index-g_t_0040sc_007bgnu_007d-Hurd-debugging-1231"></a> 54This subsection describes <span class="sc">gdb</span> commands specific to the 55<span class="sc">gnu</span> Hurd native debugging. 56 57 <dl> 58<dt><code>set signals</code><dt><code>set sigs</code><dd><a name="index-set-signals_0040r_007b_002c-Hurd-command_007d-1232"></a><a name="index-set-sigs_0040r_007b_002c-Hurd-command_007d-1233"></a>This command toggles the state of inferior signal interception by 59<span class="sc">gdb</span>. Mach exceptions, such as breakpoint traps, are not 60affected by this command. <code>sigs</code> is a shorthand alias for 61<code>signals</code>. 62 63 <br><dt><code>show signals</code><dt><code>show sigs</code><dd><a name="index-show-signals_0040r_007b_002c-Hurd-command_007d-1234"></a><a name="index-show-sigs_0040r_007b_002c-Hurd-command_007d-1235"></a>Show the current state of intercepting inferior's signals. 64 65 <br><dt><code>set signal-thread</code><dt><code>set sigthread</code><dd><a name="index-set-signal_002dthread-1236"></a><a name="index-set-sigthread-1237"></a>This command tells <span class="sc">gdb</span> which thread is the <code>libc</code> signal 66thread. That thread is run when a signal is delivered to a running 67process. <code>set sigthread</code> is the shorthand alias of <code>set 68signal-thread</code>. 69 70 <br><dt><code>show signal-thread</code><dt><code>show sigthread</code><dd><a name="index-show-signal_002dthread-1238"></a><a name="index-show-sigthread-1239"></a>These two commands show which thread will run when the inferior is 71delivered a signal. 72 73 <br><dt><code>set stopped</code><dd><a name="index-set-stopped_0040r_007b_002c-Hurd-command_007d-1240"></a>This commands tells <span class="sc">gdb</span> that the inferior process is stopped, 74as with the <code>SIGSTOP</code> signal. The stopped process can be 75continued by delivering a signal to it. 76 77 <br><dt><code>show stopped</code><dd><a name="index-show-stopped_0040r_007b_002c-Hurd-command_007d-1241"></a>This command shows whether <span class="sc">gdb</span> thinks the debuggee is 78stopped. 79 80 <br><dt><code>set exceptions</code><dd><a name="index-set-exceptions_0040r_007b_002c-Hurd-command_007d-1242"></a>Use this command to turn off trapping of exceptions in the inferior. 81When exception trapping is off, neither breakpoints nor 82single-stepping will work. To restore the default, set exception 83trapping on. 84 85 <br><dt><code>show exceptions</code><dd><a name="index-show-exceptions_0040r_007b_002c-Hurd-command_007d-1243"></a>Show the current state of trapping exceptions in the inferior. 86 87 <br><dt><code>set task pause</code><dd><a name="index-set-task_0040r_007b_002c-Hurd-commands_007d-1244"></a><a name="index-task-attributes-_0028_0040sc_007bgnu_007d-Hurd_0029-1245"></a><a name="index-pause-current-task-_0028_0040sc_007bgnu_007d-Hurd_0029-1246"></a>This command toggles task suspension when <span class="sc">gdb</span> has control. 88Setting it to on takes effect immediately, and the task is suspended 89whenever <span class="sc">gdb</span> gets control. Setting it to off will take 90effect the next time the inferior is continued. If this option is set 91to off, you can use <code>set thread default pause on</code> or <code>set 92thread pause on</code> (see below) to pause individual threads. 93 94 <br><dt><code>show task pause</code><dd><a name="index-show-task_0040r_007b_002c-Hurd-commands_007d-1247"></a>Show the current state of task suspension. 95 96 <br><dt><code>set task detach-suspend-count</code><dd><a name="index-task-suspend-count-1248"></a><a name="index-detach-from-task_002c-_0040sc_007bgnu_007d-Hurd-1249"></a>This command sets the suspend count the task will be left with when 97<span class="sc">gdb</span> detaches from it. 98 99 <br><dt><code>show task detach-suspend-count</code><dd>Show the suspend count the task will be left with when detaching. 100 101 <br><dt><code>set task exception-port</code><dt><code>set task excp</code><dd><a name="index-task-exception-port_002c-_0040sc_007bgnu_007d-Hurd-1250"></a>This command sets the task exception port to which <span class="sc">gdb</span> will 102forward exceptions. The argument should be the value of the <dfn>send 103rights</dfn> of the task. <code>set task excp</code> is a shorthand alias. 104 105 <br><dt><code>set noninvasive</code><dd><a name="index-noninvasive-task-options-1251"></a>This command switches <span class="sc">gdb</span> to a mode that is the least 106invasive as far as interfering with the inferior is concerned. This 107is the same as using <code>set task pause</code>, <code>set exceptions</code>, and 108<code>set signals</code> to values opposite to the defaults. 109 110 <br><dt><code>info send-rights</code><dt><code>info receive-rights</code><dt><code>info port-rights</code><dt><code>info port-sets</code><dt><code>info dead-names</code><dt><code>info ports</code><dt><code>info psets</code><dd><a name="index-send-rights_002c-_0040sc_007bgnu_007d-Hurd-1252"></a><a name="index-receive-rights_002c-_0040sc_007bgnu_007d-Hurd-1253"></a><a name="index-port-rights_002c-_0040sc_007bgnu_007d-Hurd-1254"></a><a name="index-port-sets_002c-_0040sc_007bgnu_007d-Hurd-1255"></a><a name="index-dead-names_002c-_0040sc_007bgnu_007d-Hurd-1256"></a>These commands display information about, respectively, send rights, 111receive rights, port rights, port sets, and dead names of a task. 112There are also shorthand aliases: <code>info ports</code> for <code>info 113port-rights</code> and <code>info psets</code> for <code>info port-sets</code>. 114 115 <br><dt><code>set thread pause</code><dd><a name="index-set-thread_0040r_007b_002c-Hurd-command_007d-1257"></a><a name="index-thread-properties_002c-_0040sc_007bgnu_007d-Hurd-1258"></a><a name="index-pause-current-thread-_0028_0040sc_007bgnu_007d-Hurd_0029-1259"></a>This command toggles current thread suspension when <span class="sc">gdb</span> has 116control. Setting it to on takes effect immediately, and the current 117thread is suspended whenever <span class="sc">gdb</span> gets control. Setting it to 118off will take effect the next time the inferior is continued. 119Normally, this command has no effect, since when <span class="sc">gdb</span> has 120control, the whole task is suspended. However, if you used <code>set 121task pause off</code> (see above), this command comes in handy to suspend 122only the current thread. 123 124 <br><dt><code>show thread pause</code><dd><a name="index-show-thread_0040r_007b_002c-Hurd-command_007d-1260"></a>This command shows the state of current thread suspension. 125 126 <br><dt><code>set thread run</code><dd>This command sets whether the current thread is allowed to run. 127 128 <br><dt><code>show thread run</code><dd>Show whether the current thread is allowed to run. 129 130 <br><dt><code>set thread detach-suspend-count</code><dd><a name="index-thread-suspend-count_002c-_0040sc_007bgnu_007d-Hurd-1261"></a><a name="index-detach-from-thread_002c-_0040sc_007bgnu_007d-Hurd-1262"></a>This command sets the suspend count <span class="sc">gdb</span> will leave on a 131thread when detaching. This number is relative to the suspend count 132found by <span class="sc">gdb</span> when it notices the thread; use <code>set thread 133takeover-suspend-count</code> to force it to an absolute value. 134 135 <br><dt><code>show thread detach-suspend-count</code><dd>Show the suspend count <span class="sc">gdb</span> will leave on the thread when 136detaching. 137 138 <br><dt><code>set thread exception-port</code><dt><code>set thread excp</code><dd>Set the thread exception port to which to forward exceptions. This 139overrides the port set by <code>set task exception-port</code> (see above). 140<code>set thread excp</code> is the shorthand alias. 141 142 <br><dt><code>set thread takeover-suspend-count</code><dd>Normally, <span class="sc">gdb</span>'s thread suspend counts are relative to the 143value <span class="sc">gdb</span> finds when it notices each thread. This command 144changes the suspend counts to be absolute instead. 145 146 <br><dt><code>set thread default</code><dt><code>show thread default</code><dd><a name="index-thread-default-settings_002c-_0040sc_007bgnu_007d-Hurd-1263"></a>Each of the above <code>set thread</code> commands has a <code>set thread 147default</code> counterpart (e.g., <code>set thread default pause</code>, <code>set 148thread default exception-port</code>, etc.). The <code>thread default</code> 149variety of commands sets the default thread properties for all 150threads; you can then change the properties of individual threads with 151the non-default commands. 152</dl> 153 154 </body></html> 155 156