]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
18 years agoAbstract inpcb drop logic, previously just setting of INP_DROPPED in TCP,
rwatson [Tue, 25 Apr 2006 11:17:35 +0000 (11:17 +0000)]
Abstract inpcb drop logic, previously just setting of INP_DROPPED in TCP,
into in_pcbdrop().  Expand logic to detach the inpcb from its bound
address/port so that dropping a TCP connection releases the inpcb resource
reservation, which since the introduction of socket/pcb reference count
updates, has been persisting until the socket closed rather than being
released implicitly due to prior freeing of the inpcb on TCP drop.

MFC after: 3 months

18 years agoBump up the NFS server dupreq cache limit to 2K (from 64). With a small
mohans [Tue, 25 Apr 2006 00:21:56 +0000 (00:21 +0000)]
Bump up the NFS server dupreq cache limit to 2K (from 64). With a small
duplicate request cache, under heavy load a lot of non-idempotent requests
were getting served again, resulting in errors.

Found by : Kris Kennaway.

18 years agoCheck if reported HTT cores are physical cores. This commit does not
jkim [Tue, 25 Apr 2006 00:06:37 +0000 (00:06 +0000)]
Check if reported HTT cores are physical cores.  This commit does not
affect AMD CPUs at all because HTT bit is disabled earlier.  Intel
multicore CPUs and ULE scheduler may be affected.

18 years agoRevert previous commit. It's not part of the ppc(4) changes.
marcel [Mon, 24 Apr 2006 23:36:32 +0000 (23:36 +0000)]
Revert previous commit. It's not part of the ppc(4) changes.

18 years agoo Move ISA specific code from ppc.c to ppc_isa.c -- a bus front-
marcel [Mon, 24 Apr 2006 23:31:51 +0000 (23:31 +0000)]
o  Move ISA specific code from ppc.c to ppc_isa.c -- a bus front-
   end for isa(4).
o  Add a seperate bus frontend for acpi(4) and allow ISA DMA for
   it when ISA is configured in the kernel. This allows acpi(4)
   attachments in non-ISA configurations, as is possible for ia64.
o  Add a seperate bus frontend for pci(4) and detect known single
   port parallel cards.
o  Merge PC98 specific changes under pc98/cbus into the MI driver.
   The changes are minor enough for conditional compilation and
   in this form invites better abstraction.
o  Have ppc(4) usabled on all platforms, now that ISA specifics
   are untangled enough.

18 years agoAdd another Intel CPU feature flag, xTPR (Send Task Priority Messages).
jkim [Mon, 24 Apr 2006 22:56:57 +0000 (22:56 +0000)]
Add another Intel CPU feature flag, xTPR (Send Task Priority Messages).

18 years agoCheck if deterministic cache parameters leaf is valid before use.
jkim [Mon, 24 Apr 2006 22:23:52 +0000 (22:23 +0000)]
Check if deterministic cache parameters leaf is valid before use.

18 years agoRemove the sab(4) manpage.
marcel [Mon, 24 Apr 2006 21:42:28 +0000 (21:42 +0000)]
Remove the sab(4) manpage.

18 years agoRemove the sab(4) driver. It is superseded by scc(4).
marcel [Mon, 24 Apr 2006 21:40:58 +0000 (21:40 +0000)]
Remove the sab(4) driver. It is superseded by scc(4).

18 years agoAdjust dangerous-shared-cache-detection logic from "all shared data
cperciva [Mon, 24 Apr 2006 21:17:01 +0000 (21:17 +0000)]
Adjust dangerous-shared-cache-detection logic from "all shared data
caches are dangerous" to "a shared L1 data cache is dangerous".  This
is a compromise between paranoia and performance: Unlike the L1 cache,
nobody has publicly demonstrated a cryptographic side channel which
exploits the L2 cache -- this is harder due to the larger size, lower
bandwidth, and greater associativity -- and prohibiting shared L2
caches turns Intel Core Duo processors into Intel Core Solo processors.

As before, the 'machdep.hyperthreading_allowed' sysctl will allow even
the L1 data cache to be shared.

Discussed with: jhb, scottl
Security: See FreeBSD-SA-05:09.htt for background material.

