What is the -stable branch?
The -stable branch is one of OpenBSD's three
It consists of the release and errata patches.
This page describes how to follow the -stable branch via CVS and building
If you're running the -release branch on amd64, i386, or arm64, you can also
use the syspatch(8) utility to
upgrade any files in need of security or reliability fixes with binary updates.
More information can be found here.
- Errata entries are made for bugs which affect many people.
- Other patches may be merged into -stable if they affect a few
people in drastic ways.
- New or changed functionality, hardware support or APIs will not be
Getting -stable source code
To obtain the -stable tree for a particular release of OpenBSD, you can
update on top of a pre-existing source tree
or you can check out a fresh source tree from
an AnonCVS server.
Do not attempt to go from one release to another via source.
Instead, please follow the upgrade guide for
the release before compiling -stable.
Building OpenBSD -stable
Details on building OpenBSD from source are provided in steps 2 and 3 of the
There is also an FAQ on building the system.
If you have a number of machines to keep on the -stable branch, you may
wish to make a release.
Rebuild the kernel and reboot
Replace GENERIC with GENERIC.MP for multiprocessor systems.
If your system has trouble booting the new kernel, you can easily go back
and reboot from the old kernel, now called obsd.
# cd /sys/arch/$(machine)/compile/GENERIC
# make obj
# make config
# make && make install
Rebuilding the userland
# rm -rf /usr/obj/*
# cd /usr/src
# make obj && make build