123863 Commits

Author SHA1 Message Date
imp
67b9c508f8 MFp4: Loop forever getting characters... A kludge for now. 2006-04-21 13:56:26 +00:00
imp
4bdf691994 MFp4: Integrate support for building tag support for linux booting. 2006-04-21 13:51:47 +00:00
imp
a76624710a MFp4:
Init eeprom here now that we don't init the eeprom in arm_init.s
	and read in the second 8k of the data.
	Tweak formatting.
2006-04-21 13:44:58 +00:00
imp
a894bea56e Move from arm_init.s -> .S. #ifdef linux vs freebsd defaults for the
boot loader (linux booting helps regression testing).  No repo copy
because of limited history.
2006-04-21 13:40:26 +00:00
nyan
65471b2ff8 Add minidump.h for pc98. 2006-04-21 12:13:59 +00:00
nyan
7648267c9a MFi386: revision 1.554 (add minidump_machdep.c). 2006-04-21 12:13:11 +00:00
nyan
13a5c9f63c MFi386: revision 1.625. 2006-04-21 12:12:21 +00:00
delphij
7921291f49 Because optarg and optind are defined in unistd.h,
remove the defination here.
2006-04-21 09:39:51 +00:00
ps
10b2fe8dea Allow for nmbclusters and maxsockets to be increased via sysctl.
An eventhandler is used to update all the various zones that depend
on these values.
2006-04-21 09:25:40 +00:00
imp
71dd157044 MFp4: formatting nits and minor style changes that likely won't matter. 2006-04-21 07:45:57 +00:00
imp
ddb17dbb45 Allow one to enable building tags. Check the size of the boot imag. 2006-04-21 07:41:36 +00:00
imp
633fda1144 MFp4:
On the KB9202 go ahead and enable the flash controller so the boot
loader can access the parallel flash.
2006-04-21 07:29:14 +00:00
trhodes
ef3a255b54 Update for rev 1.205 of vm_mmap.c.
Submitted by:	fanf
2006-04-21 07:22:55 +00:00
imp
ce4eb8b530 MFp4:
Make this compile, assuming that you have linux installed in a
sensible place.  tag_list is disabled by default, since we don't
distribute linux, but it is desirable to allow the boot loader to boot
Linux or FreeBSD (mostly for testing).
2006-04-21 07:19:22 +00:00
trhodes
2b289f67a8 It seems that POSIX would rather ENODEV returned in place of EINVAL when
trying to mmap() an fd that isn't a normal file.

Reference: http://www.opengroup.org/onlinepubs/009695399/functions/mmap.html
Submitted by:	fanf
2006-04-21 07:17:25 +00:00
trhodes
cf75387e3b Remove what I believe are two useless ifdefs. If a user or administrator
enables multilabel, or any option for that matter, most likely they have
a reason.  This will allow users to see that mulilabel is enabled via an
issued "mount" command and remove an annoying warning - printed only when
a MAC kernel is not installed - on boot up.