18 years agoInherit LOCAL_CREDS option from listen socket for sockets returned
maxim [Mon, 24 Apr 2006 19:09:33 +0000 (19:09 +0000)]
Inherit LOCAL_CREDS option from listen socket for sockets returned
by accept(2).

PR: kern/90644
Submitted by: Andrey Simonenko
OK'ed by: mdodd
Tested by: NetBSD regress/sys/kern/unfdpass/unfdpass.c
MFC after: 1 month

18 years agoAdd attribution: the quote comes from Perlis's Paradigms of AI Programming
dds [Mon, 24 Apr 2006 12:13:02 +0000 (12:13 +0000)]
Add attribution: the quote comes from Perlis's Paradigms of AI Programming
p. 348.  See http://www.norvig.com/Lisp-retro.html

18 years agoMove AHC_REG_PRETTY_PRINT and AHD_REG_PRETTY_PRINT below
delphij [Mon, 24 Apr 2006 08:44:34 +0000 (08:44 +0000)]
Move AHC_REG_PRETTY_PRINT and AHD_REG_PRETTY_PRINT below
their corresponding devices.

18 years agoInstead of calling tcp_usr_detach() from tcp_usr_abort(), break out
rwatson [Mon, 24 Apr 2006 08:20:02 +0000 (08:20 +0000)]
Instead of calling tcp_usr_detach() from tcp_usr_abort(), break out
common pcb tear-down logic into tcp_detach(), which is called from
either.  Invoke tcp_drop() from the tcp_usr_abort() path rather than
tcp_disconnect(), as we want to drop it immediately not perform a
FIN sequence.  This is one reason why some people were experiencing
panics in sodealloc(), as the netisr and aborting thread were
simultaneously trying to tear down the socket.  This bug could often
be reproduced using repeated runs of the listenclose regression test.

MFC after: 3 months
PR: 96090
Reported by: Peter Kostouros <kpeter at melbpc dot org dot au>, kris
Tested by: Peter Kostouros <kpeter at melbpc dot org dot au>, kris

18 years agoMFp4: Add the ipend() method to the serdev I/F to allow umbrella
marcel [Sun, 23 Apr 2006 22:12:39 +0000 (22:12 +0000)]
MFp4: Add the ipend() method to the serdev I/F to allow umbrella
drivers to obtain pending interrupt status from subordinate
drivers.

18 years agoMFp4: Calculate the divisor before setting the DLAB bit. This
marcel [Sun, 23 Apr 2006 21:15:07 +0000 (21:15 +0000)]
MFp4: Calculate the divisor before setting the DLAB bit. This
prevents that there's a control flow that leaves the DLAB
bit set.

18 years agoNote FreeBSD-SA-06:14.fpu.asc
delphij [Sun, 23 Apr 2006 20:19:03 +0000 (20:19 +0000)]
Note FreeBSD-SA-06:14.fpu.asc

18 years agoAssert that sockets passed into soabort() not be SQ_COMP or SQ_INCOMP,
rwatson [Sun, 23 Apr 2006 18:15:54 +0000 (18:15 +0000)]
Assert that sockets passed into soabort() not be SQ_COMP or SQ_INCOMP,
since that removal should have been done a layer up.

MFC after: 3 months

18 years agoAdd some new options to mac_bsdestended. We can now match on:
dwmalone [Sun, 23 Apr 2006 17:06:18 +0000 (17:06 +0000)]
Add some new options to mac_bsdestended. We can now match on:

subject: ranges of uid, ranges of gid, jail id
objects: ranges of uid, ranges of gid, filesystem,
object is suid, object is sgid, object matches subject uid/gid
object type

We can also negate individual conditions. The ruleset language is
a superset of the previous language, so old rules should continue
to work.

These changes require a change to the API between libugidfw and the
mac_bsdextended module. Add a version number, so we can tell if
we're running mismatched versions.

Update man pages to reflect changes, add extra test cases to
test_ugidfw.c and add a shell script that checks that the the
module seems to do what we expect.

Suggestions from: rwatson, trhodes
Reviewed by: trhodes
MFC after: 2 months

18 years agostyle(9) treatment following fixups.
rwatson [Sun, 23 Apr 2006 16:33:56 +0000 (16:33 +0000)]
style(9) treatment following fixups.

MFC after: 3 months

