Updated 2005/11/01

Sun[tm] Studio 11: dbx Readme


Contents

  1. Introduction
  2. About Sun Studio 11 dbx
  3. New and Changed Features
  4. Software Corrections
  5. Problems and Workarounds
  6. Limitations and Incompatibilities
  7. Documentation Errata

 


A. Introduction

This document describes the software corrections, known problems, limitations, and incompatibilities of this release.

Product Documentation

 


B. About Sun Studio 11 dbx

dbx is an interactive, source-level, command-line debugging tool. You can use it to run a program in a controlled manner and to inspect the state of a stopped program. dbx gives you complete control of the dynamic execution of a program, including the collection of performance data. This release of dbx is available on the following platforms:

 


C. New and Changed Features

This section describes the new and changed features for dbx.

The following features were added or changed in Sun Studio 11 dbx.

A few features of dbx are not available for programs compiled with the gcc or g++ compilers, or for programs running on Linux platforms. For more information, see Limitations and Incompatibilities.

 


D. Software Corrections

This section describes problems that were fixed in the Sun Studio 11 release of dbx.

No new information is available at this time.

 


E. Problems and Workarounds

This section discusses known software problems and possible workarounds for those problems.

  1. Data Collection Problems When dbx is Attached to a Process
  2. dbx does not check for an RUI coming from a copy constructor
  3. dbx might crash while debugging Java code
  4. dbx crashes on re-debugging of Java code
  5. dbx cannot debug 32-bit multithreaded applications on Linux platforms
  6. dbx throws an exception when debugging application on different J2SE than it was built on

  1. Data Collection Problems When dbx is Attached to a Process

    If you attach dbx to a running process without preloading the collector library, libcollector.so, a number of errors can occur.

    • You cannot collect any tracing data: synchronization wait tracing, heap tracing, or MPI tracing. Tracing data is collected by interposing on various libraries, and if libcollector.so is not preloaded, the interposition cannot be done.
    • If the program installs a signal handler after dbx is attached to the process, and the signal handler does not pass on the SIGPROF and SIGEMT signals, profiling data and sampling data is lost.
    • If the program uses the asynchronous I/O library, libaio.so, clock-based profiling data and sampling data is lost, because libaio.so uses SIGPROF for asynchronous cancel operations. (4397578)
    • If the program uses the hardware counter library, libcpc.so, hardware-counter overflow profiling experiments are corrupted because both the collector and the program are using the library. If the hardware counter library is loaded after dbx is attached to the process, the hardware-counter experiment can succeed provided references to the libcpclibrary functions are resolved by a general search rather than a search in libcpc.so.
    • If the program calls setitimer(2), clock-based profiling experiments can be corrupted because both the collector and the program are using the timer.

  2. dbx does not check for an RUI coming from a copy constructor
  3. Runtime checking can erroneously report RUI (read from uninitialized memory) for inlined C++ copy constructors.

  4. dbx might crash while debugging Java code (4893079)
  5. If you issue a cd command from within the dbx shell, or set the CLASSPATH environment variable or the CLASSPATHX environment variable, dbx might subsequently crash with a segmentation fault..

    Workarounds:

  6. dbx crashes on re-debugging of Java code (4801883)
  7. Issuing two debug commands in a row on Java code might cause dbx to crash.

  8. dbx cannot debug 32-bit multithreaded applications on Linux platforms
  9. dbx cannot debug 32-bit multithreaded applications on SuSE Linux Enterprise Server 9 and Sun[tm] Java Desktop System, Release 3.

  10. dbx throws an exception when debugging application on different J2SE than it was built on
  11. dbx throws an exception when you debug an application under a different release of the J2SE technology than the version of the J2SE technology under which you built the application.

Check the support page on the SDN Sun Studio portal, http://developers.sun.com/sunstudio/support/ for the latest information.

 


F. Limitations and Incompatibilities

This section discusses limitations and incompatibilities with systems or other software. For last-minute information, see the release notes for Solaris platforms at http://developers.sun.com/sunstudio/documentation/ss11/release_notes.html and the release notes for Linux platforms at http://developers.sun.com/tools/prodtech/documentation/ss11/Linux_release_notes.html

Sun Studio 11dbx has the following limitations:


G. Documentation Errata

There is no new information at this time. Additional information might be made available at http://developers.sun.com/sunstudio/

 


Copyright © 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.