Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
DCONSCHAT(8)            FreeBSD System Manager's Manual           DCONSCHAT(8)

     dconschat -- user interface to dcons

     dconschat [-brvwRT1] [-h hz] [-C console_port] [-G gdb_port] [-M core]
               [-N system]
     dconschat [-brvwR1] [-h hz] [-C console_port] [-G gdb_port] [-a address]
               [-u bus_num] -t target_eui64

     The dconschat utility is designed to provide a way for users to access
     dcons(4) (dumb console device) on a local or remote system.  The
     dconschat interacts with dcons(4) using kvm(3) or firewire(4) and inter-
     act with a user over tty or TCP/IP.  To access remote dcons(4) using
     firewire(4), you have to specify target EUI64 address by -t option.

     The dconschat and dcons(4) communicate using 2 port, one for console port
     and the other for remote gdb port.  Users are supposed to access
     dconschat using tty, telnet and gdb.  You can specify listen ports for
     console and gdb port by -C and -G options respectively. The port number 0
     has special meaning that current tty(stdin/out) is used instead of
     TCP/IP.  A negative port number will disable the port.  To quit dcon-
     schat, send a CR + '~' + '.' sequence to the console port or send signal
     to the process.

     By analogy with pty(4) device, the dcons(4) acts as a slave device and
     dconschat acts as a master device with telnetd(8).

     -b      Translate Ctrl-C to ALT_BREAK(CR + '~' + Ctrl-B) on gdb port.

     -r      Replay old buffer on connection.

     -v      Verbose debug output. Multiple '-v' increase verbosity.

     -w      Listen on wildcard address rather than localhost.

     -R      Read-only. Don't write anything on dcons buffer.

     -T      Enable ad hoc workaround for telnet protocol to remove unneces-
             sary byte sequences.  It should be set when you access dconschat
             using telnet.

     -1      One-Shot. Read available buffer then exit. This implies -r

     -h hz   Specify polling rate. The default value is 100.

     -C console_port
             Specify console port. The default value is 0(stdin/stdout).

     -G gdb_port
             Specify gdb port.. The default value is -1(disabled).

     -M core
             Specify core file.

     -N system
             Specify system file such as /boot/kernel/kernel.

     -t target_eui64
             Specify the 64bit extended unique identifier of the target and
             use FireWire to access remote dcons(4).

     -a address
             Specify the physical/IO address of the dcons buffer. See dcons(4)
             for details.  If this option is not specified, dconschat tries to
             get the address from the Configuration ROM on the target.  You
             are supposed to enable dcons_crom(4) on the target to omit this

     -u bus_num
             Specify FireWire bus number. The default is 0.

     To use dconschat with FireWire for remote dcons, you have to specify the
     eui64 of the target.  You can obtain EUI64 by running fwcontorl(4) with-
     out options.  The first EUI64 is of the host running fwcontrol and others
     on the bus follow.

           # fwcontrol
           2 devices (info_len=2)
           node        EUI64        status
              1  0x7766554433221100      0
              0  0x0011223344556677      1

     The EUI64 doesn't change unless you change the hardware as the ethernet

     Now we can run the dconschat.

           # dconschat -br -G 12345 -t 0x00112233445566677

     You'll get console output of the target and login prompt if a getty is
     running on dcons. You can break to DDB with ALT_BREAK (CR + '~' + Ctrl-B)
     if DDB and ALT_BREAK_TO_DEBUGGER is enabled in the target kernel.  To
     quit the session, type CR + '~' + '.' in the console port.

     Using gdb port is almost the same as remote gdb over serial line except
     using TCP/IP instead of /dev/cu*. See "On-line Kernel Debugging Using
     Remote GDB" section of The FreeBSD Developers Handbook.

           % gdb -k kernel.debug
           (kgdb) target remote :12345

     Once gdb is attached and you specified '-b' option to dconschat, typing
     "Ctrl-C" on gdb causes break to debugger.

     The following command get console log from crash dump:

           # dconschat -1 -M vmcore.0 -N kernel.0

     If you want access to the console using telnet, try the following:

           # dconschat -rTC 5555 &
           # telnet localhost 5555

     You may want to keep logging console output of several machines. Con-
     serve-com in the ports collection should help you. Insert the following
     lines in the

           console local {
                   master localhost;
                   type exec;
                   exec /usr/sbin/dconschat -rh 25;
           console remote {
                   master localhost;
                   type exec;
                   exec /usr/sbin/dconschat -rh 25 -t 0x0011223344556677;




     gdb(1), telnet(1), kvm(3), dcons(4), dcons_crom(4), ddb(4), firewire(4),
     fwohci(4), fwcontrol(8)

     Hidetoshi Shimokawa <>

     This utility is still under development.

FreeBSD 4.10                   February 11, 2003                  FreeBSD 4.10


Want to link to this manual page? Use this URL:

home | help