18 years agoEliminate unnecessary use of labels in error unwinding cases; result is
rwatson [Sun, 23 Apr 2006 16:25:30 +0000 (16:25 +0000)]
Eliminate unnecessary use of labels in error unwinding cases; result is
the same number or fewer lines of code.

Don't cast using caddr_t.

Remember to unlock the natm lock in some error cases where it was leaked
previously.

Annotate two cases where we'd like to hold the natm subsystem lock over
ioctls into the device driver.

Hold the natm lock longer in natm_usr_connect() so we can copy the npcb
fields while holding the mutex.

MFC after: 3 months

18 years agoAcquire natm mutex after traversing so_pcb, not before, as the protocol
rwatson [Sun, 23 Apr 2006 16:04:07 +0000 (16:04 +0000)]
Acquire natm mutex after traversing so_pcb, not before, as the protocol
mutex is no longer required to ensure that so_pcb is valid.

Make sure to free (control) in natm_usr_send() when there M_PREPEND()
frees (m).

MFC after: 3 months

18 years agoAdd missing 'not' to SQ_COMP comment.
rwatson [Sun, 23 Apr 2006 15:37:23 +0000 (15:37 +0000)]
Add missing 'not' to SQ_COMP comment.

MFC after: 3 months

18 years agoMove handling of SQ_COMP exception case in sofree() to the top of the
rwatson [Sun, 23 Apr 2006 15:33:38 +0000 (15:33 +0000)]
Move handling of SQ_COMP exception case in sofree() to the top of the
function along with the remainder of the reference checking code.  Move
comment from body to header with remainder of comments.  Inclusion of a
socket in a completed connection queue counts as a true reference, and
should not be handled as an under-documented edge case.

MFC after: 3 months

18 years agoUpdate natm PCB debugging code:
rwatson [Sun, 23 Apr 2006 15:23:31 +0000 (15:23 +0000)]
Update natm PCB debugging code:

- Depend on opt_ddb.h, since npcb_dump() is ifdef'd DDB.
- Include ddb/ddb.h so we can call db_printf() and use DB_SHOW_COMMAND().
- Don't test results of malloc() under DIAGNOSTIC, let the memory allocator
  take care of its own invariants.

MFC after: 1 month

18 years agoModify in6_pcbpurgeif0() to accept a pcbinfo structure rather than a pcb
rwatson [Sun, 23 Apr 2006 15:06:16 +0000 (15:06 +0000)]
Modify in6_pcbpurgeif0() to accept a pcbinfo structure rather than a pcb
list head structure; this improves congruence to IPv4, and also allows
in6_pcbpurgeif0() to lock the pcbinfo.  Modify in6_pcbpurgeif0() to lock
the pcbinfo before iterating the pcb list, use queue(9)'s LIST_FOREACH()
for the iteration, and to lock individual inpcb's while manipulating
them.

MFC after: 3 months

18 years agoReplace isn_mtx direct use with ISN_*() lock macros so that locking
rwatson [Sun, 23 Apr 2006 12:27:42 +0000 (12:27 +0000)]
Replace isn_mtx direct use with ISN_*() lock macros so that locking
details/strategy can be changed without touching every use.

MFC after: 3 months

18 years agoRemove multiple _get_curthread() calls.
davidxu [Sun, 23 Apr 2006 11:23:37 +0000 (11:23 +0000)]
Remove multiple _get_curthread() calls.

18 years agoMFen 1.911 -> 1.914
delphij [Sun, 23 Apr 2006 09:40:44 +0000 (09:40 +0000)]
MFen 1.911 -> 1.914

Obtained from: The FreeBSD Simplified Chinese Project

18 years ago- Mark MFC'd items.
hrs [Sat, 22 Apr 2006 23:02:29 +0000 (23:02 +0000)]
- Mark MFC'd items.
- Add some missing items:
snd_ich(4) and snd_es137x(4) MPSAFE,
bge(4) polling mode support,
lge(4) MPSAFE,
glabel NTFS support,
/var/audit and audit group added,
snapinfo(8) added, and
groff 1.19.2 imported.

18 years agoMFother arches :
cognet [Sat, 22 Apr 2006 22:51:32 +0000 (22:51 +0000)]
MFother arches :
date: 2006/04/12 04:22:50;  author: alc;  state: Exp;  lines: +14 -41
Retire pmap_track_modified().  We no longer need it because we do not
create managed mappings within the clean submap.  To prevent regressions,
add assertions blocking the creation of managed mappings within the clean
submap.

