freebsd-skq/sys/dev
phk ef82a51634 Here follows the new kernel dumping infrastructure.
Caveats:

The new savecore program is not complete in the sense that it emulates
enough of the old savecores features to do the job, but implements none
of the options yet.

I would appreciate if a userland hacker could help me out getting savecore
to do what we want it to do from a users point of view, compression,
email-notification, space reservation etc etc.  (send me email if
you are interested).

Currently, savecore will scan all devices marked as "swap" or "dump" in
/etc/fstab _or_ any devices specified on the command-line.

All architectures but i386 lack an implementation of dumpsys(), but
looking at the i386 version it should be trivial for anybody familiar
with the platform(s) to provide this function.

Documentation is quite sparse at this time, more to come.

Details:

ATA and SCSI drivers should work as the dump formatting code has been
removed.  The IDA, TWE and AAC have not yet been converted.

Dumpon now opens the device and uses ioctl(DIOCGKERNELDUMP) to set
the device as dumpdev.  To implement the "off" argument, /dev/null
is used as the device.

Savecore will fail if handed any options since they are not (yet)
implemented.  All devices marked "dump" or "swap" in /etc/fstab
will be scanned and dumps found will be saved to diskfiles
named from the MD5 hash of the header record.  The header record
is dumped in readable format in the .info file.  The kernel
is not saved.  Only complete dumps will be saved.

All maintainer rights for this code are disclaimed: feel free to
improve and extend.

