1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-13 10:02:38 +00:00
Mirror of the FreeBSD src repository https://git.FreeBSD.org/src.git .
Go to file
Bruce Evans ff557fa1a9 Break the following implementation of panic(3):
#!bin/sh

	# Original version of this by Michael Reifenberger
	# <root@nihil.plaut.de>.

	mdconfig -d -u 11 >/dev/null 2>&1
	dd if=/dev/zero of=zz bs=1m count=1

	while :
	do
		mdconfig -a -t vnode -f zz -u 11
		fdisk -f - -iv /dev/md11 <<EOF1
		g c1 h64 s32
		p 1 165 0 2048
		a 1
	EOF1
		mdconfig -d -u 11
	done

Garbage pointers in __si_u were not cleared by destroy_dev().  Not
clearing si_disk made the above fatal because the disk layer uses
si_disk as a flag to indicate that the dev_t has been completely
initialized.  disk_destroy() clears si_disk for the parent dev_t
but doesn't get called for children.

Not fixed:
- setting the undocumented sysctl debug.free_devt should cause more
  complete destruction of the dev_t including clearing of __si_u, but
  actually causes the above to panic a little earlier.
- the loop leaks 10 memory allocations per iteration (4 DEVFS, 2 devbuf
  and 4 dev_t).

Reviewed by:	timeout by MAINTAINER after 3 months
2002-04-25 13:17:33 +00:00
bin Provide an environment variabloe, EXPR_COMPAT, which disables option 2002-04-22 21:23:09 +00:00
contrib resolve conflicts from import 2002-04-25 03:36:26 +00:00
crypto Change default challenge/response behavior of sshd by popular demand. 2002-04-25 05:59:53 +00:00
etc Change the name of the 'bin' distribution to 'base'. 2002-04-23 22:16:41 +00:00
games Add some of uncontroversial fortunes from my files. 2002-04-25 03:20:27 +00:00
gnu When a compound section name is specified, search for pages that actually 2002-04-24 20:07:06 +00:00
include Constify _malloc_options. 2002-04-24 16:49:36 +00:00
kerberos5 Replaced hacks in previous revision with the "standard" way of 2002-04-25 10:23:10 +00:00
kerberosIV Install script via SCRIPTS. 2001-12-17 16:52:32 +00:00
lib Constify _malloc_options. 2002-04-24 16:49:36 +00:00
libexec Usage style sweep: spell "usage" with a small 'u'. 2002-04-22 13:44:47 +00:00
release New release notes: se driver, ofw driver, ispppcontrol(8) removed, 2002-04-25 04:03:01 +00:00
sbin Remove the -v option, it is now default behaviour. 2002-04-24 12:27:03 +00:00
secure The library itself does not depend on Kerberos bits. 2002-04-23 11:33:29 +00:00
share GC bsd.docb.mk. It has never apparently been used. 2002-04-24 13:48:45 +00:00
sys Break the following implementation of panic(3): 2002-04-25 13:17:33 +00:00
tools Update the test-case reference vectors to match the new XML format. 2002-04-24 21:03:26 +00:00
usr.bin Handle numbers larger than QUAD_MAX for unsigned conversions correctly. 2002-04-25 01:10:11 +00:00
usr.sbin Include <netinet/in.h> to squash one more compile-time warning. 2002-04-25 07:41:49 +00:00
COPYRIGHT
MAINTAINERS Drop myself from an entry I was unexpectedly included in. 2002-04-24 17:34:48 +00:00
Makefile Merge bsd.obj.mk's version of the _SUBDIR target with bsd.subdir.mk. 2002-04-23 09:03:56 +00:00
Makefile.inc1 Despite the fact that it is documented in the handbook, the release notes, 2002-04-20 19:04:59 +00:00
Makefile.upgrade Removed "env" commands. "sh" is a real shell, so 2002-03-19 05:58:36 +00:00
README Spell "FreeBSD" correctly. 2002-03-26 12:35:49 +00:00
UPDATING Warnings about single user and kldxref 2002-04-25 02:14:48 +00:00

This is the top level of the FreeBSD source directory.  This file
was last revised on:
$FreeBSD$

For copyright information, please see the file COPYRIGHT in this
directory (additional copyright information also exists for some
sources in this tree - please see the specific source directories for
more information).

The Makefile in this directory supports a number of targets for
building components (or all) of the FreeBSD source tree, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel, the kernel-modules and the contents of /etc.  The
``buildkernel'' and ``installkernel'' targets build and install
the kernel and the modules (see below).  Please see the top of
the Makefile in this directory for more information on the
standard build targets and compile-time flags.

Building a kernel is a somewhat more involved process, documentation
for which can be found at:
   http://www.FreeBSD.org/handbook/kernelconfig.html
And in the config(8) man page.
Note: If you want to build and install the kernel with the
``buildkernel'' and ``installkernel'' targets, you might need to build
world before.  More information is available in the handbook.

The sample kernel configuration files reside in the sys/<arch>/conf
sub-directory (assuming that you've installed the kernel sources), the
file named GENERIC being the one used to build your initial installation
kernel.  The file NOTES contains entries and documentation for all possible
devices, not just those commonly used.  It is the successor of the ancient
LINT file, but in contrast to LINT, it is not buildable as a kernel but a
pure reference and documentation file.


Source Roadmap:
---------------
bin		System/user commands.

contrib		Packages contributed by 3rd parties.

crypto		Cryptography stuff (see crypto/README).

etc		Template files for /etc.

games		Amusements.

gnu		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* for more information.

include		System include files.

kerberos5	Kerberos5 (Heimdal) package.

kerberosIV	KerberosIV (eBones) package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

sbin		System commands.

secure		Cryptographic libraries and commands.

share		Shared resources.

sys		Kernel sources.

tools		Utilities for regression testing and miscellaneous tasks.

usr.bin		User commands.

usr.sbin	System administration commands.


For information on synchronizing your source tree with one or more of
the FreeBSD Project's development branches, please see:

  http://www.FreeBSD.org/handbook/synching.html