Reviewed by: tegge

18 years agoIntroduce a new TCP mutex, isn_mtx, which protects the initial sequence
rwatson [Sat, 22 Apr 2006 19:23:24 +0000 (19:23 +0000)]
Introduce a new TCP mutex, isn_mtx, which protects the initial sequence
number state, rather than re-using pcbinfo.  This introduces some
additional mutex operations during isn query, but avoids hitting the TCP
pcbinfo lock out of yet another frequently firing TCP timer.

MFC after: 3 months

18 years agoAssert the inpcb lock when rehashing an inpcb.
rwatson [Sat, 22 Apr 2006 19:15:20 +0000 (19:15 +0000)]
Assert the inpcb lock when rehashing an inpcb.

Improve consistency of style around some current assertions.

MFC after: 3 months

18 years agoRemove pcbinfo locking from in_setsockaddr() and in_setpeeraddr();
rwatson [Sat, 22 Apr 2006 19:10:02 +0000 (19:10 +0000)]
Remove pcbinfo locking from in_setsockaddr() and in_setpeeraddr();
holding the inpcb lock is sufficient to prevent races in reading
the address and port, as both the inpcb lock and pcbinfo lock are
required to change the address/port.

Improve consistency of spelling in assertions about inp != NULL.

MFC after: 3 months

18 years agoRevert part of previous commit. In alpha_platform_alloc_ide_intr(),
marcel [Sat, 22 Apr 2006 19:04:21 +0000 (19:04 +0000)]
Revert part of previous commit. In alpha_platform_alloc_ide_intr(),
there's no RID for us to work with.

18 years agoOops, correct the weak reference (s/fclose/fcloseall).
deischen [Sat, 22 Apr 2006 16:47:59 +0000 (16:47 +0000)]
Oops, correct the weak reference (s/fclose/fcloseall).

Spotted by: Antoine Brodin (antoine _dot_ brodin _at_ laposte _dot_ net)

18 years agoBump __FreeBSD_version to reflect the addition of fcloseall() to libc.
deischen [Sat, 22 Apr 2006 15:12:50 +0000 (15:12 +0000)]
Bump __FreeBSD_version to reflect the addition of fcloseall() to libc.

18 years agoNow that libc has fcloseall(), remove _cleanup() from the list
deischen [Sat, 22 Apr 2006 15:11:33 +0000 (15:11 +0000)]
Now that libc has fcloseall(), remove _cleanup() from the list
of FreeBSD private symbols.

18 years agoAdd a prototype for fcloseall().
deischen [Sat, 22 Apr 2006 15:10:11 +0000 (15:10 +0000)]
Add a prototype for fcloseall().

18 years agoAdd fcloseall() to libc. This removes the need to export _cleanup().
deischen [Sat, 22 Apr 2006 15:09:15 +0000 (15:09 +0000)]
Add fcloseall() to libc.  This removes the need to export _cleanup().
Linux also provides an fcloseall() implementation.

Discussed on: arch

18 years agoCorrect two typos in comments.
brueffer [Sat, 22 Apr 2006 13:42:49 +0000 (13:42 +0000)]
Correct two typos in comments.

18 years agoClean up, comment out non-base utilities, fix up comments.
trhodes [Sat, 22 Apr 2006 11:02:44 +0000 (11:02 +0000)]
Clean up, comment out non-base utilities, fix up comments.

Prodded by: hrs

18 years agoAdd support for (latest) VIA VT8251 (rev. 0x07) audio controller.
ariff [Sat, 22 Apr 2006 09:44:00 +0000 (09:44 +0000)]
Add support for (latest) VIA VT8251 (rev. 0x07) audio controller.

A slight difference of this chip from its previous siblings is that
it need a gentle "wake up" on every (full) DMA buffer completion to
avoid stalled interrupt handler.

Thanks to George Hartzell for permission on doing remote debugging.

