73 Commits

Author SHA1 Message Date
joel
d41a372362 Sort textdump options list.
Submitted by:	bde
2012-11-01 17:17:05 +00:00
alfred
17ead000b5 Small textdump enhancements.
Allow textdumps to be called explicitly from DDB.

If "dump" is called in DDB and textdumps are enabled then abort the
dump and tell the user to turn off textdumps.

Add options TEXTDUMP_PREFERRED to turn textdumps on by default.
Add options TEXTDUMP_VERBOSE to be a bit more verbose while textdumping.

Reviewed by: rwatson

MFC after:	2 weeks
2012-11-01 04:07:08 +00:00
joel
b7c89a0edb Minor mdoc nit. 2012-05-12 19:53:44 +00:00
gjb
ed459e330b General mdoc(7) and typo fixes.
PR:		167776
Submitted by:	Nobuyuki Koganemaru (kogane!jp.freebsd.org)
MFC after:	3 days
2012-05-12 03:25:46 +00:00
kib
b646d3f699 Document 'findstack'.
MFC after:	1 week
2011-12-16 11:52:33 +00:00
attilio
96139278ce Disconnect sun4v architecture from the three.
Some files keep the SUN4V tags as a code reference, for the future,
if any rewamped sun4v support wants to be added again.

Reviewed by:	marius
Tested by:	sbruno
Approved by:	re
2011-05-14 01:53:38 +00:00
uqs
8ae3afcfad mdoc: drop redundant .Pp and .LP calls
They have no effect when coming in pairs, or before .Bl/.Bd
2010-10-08 12:40:16 +00:00
kib
4aee566266 Document "show cdev" command.
MFC after:	3 days
2010-09-05 14:52:27 +00:00
uqs
97297fefae mdoc: remove duplicate width argument 2010-05-27 13:56:47 +00:00
bz
6776200983 MFp4 @178364:
Implement an optional delay to the ddb reset/reboot command.

This allows textdumps to be run automatically with unattended reboots
after a resonable timeout, while still permitting an administrator to
break into debugger if attached to the console at the time of the
event for further debugging.  Cap the maximum delay at 1 week to avoid
highly accidental results, and default to 15s in case of problems
parsing the timeout value.

Move hex2dec helper function from db_thread.c to db_command.c to make
it generally available and prefix it with a "db_" to avoid namespace
collisions.

Reviewed by:	rwatson
MFC after:	4 weeks
2010-05-24 16:41:05 +00:00
uqs
8f141f1a13 Fix several typos in macros or macro misusage.
Found by:	make manlint
Reviewed by:	ru
Approved by:	philip (mentor)
2010-03-12 10:01:06 +00:00
jhb
3e082b224e - Drop a reference to an older 'kdb' debugger that FreeBSD never had.
- Tweak a word choice.
- Drop a reference to Alpha.
2008-12-12 05:42:57 +00:00
bz
d2730d5b27 MFp4:
Bring in updated jail support from bz_jail branch.

This enhances the current jail implementation to permit multiple
addresses per jail. In addtion to IPv4, IPv6 is supported as well.
Due to updated checks it is even possible to have jails without
an IP address at all, which basically gives one a chroot with
restricted process view, no networking,..

SCTP support was updated and supports IPv6 in jails as well.

Cpuset support permits jails to be bound to specific processor
sets after creation.

Jails can have an unrestricted (no duplicate protection, etc.) name
in addition to the hostname. The jail name cannot be changed from
within a jail and is considered to be used for management purposes
or as audit-token in the future.

DDB 'show jails' command was added to aid debugging.

Proper compat support permits 32bit jail binaries to be used on 64bit
systems to manage jails. Also backward compatibility was preserved where
possible: for jail v1 syscalls, as well as with user space management
utilities.

Both jail as well as prison version were updated for the new features.
A gap was intentionally left as the intermediate versions had been
used by various patches floating around the last years.

Bump __FreeBSD_version for the afore mentioned and in kernel changes.

Special thanks to:
- Pawel Jakub Dawidek (pjd) for his multi-IPv4 patches
  and Olivier Houchard (cognet) for initial single-IPv6 patches.
- Jeff Roberson (jeff) and Randall Stewart (rrs) for their
  help, ideas and review on cpuset and SCTP support.
- Robert Watson (rwatson) for lots and lots of help, discussions,
  suggestions and review of most of the patch at various stages.
- John Baldwin (jhb) for his help.
- Simon L. Nielsen (simon) as early adopter testing changes
  on cluster machines as well as all the testers and people
  who provided feedback the last months on freebsd-jail and
  other channels.
- My employer, CK Software GmbH, for the support so I could work on this.

Reviewed by:	(see above)
MFC after:	3 months (this is just so that I get the mail)
X-MFC Before:   7.2-RELEASE if possible
2008-11-29 14:32:14 +00:00
ed
1a26719e3c Increase the date in the manual page, which should have been done in r183922.
In r183922 I introduced a new DDB command, documented it, but forgot to
bump the date in the manual page.

