freebsd-skq/sys
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
..
alpha Don't use the symbol name to lookup the symbol value when we can use 2002-04-25 01:22:16 +00:00
amd64 Don't use the symbol name to lookup the symbol value when we can use 2002-04-25 01:22:16 +00:00
arm Guard against redefining __gnuc_va_list. 2002-03-24 11:25:46 +00:00
boot Split file system setup code out into a function called mount. 2002-04-24 05:54:10 +00:00
cam Make Veritas Storage Appliance a HILUNS device. 2002-04-24 00:00:55 +00:00
coda Don't put a line break in string literals. GCC 3.1 complains and GCC 2002-04-20 01:42:56 +00:00
compat Add an XXX: linux_uselib() should be using vn_open() rather than invoking 2002-04-20 14:43:34 +00:00
conf aic7xxx_freebsd.c -> aic7xxx_osm.c 2002-04-24 16:59:47 +00:00
contrib bring in changes from 3.4.26. 2002-04-25 03:31:39 +00:00
crypto Remove macros that are defined elsewhere. 2002-04-21 10:32:48 +00:00
ddb Commented out locking that would be used in the ps command if locks were 2002-04-11 21:01:34 +00:00
dev Add a power exceeded debug message. 2002-04-25 12:58:30 +00:00
fs Track nfs's getpages() changes: 2002-04-23 14:30:43 +00:00
geom Improve the cross-references in the XML output. 2002-04-24 21:02:28 +00:00
gnu Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
i4b On slow machines interrupts could be lost, so check for pending 2002-04-23 10:25:35 +00:00
i386 Don't use the symbol name to lookup the symbol value when we can use 2002-04-25 01:22:16 +00:00
ia64 Don't use the symbol name to lookup the symbol value when we can use 2002-04-25 01:22:16 +00:00
isa GC various bits and pieces of USERCONFIG from all over the place. 2002-04-09 11:18:46 +00:00
isofs/cd9660 Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
kern Break the following implementation of panic(3): 2002-04-25 13:17:33 +00:00
libkern Remove bogus include of <machine/ansi.h>. 2002-04-11 06:53:40 +00:00
modules Move tx(4) driver to sys/dev/tx. BTW split hardware structures and constants 2002-04-19 22:43:57 +00:00
net just merged cosmetic changes from KAME to ease sync between KAME and FreeBSD. 2002-04-19 04:46:24 +00:00
netatalk Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
netatm - Tweak wording of panic message to make more sense. 2002-04-24 22:32:48 +00:00
netgraph Use 'struct callout' instead of 'struct callout_handle' to avoid 2002-04-14 17:37:35 +00:00
netinet Rearrange <netinet/in.h> so that it is easier to conditionalize 2002-04-24 01:26:11 +00:00
netinet6 Correct timer management (deprecated) in nd6_timer. 2002-04-24 19:09:48 +00:00
netipx Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
netkey just merged cosmetic changes from KAME to ease sync between KAME and FreeBSD. 2002-04-19 04:46:24 +00:00
netnatm Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
netncp Add character translation table between Unix and NetWare according 2002-04-20 05:35:02 +00:00
netns Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
netsmb Initialize thread select queue in the same way as rev 1.93 of sys_generic.c 2002-04-23 13:29:23 +00:00
nfs Remove unused include. 2002-03-20 10:12:07 +00:00
nfsclient The recent NFS forced unmount improvements introduced a side-effect 2002-04-17 01:07:29 +00:00
nfsserver Limit to the maximum allowed reply size the amount of data that 2002-04-21 16:14:54 +00:00
pc98 Rework the kernel environment subsystem. We now convert the static 2002-04-17 13:06:36 +00:00
pccard Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
pci Move tx(4) driver to sys/dev/tx. BTW split hardware structures and constants 2002-04-19 22:43:57 +00:00
posix4 Remove __P. 2002-03-19 22:20:14 +00:00
powerpc Don't use the symbol name to lookup the symbol value when we can use 2002-04-25 01:22:16 +00:00
rpc
security/lomac Use the proc lock to protect p_ucred while we read a few items from it. 2002-04-11 21:17:45 +00:00
sparc64 Don't use the symbol name to lookup the symbol value when we can use 2002-04-25 01:22:16 +00:00
svr4
sys Don't use the symbol name to lookup the symbol value when we can use 2002-04-25 01:22:16 +00:00
tools constify 2002-04-01 19:22:04 +00:00
ufs Remove support for using soon to be retired "special" poll(2) ops. 2002-04-18 14:52:28 +00:00
vm - Fix a round down bogon in uma_zone_set_max(). 2002-04-25 06:24:40 +00:00
Makefile