Prime MFC candidate for 6.1-RELEASE. Please reply to this commit if
there are any objections  (so I won't bug re@),  since the  changes
are too small and only specific to VT8251.

PR: i386/95949
Tested by: [1] George Hartzel
           myself (remotely)
MFC after: 3 days

[1] http://lists.freebsd.org/pipermail/freebsd-multimedia/2006-April/004003.html

18 years agoRevert previous to this file before an actual request is made.
trhodes [Sat, 22 Apr 2006 04:22:15 +0000 (04:22 +0000)]
Revert previous to this file before an actual request is made.

18 years agodocument the various bus_space_*_stream_? functions...
jmg [Sat, 22 Apr 2006 03:58:41 +0000 (03:58 +0000)]
document the various bus_space_*_stream_? functions...

18 years agoFix a typo.
jkoshy [Sat, 22 Apr 2006 03:04:24 +0000 (03:04 +0000)]
Fix a typo.

Submitted by: Pawel Worach <pawel.worach at gmail dot com>
MFC after: 1 week

18 years agoPrint td_name instead of p_comm if td_name is non-empty for
jhb [Fri, 21 Apr 2006 20:40:43 +0000 (20:40 +0000)]
Print td_name instead of p_comm if td_name is non-empty for
'show turnstile' and 'show sleepq'.

18 years agoUse LIST_FOREACH().
jhb [Fri, 21 Apr 2006 20:39:51 +0000 (20:39 +0000)]
Use LIST_FOREACH().

18 years agoo Do recrack(arguments) for commands which actually take NAME as
maxim [Fri, 21 Apr 2006 20:33:16 +0000 (20:33 +0000)]
o Do recrack(arguments) for commands which actually take NAME as
arguments so we do not coredump at "help foo", "back bar" and such.

o Be consistent and print argc - 1 as a command arguments number in
all cases.

PR: bin/37096
Submitted by: Joshua Goodall
MFC after: 1 month

18 years agoFree allocated environment variables after use.
jkim [Fri, 21 Apr 2006 19:35:03 +0000 (19:35 +0000)]
Free allocated environment variables after use.

Coverity ID: 366
Found by: Coverity Prevent

18 years agoDon't try to kill embryonic processes in killpg1(). This prevents
ps [Fri, 21 Apr 2006 19:26:21 +0000 (19:26 +0000)]
Don't try to kill embryonic processes in  killpg1().  This prevents
a race condition between fork() and kill(pid,sig) with pid < 0 that
can cause a kernel panic.

Submitted by: up
MFC after: 3 weeks

18 years agoRemove unnecessary assignment.
jkim [Fri, 21 Apr 2006 19:06:29 +0000 (19:06 +0000)]
Remove unnecessary assignment.

Coverity ID: 553
Found by: Coverity Prevent

18 years agoRedo some code based upon issues found by Coverity.
mjacob [Fri, 21 Apr 2006 18:46:35 +0000 (18:46 +0000)]
Redo some code based upon issues found by Coverity.

18 years agoChange some order of the way we do some target mode ops.
mjacob [Fri, 21 Apr 2006 18:31:21 +0000 (18:31 +0000)]
Change some order of the way we do some target mode ops.

Found by Coverity.

18 years agoSome more gratuitous format and name changes.
mjacob [Fri, 21 Apr 2006 18:30:01 +0000 (18:30 +0000)]
Some more gratuitous format and name changes.

Pull in some target mode changes from a private branch.
Pull in some more RELENG_4 compilation changes.

A lot of lines changed, but not much content change yet.

18 years agoMention the minidump feature.
delphij [Fri, 21 Apr 2006 16:22:01 +0000 (16:22 +0000)]
Mention the minidump feature.

18 years agoIn nexus_teardown_intr(), actually remove the handler.
marcel [Fri, 21 Apr 2006 16:12:28 +0000 (16:12 +0000)]
In nexus_teardown_intr(), actually remove the handler.

MFC after: 1 day

18 years agoMFp4:
imp [Fri, 21 Apr 2006 13:58:51 +0000 (13:58 +0000)]
MFp4:
Make getc(0) polling (this has the happy side effect of saving
8 bytes in the generated code).

18 years agoMFp4: Loop forever getting characters... A kludge for now.
imp [Fri, 21 Apr 2006 13:56:26 +0000 (13:56 +0000)]
MFp4: Loop forever getting characters...  A kludge for now.

18 years agoMFp4: Integrate support for building tag support for linux booting.
imp [Fri, 21 Apr 2006 13:51:47 +0000 (13:51 +0000)]
MFp4: Integrate support for building tag support for linux booting.

18 years agoMFp4:
imp [Fri, 21 Apr 2006 13:44:58 +0000 (13:44 +0000)]
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.

18 years agoMove from arm_init.s -> .S. #ifdef linux vs freebsd defaults for the
imp [Fri, 21 Apr 2006 13:40:26 +0000 (13:40 +0000)]
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.

18 years agoAdd minidump.h for pc98.
nyan [Fri, 21 Apr 2006 12:13:59 +0000 (12:13 +0000)]
Add minidump.h for pc98.

18 years agoMFi386: revision 1.554 (add minidump_machdep.c).
nyan [Fri, 21 Apr 2006 12:13:11 +0000 (12:13 +0000)]
MFi386: revision 1.554 (add minidump_machdep.c).

18 years agoMFi386: revision 1.625.
nyan [Fri, 21 Apr 2006 12:12:21 +0000 (12:12 +0000)]
MFi386: revision 1.625.

18 years agoBecause optarg and optind are defined in unistd.h,
delphij [Fri, 21 Apr 2006 09:39:51 +0000 (09:39 +0000)]
Because optarg and optind are defined in unistd.h,
remove the defination here.

18 years agoAllow for nmbclusters and maxsockets to be increased via sysctl.
ps [Fri, 21 Apr 2006 09:25:40 +0000 (09:25 +0000)]
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.

18 years agoMFp4: formatting nits and minor style changes that likely won't matter.
imp [Fri, 21 Apr 2006 07:45:57 +0000 (07:45 +0000)]
MFp4: formatting nits and minor style changes that likely won't matter.

18 years agoAllow one to enable building tags. Check the size of the boot imag.
imp [Fri, 21 Apr 2006 07:41:36 +0000 (07:41 +0000)]
Allow one to enable building tags.  Check the size of the boot imag.

18 years agoMFp4:
imp [Fri, 21 Apr 2006 07:29:14 +0000 (07:29 +0000)]
MFp4:

On the KB9202 go ahead and enable the flash controller so the boot
loader can access the parallel flash.

18 years agoUpdate for rev 1.205 of vm_mmap.c.
trhodes [Fri, 21 Apr 2006 07:22:55 +0000 (07:22 +0000)]
Update for rev 1.205 of vm_mmap.c.

Submitted by: fanf

18 years agoMFp4:
imp [Fri, 21 Apr 2006 07:19:22 +0000 (07:19 +0000)]
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).