Pointed out by:	bz
2008-10-18 06:23:08 +00:00
ed
48c0c8f51a Import some improvements to the TTY code from the MPSAFE TTY branch.
- Change the ddb(4) commands to be more useful (by thompsa@):
  - `show ttys' is now called `show all ttys'. This command will now
    also display the address where the TTY data structure resides.
  - Add `show tty <addr>', which dumps the TTY in a readable form.

- Place an upper bound on the TTY buffer sizes. Some drivers do not want
  to care about baud rates. Protect these drivers by preventing the TTY
  buffers from getting enormous. Right now we'll just clamp it to 64K,
  which is pretty high, taking into account that these buffers are only
  used by the built-in discipline.

- Only call ttydev_leave() when needed. Back in April/May the TTY
  reference counting mechanism was a little different, which required us
  to call ttydev_leave() each time we finished a cdev operation.
  Nowadays we only need to call ttydev_leave() when we really mark it as
  being closed.

- Improve return codes of read() and write() on TTY device nodes.

- Make sure we really wake up all blocked threads when the driver calls
  tty_rel_gone(). There were some possible code paths where we didn't
  properly wake up any readers/writers.

- Add extra assertions to prevent sleeping on a TTY that has been
  abandoned by the driver.

- Use ttydev_cdevsw as a more reliable method to figure out whether a
  device node is a real TTY device node.

Obtained from:	//depot/projects/mpsafetty/...
Reviewed by:	thompsa
2008-10-15 16:58:35 +00:00
simon
8f7c21ba0a - Document that 'show alllocks' and 'show locks' are only available
with witness.
- Remove references to non-existing witness(9) and replace with
  witness(4) where appropriate.
- Bump document date.

MFC after:	3 days
2008-10-04 14:12:09 +00:00
kib
0488506405 Add the ffs structures introspection functions for ddb.
Show the b_dep value for the buffer in the show buffer command.
Add a comand to dump the dirty/clean buffer list for vnode.

Reviewed by:	tegge
Tested and used by:   pho
MFC after:   1 month
2008-09-16 11:19:38 +00:00
ed
cc3116a938 Integrate the new MPSAFE TTY layer to the FreeBSD operating system.
The last half year I've been working on a replacement TTY layer for the
FreeBSD kernel. The new TTY layer was designed to improve the following:

- Improved driver model:

  The old TTY layer has a driver model that is not abstract enough to
  make it friendly to use. A good example is the output path, where the
  device drivers directly access the output buffers. This means that an
  in-kernel PPP implementation must always convert network buffers into
  TTY buffers.

  If a PPP implementation would be built on top of the new TTY layer
  (still needs a hooks layer, though), it would allow the PPP
  implementation to directly hand the data to the TTY driver.

- Improved hotplugging:

  With the old TTY layer, it isn't entirely safe to destroy TTY's from
  the system. This implementation has a two-step destructing design,
  where the driver first abandons the TTY. After all threads have left
  the TTY, the TTY layer calls a routine in the driver, which can be
  used to free resources (unit numbers, etc).

  The pts(4) driver also implements this feature, which means
  posix_openpt() will now return PTY's that are created on the fly.

- Improved performance:

  One of the major improvements is the per-TTY mutex, which is expected
  to improve scalability when compared to the old Giant locking.
  Another change is the unbuffered copying to userspace, which is both
  used on TTY device nodes and PTY masters.

Upgrading should be quite straightforward. Unlike previous versions,
existing kernel configuration files do not need to be changed, except
when they reference device drivers that are listed in UPDATING.

Obtained from:		//depot/projects/mpsafetty/...
Approved by:		philip (ex-mentor)
Discussed:		on the lists, at BSDCan, at the DevSummit
Sponsored by:		Snow B.V., the Netherlands
dcons(4) fixed by:	kan
2008-08-20 08:31:58 +00:00
rwatson
8517be7c44 DDB scripting, textdumps, output capture, etc, all will appear in
FreeBSD 7.1 before 8.0 ships.

Spotted by:	Ulrich Spoerlein <uspoerlein at gmail dot com>
MFC after:	3 days
2008-08-03 14:14:43 +00:00
maxim
06823fc47f o Document "show conifhk", wording from r180610 commit log.
Reviewed by:	rwatson
2008-07-21 10:03:02 +00:00
bz
f93b85c0df Add a `show cpusets' DDB command to print numbered root and
assigned CPU affinity sets.

Reviewed by:	brooks
2008-07-07 21:32:02 +00:00
wkoszek
7c70b8f716 Change header file references from <filename>.h to
path relative to /usr/include. It looks much better anyway.

Instead of referencing "socket", which is bogus, reference
'sys/socket.h', which is what should be placed here from
the beggining.

Suggested by:	maxim
2008-06-08 21:08:20 +00:00
wkoszek
ce8c3c4d72 Fix the way the date must be specified (leading 0 is redundant).
Fix several spelling mistakes brought by my earlier commit.
Trim whitespace.

