OpenBSD Problem Reports


Released versions problem reports

Before reporting bugs/problems with released versions, go through this checklist:

  1. First, check for patches and notes regarding the release.
  2. Next, find out if there is a newer release available.
  3. Finally, check for changes made between OpenBSD versions.

If nothing looks like it addresses your problem, then please become acquainted with sendbug(1) before submitting a bug report.

Current version problem reports

If your problem is with the -current source tree rather than -release or -stable,

  1. Test the problem at least twice, with source updated a few days apart.
  2. Do not report source tree compilation problems, unless they persist. They are almost always your mistake, or they are being worked on as you encounter them. People working on the project are doing make build at least once per day, and usually several times per day with different architectures.
  3. Remember that the AnonCVS servers are updated a few hours behind the actual working source tree.
  4. Check for changes made between OpenBSD versions to see if the problem has been addressed.
  5. Much care is made in creating snapshots. Sometimes mistakes are made, and our apologies are extended. Reading or writing to the mailing lists is more appropriate than sending in a bug report.

How to create a problem report

Always provide as much information as possible. Try to pinpoint the exact problem. Give clear instructions on how to reproduce the problem. Try to describe it with as much accuracy and non-confusing terminology as possible, especially if it is not easy to reproduce. Describing problems by saying "it crashes" or "I get strange interrupt issues on this one box that I built" is not helpful. Communicate with others (on the mailing lists or any other forum where knowledgeable users congregate) to confirm that the problem is new and preferably repeatable. Please try to make sure it is not a local problem created by using broken or unsupported hardware, or by using unsupported build options or software.

Please don't start fixing problems that require significant work until you are sure you understand them, especially during our release periods when we must not change major sections of code. If you are going to write significant amounts of code, mention it on the mailing lists to make sure no one else is already working on the problem (saving duplication of effort).

The following items should be contained in every bug report:

  1. The exact sequence of steps from startup necessary to reproduce the problem. This should be self-contained; it is not enough to send in a bare command without the arguments and other data you supplied to it. If a bug requires a particular sequence of events, please list those. You are encouraged to minimize the size of your example, but this is not absolutely necessary. If the bug is reproducible, we'll find it either way.

  2. The output you got. Please do not just say that it "didn't work" or "failed." If there is an error message, show it, even if you don't understand it. If OpenBSD panics with a particular error, say which. If nothing at all happens, say so. Even if the result of your test case is a program crash or otherwise obvious, it might not happen in our testing. The easiest thing is to copy the output from the terminal, if possible.

    Note: In case of fatal errors, the error message provided might not contain all the information available. In that case, also look at the output in the system log files, such as those stored in /var/log. Also, if you are dealing with an application that has its own log files, such as httpd, check for errors where it keeps its logs.

  3. The OpenBSD kernel output. You can get this with the dmesg command, but it is possible that your dmesg output does not contain all the information that is captured in /var/run/dmesg.boot. If this is the case, include information from both. Please include this in all bug reports.

  4. If you run third party software which has to do with your bug, say so, including what version. If you are talking about a snapshot, mention that, including its date and time.

  5. A traceback from your kernel panic. If your kernel panicked and you are at a ddb(4) prompt, please provide the panic message, as well as the output of the trace and ps commands in your bug report as advised. If the machine hangs, try enabling sysctl ddb.console=1 prior to the hang and getting in DDB via Ctl+Alt+Esc on the keyboard (must be outside of X), or sending BREAK if using a serial console. If, for some reason, the panic message is not visible, you can get it again with the show panic command. This is essential whenever possible. Panic reports without the panic message, traceback and ps output are useless. The output of show registers might be of interest as well. You might then want to reboot with boot dump so that a kernel image could be saved by savecore(8) for further post-mortem debugging, as described in the crash(8) man page.

  6. If you're reporting a problem with the X Window System on an architecture that uses the X.Org server, please include the full /var/log/Xorg.0.log file in your report in addition to the dmesg.boot information.

Do not be afraid if your bug report becomes rather lengthy. That is a fact of life. It's better to report everything the first time than us having to squeeze the facts out of you. On the other hand, if your input files are huge, it is fair to ask first whether somebody is interested in looking into it.

Sending in bug reports

If possible, use the sendbug(1) command to help generate your bug report. It will automatically include some useful information about your hardware that helps diagnose many issues. This tool requires that your system can properly send email. If you cannot use sendbug on a functional OpenBSD machine, please send your bug report to bugs@openbsd.org.

Perhaps what you are sending in is a feature request, not necessarily a bug. New features are accepted, especially with code that implements your suggested new feature.

For debugging some problems, we must have the hardware that has the problem. Please remember that the OpenBSD project's resources are limited. You could donate some hardware.