18 years agoIt seems that POSIX would rather ENODEV returned in place of EINVAL when
trhodes [Fri, 21 Apr 2006 07:17:25 +0000 (07:17 +0000)]
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

18 years agoRemove what I believe are two useless ifdefs. If a user or administrator
trhodes [Fri, 21 Apr 2006 07:14:25 +0000 (07:14 +0000)]
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).

18 years agoMFp4:
imp [Fri, 21 Apr 2006 07:12:12 +0000 (07:12 +0000)]
MFp4:
Minor diffs to reduce diffs to p4.

18 years agospi flash updating boot loader. upload this file for the recovery
imp [Fri, 21 Apr 2006 06:51:08 +0000 (06:51 +0000)]
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...

18 years agoiic eeprom updating boot loader. upload this file for the recovery
imp [Fri, 21 Apr 2006 06:48:52 +0000 (06:48 +0000)]
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...

18 years agoAdd boot0iic and boot0spi. These are 'shortcut' boot loaders designed
imp [Fri, 21 Apr 2006 06:43:32 +0000 (06:43 +0000)]
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.

18 years agoOops. Minidumps were developed on 6.x, in without the small pv entry code.
peter [Fri, 21 Apr 2006 04:50:18 +0000 (04:50 +0000)]
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.

18 years agoTeach libkvm how to read minidumps. It turns out that minidumps are
peter [Fri, 21 Apr 2006 04:32:51 +0000 (04:32 +0000)]
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.

18 years agoMerge minidumps from amd64 where they were originally developed.
peter [Fri, 21 Apr 2006 04:28:43 +0000 (04:28 +0000)]
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.

18 years agoIntroduce minidumps. Full physical memory crash dumps are still available
peter [Fri, 21 Apr 2006 04:24:50 +0000 (04:24 +0000)]
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.