Sponsored by:   DARPA, NAI Labs
2002-03-31 22:37:00 +00:00
..
aac The AAC, TWE and IDA diskdrivers cannot dump until I and msmith 2002-03-31 22:29:52 +00:00
acpica Hide the ACPI counter probing printf behind bootverbose. 2002-03-24 11:33:52 +00:00
advansys Restore I/O port resources to the condition before adv_isa_probe() is 2001-05-06 09:28:18 +00:00
agp Correctly identify the Intel 82830 AGP bridge. 2002-02-05 23:13:25 +00:00
aha Turn on interrupt-entropy harvesting for all/any mass storage devices 2001-03-01 17:09:09 +00:00
ahb Turn on interrupt-entropy harvesting for all/any mass storage devices 2001-03-01 17:09:09 +00:00
aic Remove __P. 2002-03-20 02:08:01 +00:00
aic7xxx Remove __P. 2002-03-20 08:56:31 +00:00
amd Move unused functions into #if 0 ... #endif. 2001-05-06 08:07:10 +00:00
amr Fixed printf format errors in previous commit. %llu is no more suitable 2002-03-18 23:24:00 +00:00
an Remove __P. 2002-03-20 02:08:01 +00:00
ar Move the isa parts to a separate file. 2001-04-16 13:20:39 +00:00
asr Remove __P. 2002-03-20 02:08:01 +00:00
ata Here follows the new kernel dumping infrastructure. 2002-03-31 22:37:00 +00:00
atkbdc Fix spelling and grammar bogons in a comment. 2002-03-27 13:16:11 +00:00
awi Remove __P. 2002-03-20 02:08:01 +00:00
bge Teach the bge driver about the BCM5701 (specifically, the 3Com 2002-03-22 06:45:40 +00:00
bktr Fix bktr and pcf compilation with LINT 2002-03-25 21:22:35 +00:00
buslogic Use ANSI C string contatenation instead of a multi-line string literal. 2001-12-13 11:14:28 +00:00
cardbus Revert most of the recent PCI merge. This has proven to be too 2002-03-15 06:41:01 +00:00
ccd Remove bogus ccddump() function in favour of the standard nodump. 2002-03-29 21:12:11 +00:00
ciss Fix warning; line 1640: ciss_abort_request defined but not used. 2001-12-18 08:01:48 +00:00
cm Remove __P. 2002-03-20 02:08:01 +00:00
cnw Remove __P. 2002-03-20 02:08:01 +00:00
cs Migrate to PCMCIA_CARD() macros 2001-11-15 07:52:49 +00:00
ct Remove __P. 2002-03-20 02:08:01 +00:00
cy Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-23 16:01:49 +00:00
dc Remove __P. 2002-03-20 02:08:01 +00:00
de No FreeBSD/vax here either. 2001-11-03 08:32:28 +00:00
dec Introduce a boot environment variable (clock_compat_osf1) which can 2001-11-03 17:22:50 +00:00
dgb Remove __P. 2002-03-20 02:08:01 +00:00
digi Use suser() instead of checking cr_uid against 0 directly. 2002-03-26 18:01:38 +00:00
dpt Fix a couple of bogus enums. 2002-01-08 06:47:55 +00:00
ed Remove __P. 2002-03-20 02:08:01 +00:00
eisa Remove __P. 2002-03-20 02:08:01 +00:00
em Remove __P. 2002-03-20 02:08:01 +00:00
en Remove __P. 2002-03-20 02:08:01 +00:00
ep Remove __P. 2002-03-20 02:08:01 +00:00
ex Remove __P. 2002-03-20 02:08:01 +00:00
exca Default debugging to OFF now. 2002-02-04 15:55:21 +00:00
fb Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
fdc Push BIO_FORMAT into a local hack inside the floppy drivers where 2002-03-26 19:16:37 +00:00
fe Supported C-NET(98)P2 PnP mode. 2002-02-04 14:01:27 +00:00
fxp Remove mbuf exhaustion warning messages; these are handled by the 2002-02-04 03:15:27 +00:00
gem In some cases, RX descriptors that are signalled to have been completed 2002-03-23 19:43:15 +00:00
gfb We need to operate on struct thread now, not struct proc. 2001-11-08 01:49:06 +00:00
gx Don't pass an interface pointer to VLAN_INPUT{,_TAG}. Get it from the 2001-12-03 17:28:27 +00:00
hea Remove __P. 2002-03-20 02:08:01 +00:00
hfa Remove __P. 2002-03-20 02:08:01 +00:00
hme Assorted fixes: 2002-03-23 19:37:11 +00:00
ic Oops, forgot to commit one file in the fd driver mega update. Here it 2001-12-16 07:52:13 +00:00
ichsmb Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ida Here follows the new kernel dumping infrastructure. 2002-03-31 22:37:00 +00:00
ie Repo copy i82586.h to dev/ic/i82586.h. 2001-07-02 05:29:58 +00:00
iicbus Major rework of the iicbus/smbus framework: 2002-03-23 15:49:15 +00:00
iir Remove __P. 2002-03-20 02:08:01 +00:00
isp Limit fabric search to a default 256 entries. This will all go away 2002-03-21 21:10:16 +00:00
ispfw Remove __P. 2002-03-20 02:08:01 +00:00
joy Revert change that breaks the joy module. joydevclass must not be static. 2002-01-08 18:27:49 +00:00
kbd Fix spelling and grammar bogons in a comment. 2002-03-27 13:16:11 +00:00
lge Remove __P. 2002-03-20 02:08:01 +00:00
lmc Fix typo: seperate -> separate. 2001-02-06 11:21:58 +00:00
lnc Remove __P. 2002-03-20 02:08:01 +00:00
mc146818
mca - Remove an unused write_ivars function that didn't do anything anyway. 2001-01-19 09:29:34 +00:00
mcd Don't call cdevsw_add(). 2001-11-04 08:58:22 +00:00
md Remove unused include. 2002-03-20 09:55:07 +00:00
mii regenerate 2002-03-22 06:39:13 +00:00
mlx Fixed printf format errors in previous commit. %llu is no more suitable 2002-03-18 23:38:16 +00:00
mly Fix warnings (comment out unused tables that are taking space in the 2002-02-27 23:57:18 +00:00
mse Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-23 16:01:49 +00:00
musycc Fix warnings: 2001-06-15 00:19:43 +00:00
ncv Remove __P. 2002-03-20 02:08:01 +00:00
nge Remove __P. 2002-03-20 02:08:01 +00:00
nmdm Simple p_ucred -> td_ucred changes to start using the per-thread ucred 2002-02-27 18:32:23 +00:00
nsp Remove __P. 2002-03-20 02:08:01 +00:00
null Here follows the new kernel dumping infrastructure. 2002-03-31 22:37:00 +00:00
ofw Move the make_dev call from the cn_probe to a sysinit that runs at 2002-01-09 04:03:55 +00:00
pccard Improve support of MFC cards (Multi-function cards). This commit 2002-03-29 08:05:39 +00:00
pccbb Check the status of the card bridge first thing, rather than last in 2002-02-20 16:20:27 +00:00
pcf Fix bktr and pcf compilation with LINT 2002-03-25 21:22:35 +00:00
pci Add 5th parameter to pci_read_device specifying the size of the object 2002-03-13 16:32:11 +00:00
pcic Fix missing comma in previous commit. 2001-12-28 23:51:48 +00:00
pdq - Merge the pdq driver (if_fpa and if_fea) from NetBSD. 2002-03-29 11:22:22 +00:00
ppbus Major rework of the iicbus/smbus framework: 2002-03-23 15:49:15 +00:00
ppc Restore the original copyright 2002-03-23 15:36:13 +00:00
puc Add an entry for Decision Computer Inc, PCCOM 4-port serial cards. 2002-03-28 11:17:20 +00:00
random Provide infrastructure for harvesting SWI entropy. 2002-03-03 20:09:42 +00:00
ray Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
rc Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-23 16:01:49 +00:00
rp Remove __P. 2002-03-20 02:08:01 +00:00
sbni Rename a variable that might accidentally be duplicated elsewhere. 2002-01-08 19:36:54 +00:00
scd Don't call cdevsw_add() 2001-11-04 08:54:15 +00:00
sf Remove __P. 2002-03-20 02:08:01 +00:00
si KSE Milestone 2 2001-09-12 08:38:13 +00:00
sio Support more than 32 sio unit numbers. The maximum unit number is now 2002-03-31 09:15:43 +00:00
sk Remove __P. 2002-03-20 02:08:01 +00:00
smbus Major rework of the iicbus/smbus framework: 2002-03-23 15:49:15 +00:00
sn Migrate to PCMCIA_CARD() macros 2001-11-15 07:52:49 +00:00
snc Remove __P. 2002-03-20 02:08:01 +00:00
snp Remove __P. 2002-03-20 02:08:01 +00:00
sound Include <machine/limits.h> for definition of ULONG_MAX. Remove a 2002-03-25 09:23:41 +00:00
speaker Remove __P. 2002-03-20 07:51:46 +00:00
sr Fix clock selection for X.21 interfaces. 2001-02-26 16:30:02 +00:00
stg Remove __P. 2002-03-20 02:08:01 +00:00
streams Remove __P. 2002-03-20 02:08:01 +00:00
sym Fix some gcc-3.1+ warnings: 2002-03-19 23:20:21 +00:00
syscons Remote newly unused variable to unbreak LINT. 2002-03-25 02:55:34 +00:00
tdfx Replace ffind_* with fget calls. 2002-01-14 00:13:45 +00:00
tga Add the TGA video driver. This is a great accomplishtment and will help 2001-11-01 08:26:30 +00:00
ti Remove __P. 2002-03-20 02:08:01 +00:00
twe Here follows the new kernel dumping infrastructure. 2002-03-31 22:37:00 +00:00
tx Remove __P. 2002-03-20 02:08:01 +00:00
txp Remove __P. 2002-03-20 02:08:01 +00:00
usb Regen. 2002-03-31 21:38:38 +00:00
vinum Remove bogus vinumdump(), if you can't dump, say so with nodump(). 2002-03-29 21:14:34 +00:00
vr Remove __P. 2002-03-20 02:08:01 +00:00
vx Remove __P. 2002-03-20 02:08:01 +00:00
wds Turn on interrupt-entropy harvesting for all/any mass storage devices 2001-03-01 17:09:09 +00:00
wi Identify PRISM 2.5 with ISL37300P 2002-03-29 00:32:32 +00:00
wl Remove support for FreeBSD 2.x from this driver. 2002-02-27 23:34:02 +00:00
xe Remove an unused variable. 2002-02-26 03:37:35 +00:00