Submitted by:	maxim
2008-06-08 21:01:39 +00:00
wkoszek
9a2745314d Bring more commands to the ddb(4) manual page. This should be considered
"complete" list, but some commands might be still missing.

Reviewed by:	julian
2008-06-08 09:09:08 +00:00
pjd
74319df743 Document 'show mount' command. 2008-04-28 14:11:23 +00:00
pjd
0d0a424992 Correct an obvious typo. 2008-04-12 05:49:05 +00:00
rwatson
7063535f73 Update ddb.4 to reflect addition of /S (symbol name) printing mode for
examine.

MFC after:	3 days
PR:		57976
2008-03-07 18:14:29 +00:00
rwatson
ce2b35c358 Minor formatting tweaks; recommend "call doadump; reset" over "panic"
from a script as the DDB panic command is unreliable.

MFC after:	3 months
2007-12-26 12:18:21 +00:00
rwatson
be34549aa9 Add textdump(4) man page to describe the textdump facility and provide
some stock formulas for use.

Update ddb(4) to reference the textdump(4) page, list the textdump
commands, and suggest using them with scripts and output capture.
Update HISTORY section.

Hook up textdump(4) to build.

MFC after:	3 months
2007-12-26 11:35:07 +00:00
rwatson
7dfa1b8f6b Add SCRIPTING section to describe new DDB scripting facilities.
Update copyright.
2007-12-26 09:51:37 +00:00
rwatson
d70c7cc6e1 Add description of 'debug.ddb.capture.data' sysctl to DBD output
capture section, missed in previous commit.

MFC after:	3 months
2007-12-26 09:45:34 +00:00
rwatson
b3fd399401 Document DDB capture facility.
MFC after:	3 months
2007-12-25 23:25:04 +00:00
njl
6fbfdc2928 Add "show sysregs" command to ddb. On i386, this gives gdt, idt, ldt,
cr0-4, etc.  Support should be added for other platforms that have a
different set of registers for system use.

Loosely based on: OpenBSD
Approved by:	re
2007-08-09 20:14:35 +00:00
ru
699de7a9c5 The first (optional) argument of the "trace" command is either the
process or thread ID.

PR:		docs/61859
2006-10-30 12:55:06 +00:00
ru
5f7f332cd3 Fix the prompt string. 2006-10-11 07:07:31 +00:00
bde
98af27d199 Document the `kill' command.
Submitted by:	Allan Fields <bsd@afields.ca>
PR:		82779
2006-10-10 23:09:10 +00:00
bde
f2196eb28d Sort some of the most inconsistently ordered descriptions of commands
(the group of watchpoint commands, and the `reset' command).

NetBSD has sorted everything alphabetically, but I think we would have
too many commands for that if all commands were actually documented
here, so this commit moves towards alphabetical order in several sections:
- section for pure ddb (non-"show") commands.  Now contains the watchpoint
  commands and is mostly in "logical" order.
- section for pure ddb "show" commands
- similarly for auxilary commands.  Most of these are currently missing
  here.
2006-10-10 11:07:37 +00:00
ru
03ea52e1da Fix markup. 2006-10-09 15:21:50 +00:00
bde
376860d8b7 Document new aliases b', t' and `registers'. Document old aliases
`bt', `c', `d', `p', `s', `w' and `where'.
2006-10-09 02:27:55 +00:00
ru
b5bc2576e3 Format the list of commands so that the output looks nicer,
by putting command aliases on the adjacent lines.

Prodded by:	bde
2006-10-03 21:06:19 +00:00
ru
5b7cf06c1d Markup fixes. 2006-09-18 15:24:20 +00:00
pjd
556424a17a Add 'show geom [addr]' ddb(4) command, which prints entire GEOM topology if
no additional argument is given or details about the given GEOM object
(class, geom, provider or consumer).

Approved by:	phk
2006-09-15 16:36:45 +00:00
pjd
80fe7ed76d Document 'show vnode'.
Reminded by:	ru
2006-09-05 12:17:53 +00:00
wilko
f18a315fe9 Remove reference to the Alpha architecture. 2006-05-15 20:51:53 +00:00
brueffer
cf459941f1 DDB depends on KDB for some time now.
Submitted by:	Kent Stewart <kstewart@owt.com>
MFC after:	3 days
2006-02-27 21:56:24 +00:00
ru
6b6b8c04f6 Expand contractions. 2005-02-13 23:45:54 +00:00
ru
1541af42f1 Expand *n't contractions. 2005-02-13 22:25:33 +00:00
simon
cf8726aa55 DDB_UNATTENDED is now called KDB_UNATTENDED.
MFC after:	3 days
2004-12-05 12:48:07 +00:00
ru
aa52a5a900 Assorted markup, spelling, and grammar fixes. 2004-06-16 08:33:57 +00:00
hmp
d1ef13f164 Mdoc Janitor:
* cleanup hard sentence breaks.

	* sprinle some .Dq macros.
2003-11-12 02:35:20 +00:00