18 years agoSpelling/grammar fixes.
jkoshy [Fri, 21 Apr 2006 01:33:04 +0000 (01:33 +0000)]
Spelling/grammar fixes.

MFC after: 1 week

18 years ago- ipmi is a device, not an option (1)
brueffer [Thu, 20 Apr 2006 18:29:59 +0000 (18:29 +0000)]
- ipmi is a device, not an option (1)
- use standard formatting for authors

Submitted by: Pawel Worach <pawel.worach@gmail.com> (1)

18 years agoAfter some discussion we believe that having SERVERS to REQUIRE:
delphij [Thu, 20 Apr 2006 12:30:12 +0000 (12:30 +0000)]
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

18 years agoFix x.fmt
ache [Thu, 20 Apr 2006 11:00:52 +0000 (11:00 +0000)]
Fix x.fmt

PR:     88222
Submitted by:   Anders Lindquist <andersl@saaf.se>

18 years agogeli(8) provides keys on newsession time, so remove CRD_F_KEY_EXPLICIT flag
pjd [Thu, 20 Apr 2006 06:33:46 +0000 (06:33 +0000)]
geli(8) provides keys on newsession time, so remove CRD_F_KEY_EXPLICIT flag
as HW crypto drivers don't support it.

18 years agopadlock(4) doesn't support explicitly provided keys yet.
pjd [Thu, 20 Apr 2006 06:31:44 +0000 (06:31 +0000)]
padlock(4) doesn't support explicitly provided keys yet.
Return an error instead of encrypting/decrypting data with a wrong key.

18 years agoadd debug msg
sam [Thu, 20 Apr 2006 05:03:21 +0000 (05:03 +0000)]
add debug msg

18 years agoSet the rid for the resoruce obtained from rman_reserve_resource.
imp [Thu, 20 Apr 2006 04:21:27 +0000 (04:21 +0000)]
Set the rid for the resoruce obtained from rman_reserve_resource.

18 years agoSet the rid for any resource obtained from rman_reserve_resource.
imp [Thu, 20 Apr 2006 04:20:41 +0000 (04:20 +0000)]
Set the rid for any resource obtained from rman_reserve_resource.

Reviewed by: wollman, jmg (as were the other commits fixing this problem)

18 years agoSet the rid for any resource obtained from rman_resource_reserve.
imp [Thu, 20 Apr 2006 04:19:10 +0000 (04:19 +0000)]
Set the rid for any resource obtained from rman_resource_reserve.

18 years agoSet the rid of the resource obtained from rman_reserve_resource.
imp [Thu, 20 Apr 2006 04:18:30 +0000 (04:18 +0000)]
Set the rid of the resource obtained from rman_reserve_resource.

18 years agoSet the rid for a resoruce allocated with rman_reserve_resource.
imp [Thu, 20 Apr 2006 04:16:34 +0000 (04:16 +0000)]
Set the rid for a resoruce allocated with rman_reserve_resource.

18 years agoSet the rid for any resources that are allocated at the level where
imp [Thu, 20 Apr 2006 04:16:02 +0000 (04:16 +0000)]
Set the rid for any resources that are allocated at the level where
they first emerge from the rman_* system.

18 years agoWhen returning a resource that we've allocated with rman_reserve_resource,
imp [Thu, 20 Apr 2006 04:12:02 +0000 (04:12 +0000)]
When returning a resource that we've allocated with rman_reserve_resource,
go ahead and set the rid for that resource.

18 years agoSet the rid of the resource we're about to return to the user.
imp [Thu, 20 Apr 2006 04:10:27 +0000 (04:10 +0000)]
Set the rid of the resource we're about to return to the user.

18 years agoFree another memory leak when dealing with disk notification.
ps [Thu, 20 Apr 2006 03:05:02 +0000 (03:05 +0000)]
Free another memory leak when dealing with disk notification.

18 years agoconst'ify resource_spec to note that we won't be changing anything while
jmg [Thu, 20 Apr 2006 01:44:16 +0000 (01:44 +0000)]
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...

18 years agor_spare1 and r_spare2 aren't needed. They aren't used. They can't be
imp [Wed, 19 Apr 2006 21:25:55 +0000 (21:25 +0000)]
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)