Discussed with:	green, brueffer, Samy Al Bahra.
Probably ran past:	csjp (though I can't remember).
2006-04-21 07:14:25 +00:00
imp
a4fa6c67c3 MFp4:
Minor diffs to reduce diffs to p4.
2006-04-21 07:12:12 +00:00
imp
d6419c8192 spi flash updating boot loader. upload this file for the recovery
xmodem download.  Then download the image you want in the flash.
This will burn the image into the flash.  You must then reset the
unit and the new flash image will be used for booting...
2006-04-21 06:51:08 +00:00
imp
a02a1fc481 iic eeprom updating boot loader. upload this file for the recovery
xmodem download.  Then download the image you want in the eeprom.
This will burn the image into the eeprom.  You must then reset the
unit and the new eeprom image will be used for booting...
2006-04-21 06:48:52 +00:00
imp
a7cdd0dedd Add boot0iic and boot0spi. These are 'shortcut' boot loaders designed
to replace either a bad iic eeprom with one you download with xmodem,
or likewise with a spi flash.
2006-04-21 06:43:32 +00:00
peter
0e7c77416b Oops. Minidumps were developed on 6.x, in without the small pv entry code.
Add some strategic dump_add_page()/dump_drop_page() lines to include pv
chunks in the minidumps - these operate in the direct map region like UMA.
2006-04-21 04:50:18 +00:00
peter
aeeca95e16 Teach libkvm how to read minidumps. It turns out that minidumps are
far more convenient for libkvm to work with because of the page table
block at the beginning.  As a result, the MD code is smaller.

libkvm will automatically detect old vs mini dumps on i386 and amd64.

libkvm will handle i386 PAE and non-PAE modes.  There is a PAE flag in
the i386 minidump header to signal the width of the entries in the
page table block.

Other convenient values are also present, such as kernbase and the direct
map addresses on amd64.
2006-04-21 04:32:51 +00:00
peter
3fd2125c99 Merge minidumps from amd64 where they were originally developed.
Major differences:
 * since there is no direct map region, there is no custom uma memory
   allocator to modify to include its pages in the dumps.
 * Various data entries are reduced from 64 bit to 32 bit to match the
   native size.

dump_add_page() and dump_drop_page() are still present in case one wants to
arrange for arbitary pages to be dumped.  This is of marginal use though
because libkvm+kgdb cannot address physical memory that isn't mapped into
kvm.
2006-04-21 04:28:43 +00:00
peter
dbae6322e8 Introduce minidumps. Full physical memory crash dumps are still available
via the debug.minidump sysctl and tunable.

Traditional dumps store all physical memory.  This was once a good thing
when machines had a maximum of 64M of ram and 1GB of kvm.  These days,
machines often have many gigabytes of ram and a smaller amount of kvm.
libkvm+kgdb don't have a way to access physical ram that is not mapped
into kvm at the time of the crash dump, so the extra ram being dumped
is mostly wasted.

Minidumps invert the process.  Instead of dumping physical memory in
in order to guarantee that all of kvm's backing is dumped, minidumps
instead dump only memory that is actively mapped into kvm.

amd64 has a direct map region that things like UMA use.  Obviously we
cannot dump all of the direct map region because that is effectively
an old style all-physical-memory dump.  Instead, introduce a bitmap
and two helper routines (dump_add_page(pa) and dump_drop_page(pa)) that
allow certain critical direct map pages to be included in the dump.
uma_machdep.c's allocator is the intended consumer.

Dumps are a custom format.  At the very beginning of the file is a header,
then a copy of the message buffer, then the bitmap of pages present in
the dump, then the final level of the kvm page table trees (2MB mappings
are expanded into a 4K page mappings), then the sparse physical pages
according to the bitmap.  libkvm can now conveniently access the kvm
page table entries.

Booting my test 8GB machine, forcing it into ddb and forcing a dump
leads to a 48MB minidump.  While this is a best case, I expect minidumps
to be in the 100MB-500MB range.  Obviously, never larger than physical
memory of course.

minidumps are on by default.  It would want be necessary to turn them off
if it was necessary to debug corrupt kernel page table management as that
would mess up minidumps as well.

Both minidumps and regular dumps are supported on the same machine.
2006-04-21 04:24:50 +00:00
jkoshy
9b5e82f535 Spelling/grammar fixes.
MFC after:	1 week
2006-04-21 01:33:04 +00:00
brueffer
985c22cddc - ipmi is a device, not an option (1)
- use standard formatting for authors

Submitted by:	Pawel Worach <pawel.worach@gmail.com> (1)
2006-04-20 18:29:59 +00:00
delphij
672b486845 After some discussion we believe that having SERVERS to REQUIRE:
ldconfig would provide necessary protection for named as well,
so remove the dependency here.

Approved by:	flz
2006-04-20 12:30:12 +00:00
ache
7fa30b3b9c Fix x.fmt
PR:     88222
Submitted by:   Anders Lindquist <andersl@saaf.se>
2006-04-20 11:00:52 +00:00
pjd
7df97ee4bb geli(8) provides keys on newsession time, so remove CRD_F_KEY_EXPLICIT flag
as HW crypto drivers don't support it.
2006-04-20 06:33:46 +00:00
pjd
a4071b836a padlock(4) doesn't support explicitly provided keys yet.
Return an error instead of encrypting/decrypting data with a wrong key.
2006-04-20 06:31:44 +00:00
sam
8d8f399b4c add debug msg 2006-04-20 05:03:21 +00:00
imp
9f3542317c Set the rid for the resoruce obtained from rman_reserve_resource. 2006-04-20 04:21:27 +00:00
imp
cdc20c723d Set the rid for any resource obtained from rman_reserve_resource.
Reviewed by: wollman, jmg	(as were the other commits fixing this problem)
2006-04-20 04:20:41 +00:00
imp
897af5156b Set the rid for any resource obtained from rman_resource_reserve. 2006-04-20 04:19:10 +00:00
imp
34755358c7 Set the rid of the resource obtained from rman_reserve_resource. 2006-04-20 04:18:30 +00:00
imp
0e9911a7c4 Set the rid for a resoruce allocated with rman_reserve_resource. 2006-04-20 04:16:34 +00:00
imp
d49b1fe00a Set the rid for any resources that are allocated at the level where
they first emerge from the rman_* system.
2006-04-20 04:16:02 +00:00
imp
09e17e600a When returning a resource that we've allocated with rman_reserve_resource,
go ahead and set the rid for that resource.
2006-04-20 04:12:02 +00:00
imp
2a2593f381 Set the rid of the resource we're about to return to the user. 2006-04-20 04:10:27 +00:00
ps
d4df787e9e Free another memory leak when dealing with disk notification. 2006-04-20 03:05:02 +00:00
jmg
c5ebe3714a const'ify resource_spec to note that we won't be changing anything while
releasing resources... also, NULL out the resources as we free them...
2006-04-20 01:44:16 +00:00
imp
8299c3aeb9 r_spare1 and r_spare2 aren't needed. They aren't used. They can't be
accessed from outside of subr_rman.c.  Remove them.

Reviewed by: jmg (in theory)
2006-04-19 21:25:55 +00:00
mjacob
30583e8a0d Remove debounce code in mpt_intr. After some reflection
and watching a debounce followed by a timeout, I think
I'm forced to conclude that it was not a good idea.
2006-04-19 21:17:33 +00:00
jhb
173aa256de Add MLINKS for rwlock(9). 2006-04-19 21:09:39 +00:00
jhb
23bed816e2 Document rw_try_upgrade() and rw_downgrade(). 2006-04-19 21:09:17 +00:00
jhb
99cfbe57d4 Implement rw_try_upgrade() and rw_downgrade(). rw_try_upgrade() makes a
single attempt at upgrading a read lock to a write lock, and rw_downgrade()
converts curthread's write lock into a read lock.
2006-04-19 21:06:52 +00:00
jhb
aa021f0145 Various nits and fixups so that the text reads smoother in several places.
Also, more closely match the prototypes in sys/rwlock.h and add a BUGS
section.
2006-04-19 20:43:35 +00:00
jhb
a74c12c708 Trim a couple of xrefs. 2006-04-19 20:41:56 +00:00
ps
181e281264 Free some previously leaked memory on module unload. 2006-04-19 19:56:10 +00:00
marcel
b3f3f05092 Remove sab(4). 2006-04-19 19:39:35 +00:00