]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
16 years agoThis commit was generated by cvs2svn to compensate for changes in r175801,
des [Tue, 29 Jan 2008 20:22:00 +0000 (20:22 +0000)]
This commit was generated by cvs2svn to compensate for changes in r175801,
which included commits to RCS files with non-trunk default branches.

16 years agoMerge r412 from vendor, which reintroduces _OPENPAM. See comment in the
des [Tue, 29 Jan 2008 20:22:00 +0000 (20:22 +0000)]
Merge r412 from vendor, which reintroduces _OPENPAM.  See comment in the
code for explanation.  Hopefully, this will forestall any reports of
breakage in OpenPAM-aware ports.

MFC after: 3 days

16 years agoSome clarifications to make keyboard configuration under syscons.
trhodes [Tue, 29 Jan 2008 18:28:50 +0000 (18:28 +0000)]
Some clarifications to make keyboard configuration under syscons.

PR: 89325
Submitted by: Oliver Fromme <olli@secnetix.de>
Reviewed by: emax

16 years agoUpdate this manual page to describe the extattr_list_file() and the
trhodes [Tue, 29 Jan 2008 18:15:38 +0000 (18:15 +0000)]
Update this manual page to describe the extattr_list_file() and the
extattr_list_fd() functions.

PR: 108142
Submitted by: Richard Dawe <rich@phekda.gotadsl.co.uk>
Reviewed by: kientzle

16 years agoAn average consumer of fts(3) that avoids keeping pointers to old
yar [Tue, 29 Jan 2008 17:50:29 +0000 (17:50 +0000)]
An average consumer of fts(3) that avoids keeping pointers to old
FTSENTs and uses only what fts_read() has just returned can rely
on fts_path being NUL-terminated.  Under these conditions, a plain
vanilla "%s" format can be safely used to printf an fts_path.

OK'ed by: rwatson

16 years ago\jedi-mind-trick{this is not the file you were looking for}
obrien [Tue, 29 Jan 2008 16:17:42 +0000 (16:17 +0000)]
\jedi-mind-trick{this is not the file you were looking for}

16 years agoThis commit was generated by cvs2svn to compensate for changes in r175790,
obrien [Tue, 29 Jan 2008 16:12:06 +0000 (16:12 +0000)]
This commit was generated by cvs2svn to compensate for changes in r175790,
which included commits to RCS files with non-trunk default branches.

16 years agoBring in fix for Binutils PR other/16240: Check for a failure return from
obrien [Tue, 29 Jan 2008 16:12:06 +0000 (16:12 +0000)]
Bring in fix for Binutils PR other/16240: Check for a failure return from
cplus_demangle_type.  This is the rev 1.50-1.51 change.

Our addr2line, etc.. would crash if used on C++ code that contains
certain symbol types.  One example is
_ZN13PatternDriver23StringScalarDeleteValueC1ERKNS_25ConflateStringScalarValueERKNS_25AbstractStringScalarValueERKNS_12TemplateEnumINS_12pdcomplementELZNS_16complement_namesEELZNS_14COMPLEMENTENUMEEEE

16 years agoFix link state handling in bfe(4).
yongari [Tue, 29 Jan 2008 02:15:11 +0000 (02:15 +0000)]
Fix link state handling in bfe(4).
 o conversion to callout(9) API.
 o add a missing driver lock in bfe_ifmedia_sts().
 o use our callout to drive watchdog timer.
 o restart Tx routine if pending queued packets are present in
   watchdog handler.
 o unarm watchdog timer only if there are no queued packets.
 o don't blindly reset phy and let phy driver handle link change
   request in bfe_init_locked().
 o return the status of mii_mediachg() to caller in
   bfe_ifmedia_upd(). Previously it always returned 0 to caller.
 o add check for IFF_DRV_RUNNING flag as well as IFF_DRV_OACTIVE
   in bfe_start_locked().
 o implement miibus_statchg method that keeps track of current
   link state changes as well as negotiated speed/duplex/
   flow-control configuration.
   Reprogram MAC to appropriate duplex state. Flow-control
   configuration was also implemented but commented out at the
   moment. The flow-control configuration will be enabled again
   after we have general flow-control framework in mii layer.

Reported by: Yousif Hassan < yousif () alumni ! jmu ! edu >
Tesdted by: Yousif Hassan < yousif () alumni ! jmu ! edu >

16 years agoDon't coredump when executed with -o.
delphij [Tue, 29 Jan 2008 00:20:00 +0000 (00:20 +0000)]
Don't coredump when executed with -o.

16 years agoProperly Xref device.hints.5.
trhodes [Tue, 29 Jan 2008 00:13:20 +0000 (00:13 +0000)]
Properly Xref device.hints.5.

Noticed by: ru

16 years agoUse calloc() when requesting zero'ed memory allocation rather than rolling
delphij [Tue, 29 Jan 2008 00:06:44 +0000 (00:06 +0000)]
Use calloc() when requesting zero'ed memory allocation rather than rolling
our own.

16 years agoForced commit to note that the previous revision also covered:
brueffer [Mon, 28 Jan 2008 23:08:18 +0000 (23:08 +0000)]
Forced commit to note that the previous revision also covered:

PR: 119683
Submitted by: Adam McDougall <mcdouga9@egr.msu.edu>

16 years agoAvoid data copying when it is possible.
mav [Mon, 28 Jan 2008 22:37:17 +0000 (22:37 +0000)]
Avoid data copying when it is possible.
bpf_filter() is able to work directly on mbuf chain.

16 years agoUse a for loop in find_kld_address() as in kgdb_auto_load_klds() and
jhb [Mon, 28 Jan 2008 21:45:09 +0000 (21:45 +0000)]
Use a for loop in find_kld_address() as in kgdb_auto_load_klds() and
replace the remaining goto's with continues as a result.

16 years agoAdd support for automatically loading symbols for kld's on startup:
jhb [Mon, 28 Jan 2008 21:40:10 +0000 (21:40 +0000)]
Add support for automatically loading symbols for kld's on startup:
- Add a new 'kgdb_auto_load_klds()' routine which is invoked during
  startup that walks the list of linker files and tries to find a matching
  kld on disk for each non-kernel kld.  If a kld file is found, then it
  is added as if the 'add-kld' command is invoked.  One change from
  'add-kld' is that this method attempts to use the 'pathname' from the
  linker_file structure first to try to load the file.  If that fails
  it then looks in the kernel directory followed by the directories in
  the module path.
- Move the kld file suffix handling into a separate routine so that it
  can be called standalone and to reduce duplicate code in find_kld_path().
- Cache the offsets of members of 'struct linker_file' during startup
  instead of computing them for each 'add-kld'.
- Use GDB's target_read_string() instead of direct KVM access.
- Add all resident sections from a kld by using bfd_map_over_sections() to
  build the section list rather than just adding symbols for ".text",
  ".data", ".bss", and ".rodata".
- Change the 'add-kld' command to do a y/n prompt before adding the
  symbols when run interactively to match 'add-symbol-file'.

MFC after: 1 week

16 years agoRemove the warnx() from kgdb_lookup() so that we don't emit a warning about
jhb [Mon, 28 Jan 2008 20:33:19 +0000 (20:33 +0000)]
Remove the warnx() from kgdb_lookup() so that we don't emit a warning about
optional symbols that are missing (e.g. kgdb complains about _stoppcbs and
_stopped_cpus on UP kernels).  Instead, callers that really want their
symbols to be present now do explicitly warnx() about the missing symbol.

16 years agoIf the quiet flag is specified (-q), don't dump the unread portion of
jhb [Mon, 28 Jan 2008 20:31:30 +0000 (20:31 +0000)]
If the quiet flag is specified (-q), don't dump the unread portion of
the message buffer on startup.

16 years agoAdd a wrapper function that bound checks writes to the dump device.
ru [Mon, 28 Jan 2008 19:04:07 +0000 (19:04 +0000)]
Add a wrapper function that bound checks writes to the dump device.

16 years agoCorrect the kernel config hint in a printf statement.
brueffer [Mon, 28 Jan 2008 18:13:03 +0000 (18:13 +0000)]
Correct the kernel config hint in a printf statement.

Submitted by: R.Mahmatkhanov <cvs-src@yandex.ru>
Reviewed by: scottl
Approved by: rwatson (mentor)
MFC after: 3 days

16 years agoRemove references to the obsolete card(4) manpage.
brueffer [Mon, 28 Jan 2008 18:08:41 +0000 (18:08 +0000)]
Remove references to the obsolete card(4) manpage.

16 years agoMake sure that the termid type is initialized to AU_IPv4 by default.
csjp [Mon, 28 Jan 2008 17:33:46 +0000 (17:33 +0000)]
Make sure that the termid type is initialized to AU_IPv4 by default.
This makes sure that process tokens credentials with un-initialized
audit contexts are handled correctly.  Currently, when invariants are
enabled, this change fixes a panic by ensuring that we have a valid
termid family.  Also, this fixes token generation for process tokens
making sure that userspace is always getting a valid token.

This is consistent with what Solaris does when an audit context is
un-initialized.

Obtained from: TrustedBSD Project
MFC after: 1 week

16 years agoDon't repeat error logging about NOP message sending if
iwasaki [Mon, 28 Jan 2008 16:21:34 +0000 (16:21 +0000)]
Don't repeat error logging about NOP message sending if
ciss_report_request() return an error (which is most likely data
underrun).

Noticed by: Mark Atkinson
MFC after: 1 week

16 years agoOnly reset driver state when a hardware error is detected.
gallatin [Mon, 28 Jan 2008 13:20:51 +0000 (13:20 +0000)]
Only reset driver state when a hardware error is detected.
Preserve warning but do not reset if we enter the routine
without seeing a hardware error.

16 years ago- Fix a comment about prison.
rrs [Mon, 28 Jan 2008 10:34:38 +0000 (10:34 +0000)]
- Fix a comment about prison.
- Fix it so the VRF is captured while locks are held.
MFC after: 1 week

16 years ago- Change back to using prioity 0. Which means don't change the
rrs [Mon, 28 Jan 2008 10:33:41 +0000 (10:33 +0000)]
- Change back to using prioity 0. Which means don't change the
  prioity when running the thread. (this is for the sctp_interator thread).

MFC after: 1 week

16 years ago- Fix a bug where the socket may have been closed which
rrs [Mon, 28 Jan 2008 10:31:12 +0000 (10:31 +0000)]
- Fix a bug where the socket may have been closed which
  could cause a crash in the auth code.
Obtained from: Michael Tuexen
MFC after: 1 week

16 years ago- Fixes a comparison wrap issue with sack gap ack blocks that
rrs [Mon, 28 Jan 2008 10:25:43 +0000 (10:25 +0000)]
- Fixes a comparison wrap issue with sack gap ack blocks that
  span the 32 bit roll over mark.

16 years agoProperly return the error from mls_subject_privileged() in the ifnet
rwatson [Mon, 28 Jan 2008 10:20:18 +0000 (10:20 +0000)]
Properly return the error from mls_subject_privileged() in the ifnet
relabel check for MLS rather than returning 0 directly.

This problem didn't result in a vulnerability currently as the central
implementation of ifnet relabeling also checks for UNIX privilege, and
we currently don't guarantee containment for the root user in mac_mls,
but we should be using the MLS definition of privilege as well as the
UNIX definition in anticipation of supporting root containment at some
point.

MFC after: 3 days
Submitted by: Zhouyi Zhou <zhouzhouyi at gmail dot com>
Sponsored by: Google SoC 2007

16 years agoReturn errno value rather than boolean in this context.
iwasaki [Mon, 28 Jan 2008 01:57:48 +0000 (01:57 +0000)]
Return errno value rather than boolean in this context.

MFC after: 1 week

16 years agoAdjust the exponent before converting the result from double to
das [Mon, 28 Jan 2008 01:19:07 +0000 (01:19 +0000)]
Adjust the exponent before converting the result from double to
float precision. This fixes some double rounding problems for
subnormals and simplifies things a bit.

16 years agoRevive '-opt' flags which I accidentally removed.
keramida [Sun, 27 Jan 2008 16:20:36 +0000 (16:20 +0000)]
Revive '-opt' flags which I accidentally removed.

Noticed by: simon

16 years agoEnter the sleep state immediately without waiting for timeout if
iwasaki [Sun, 27 Jan 2008 16:11:04 +0000 (16:11 +0000)]
Enter the sleep state immediately without waiting for timeout if
devd(8) is not running such as the system in single user mode.

MFC after: 1 week

16 years agoAdd devctl_process_running() so that power management system driver
iwasaki [Sun, 27 Jan 2008 16:06:37 +0000 (16:06 +0000)]
Add devctl_process_running() so that power management system driver
can check whether devd(8) is running.

MFC after: 1 week

16 years agoBring the DIAGNOSTICS section in ed.4 closer to reality by removing missing
trhodes [Sun, 27 Jan 2008 15:37:49 +0000 (15:37 +0000)]
Bring the DIAGNOSTICS section in ed.4 closer to reality by removing missing
diagnostic messages and adding a few found in the code.

PR: 51891

16 years agoAdd a dummynet_enable knob to go with firewall_enable. If this knob
mtm [Sun, 27 Jan 2008 15:15:12 +0000 (15:15 +0000)]
Add a dummynet_enable knob to go with firewall_enable. If this knob
is enabled dummynet(4) is added to the list of required modules.

Discussed on: #freebsd-bugbusters (rwatson, trhodes)
PR: conf/79196
MFC after: 1 week

16 years agoRun expire even without export hook connected.
mav [Sun, 27 Jan 2008 15:01:16 +0000 (15:01 +0000)]
Run expire even without export hook connected.

PR: kern/119839

16 years agoClarify that devfs_system_ruleset should contain a name, not a number.
mtm [Sun, 27 Jan 2008 13:45:20 +0000 (13:45 +0000)]
Clarify that devfs_system_ruleset should contain a name, not a number.
Prompted by PR conf/85363

MFC after: 3 days

16 years agoAdd the -M command-line option, which will set home directory permissions.
mtm [Sun, 27 Jan 2008 10:15:36 +0000 (10:15 +0000)]
Add the -M command-line option, which will set home directory permissions.
Works both in interactive or batch mode. This is a heavily modified version
of the patch submitted in the PR.

PR: bin/105060
MFC after: 1 week

16 years agoFix memory leak when export hook is not connected.
mav [Sun, 27 Jan 2008 09:22:10 +0000 (09:22 +0000)]
Fix memory leak when export hook is not connected.

16 years agoRemove one very strange unneded if.
mav [Sun, 27 Jan 2008 08:52:41 +0000 (08:52 +0000)]
Remove one very strange unneded if.

16 years agoFix loading for case where we don't overload tcp_usrreqs by calling tcp_drop directly
kmacy [Sun, 27 Jan 2008 04:39:38 +0000 (04:39 +0000)]
Fix loading for case where we don't overload tcp_usrreqs by calling tcp_drop directly

16 years agofix DISABLE_MBUF_IOVEC case by initializing mbuf header completely
kmacy [Sun, 27 Jan 2008 04:37:02 +0000 (04:37 +0000)]
fix DISABLE_MBUF_IOVEC case by initializing mbuf header completely

16 years agoAdd to the history section.
obrien [Sun, 27 Jan 2008 03:58:22 +0000 (03:58 +0000)]
Add to the history section.

16 years agoSlightly simplify code.
mav [Sun, 27 Jan 2008 02:04:12 +0000 (02:04 +0000)]
Slightly simplify code.

16 years ago- Fix a typo in a comment.
marius [Sun, 27 Jan 2008 01:30:02 +0000 (01:30 +0000)]
- Fix a typo in a comment.
- Fix whitespace according to style(9).
- Sync the comment describing why we have to wait in nsphy_reset()
  with nsphyter_reset(). It's true that the manual tells to not do a
  reset within 500us of applying power but that's unlikely the cause
  of problems seen here. Generally having to wait 500us after a reset
  however is.

16 years agofts_pathlen is now a size_t rather than an int so a cast is needed.
jb [Sun, 27 Jan 2008 01:19:47 +0000 (01:19 +0000)]
fts_pathlen is now a size_t rather than an int so a cast is needed.
I'm not sure why warn() and err() string formatted variables need
to be right-justified.

16 years agoFix a typo in a comment.
marius [Sun, 27 Jan 2008 01:11:57 +0000 (01:11 +0000)]
Fix a typo in a comment.

16 years agoAdd a driver for the National Semiconductor DP83815, DP83843 and
marius [Sun, 27 Jan 2008 01:10:41 +0000 (01:10 +0000)]
Add a driver for the National Semiconductor DP83815, DP83843 and
DP83847 PHYs. The main reason for using a specific driver for these
PHYs are reset quirks similar to the nsphy(4) driven DP83840A.

PR: 112654
Obtained from: NetBSD
MFC after: 2 weeks
Thanks to: mlaier for testing w/ DP83815

16 years agoSort values according to style.Makefile(5).
marius [Sun, 27 Jan 2008 01:02:29 +0000 (01:02 +0000)]
Sort values according to style.Makefile(5).

16 years agoIncrease maximum DDB capture buffer size to 5MB.
rwatson [Sat, 26 Jan 2008 23:02:14 +0000 (23:02 +0000)]
Increase maximum DDB capture buffer size to 5MB.

PR: 119993
MFC after: 2 months
Suggested by: Scot Hetzel <swhetzel at gmail dot com>

16 years agoImprove multilink receive performance by netgraph item reuse.
mav [Sat, 26 Jan 2008 22:42:47 +0000 (22:42 +0000)]
Improve multilink receive performance by netgraph item reuse.

16 years agoImprove multilink xmit performance by netgraph item reuse.
mav [Sat, 26 Jan 2008 22:41:14 +0000 (22:41 +0000)]
Improve multilink xmit performance by netgraph item reuse.

16 years agoImprove multilink receive performance with fragment headers preallocation.
mav [Sat, 26 Jan 2008 22:39:05 +0000 (22:39 +0000)]
Improve multilink receive performance with fragment headers preallocation.

16 years agorx mbufs must have a pkthdr; use m_gethdr to populate the rx ring
sam [Sat, 26 Jan 2008 22:35:57 +0000 (22:35 +0000)]
rx mbufs must have a pkthdr; use m_gethdr to populate the rx ring
(and while here correct the mbuf type)

Submitted by: Sam Banks <w0lfie@clear.net.nz>
MFC after: 1 week

16 years agoAllow DDB_CAPTURE_DEFAULTBUFSIZE and DDB_CAPTURE_MAXBUFSIZE to be
rwatson [Sat, 26 Jan 2008 22:32:23 +0000 (22:32 +0000)]
Allow DDB_CAPTURE_DEFAULTBUFSIZE and DDB_CAPTURE_MAXBUFSIZE to be
overridden at compile-time using kernel options of the same names.

Rather than doing a compile-time CTASSERT of buffer sizes being
even multiples of block sizes, just adjust them at boottime, as
the failure mode is more user-friendly.

MFC after: 2 months
PR: 119993
Suggested by: Scot Hetzel <swhetzel at gmail dot com>

16 years agoOLDCARD is gone, release imp's lock.
brueffer [Sat, 26 Jan 2008 21:58:52 +0000 (21:58 +0000)]
OLDCARD is gone, release imp's lock.

Approved by: imp

16 years agoOLDCARD is long gone, so finally remove the oldcard.4 manpage.
brueffer [Sat, 26 Jan 2008 20:23:25 +0000 (20:23 +0000)]
OLDCARD is long gone, so finally remove the oldcard.4 manpage.

Confirmed by: imp

16 years agoOur fts(3) API, as inherited from 4.4BSD, suffers from integer
yar [Sat, 26 Jan 2008 17:09:40 +0000 (17:09 +0000)]
Our fts(3) API, as inherited from 4.4BSD, suffers from integer
fields in FTS and FTSENT structs being too narrow.  In addition,
the narrow types creep from there into fts.c.  As a result, fts(3)
consumers, e.g., find(1) or rm(1), can't handle file trees an ordinary
user can create, which can have security implications.

To fix the historic implementation of fts(3), OpenBSD and NetBSD
have already changed <fts.h> in somewhat incompatible ways, so we
are free to do so, too.  This change is a superset of changes from
the other BSDs with a few more improvements.  It doesn't touch
fts(3) functionality; it just extends integer types used by it to
match modern reality and the C standard.

Here are its points:

o For C object sizes, use size_t unless it's 100% certain that
  the object will be really small.  (Note that fts(3) can construct
  pathnames _much_ longer than PATH_MAX for its consumers.)

o Avoid the short types because on modern platforms using them
  results in larger and slower code.  Change shorts to ints as
  follows:

- For variables than count simple, limited things like states,
  use plain vanilla `int' as it's the type of choice in C.

- For a limited number of bit flags use `unsigned' because signed
  bit-wise operations are implementation-defined, i.e., unportable,
  in C.

o For things that should be at least 64 bits wide, use long long
  and not int64_t, as the latter is an optional type.  See
  FTSENT.fts_number aka FTS.fts_bignum.  Extending fts_number `to
  satisfy future needs' is pointless because there is fts_pointer,
  which can be used to link to arbitrary data from an FTSENT.
  However, there already are fts(3) consumers that require fts_number,
  or fts_bignum, have at least 64 bits in it, so we must allow for them.

o For the tree depth, use `long'.  This is a trade-off between making
  this field too wide and allowing for 64-bit inode numbers and/or
  chain-mounted filesystems.  On the one hand, `long' is almost
  enough for 32-bit filesystems on a 32-bit platform (our ino_t is
  uint32_t now).  On the other hand, platforms with a 64-bit (or
  wider) `long' will be ready for 64-bit inode numbers, as well as
  for several 32-bit filesystems mounted one under another.  Note
  that fts_level has to be signed because -1 is a magic value for it,
  FTS_ROOTPARENTLEVEL.

o For the `nlinks' local var in fts_build(), use `long'.  The logic
  in fts_build() requires that `nlinks' be signed, but our nlink_t
  currently is uint16_t.  Therefore let's make the signed var wide
  enough to be able to represent 2^16-1 in pure C99, and even 2^32-1
  on a 64-bit platform.  Perhaps the logic should be changed just
  to use nlink_t, but it can be done later w/o breaking fts(3) ABI
  any more because `nlinks' is just a local var.

This commit also inludes supporting stuff for the fts change:

o Preserve the old versions of fts(3) functions through libc symbol
versioning because the old versions appeared in all our former releases.

o Bump __FreeBSD_version just in case.  There is a small chance that
some ill-written 3-rd party apps may fail to build or work correctly
if compiled after this change.

o Update the fts(3) manpage accordingly.  In particular, remove
references to fts_bignum, which was a FreeBSD-specific hack to work
around the too narrow types of FTSENT members.  Now fts_number is
at least 64 bits wide (long long) and fts_bignum is an undocumented
alias for fts_number kept around for compatibility reasons.  According
to Google Code Search, the only big consumers of fts_bignum are in
our own source tree, so they can be fixed easily to use fts_number.

o Mention the change in src/UPDATING.

PR: bin/104458
Approved by: re (quite a while ago)
Discussed with: deischen (the symbol versioning part)
Reviewed by: -arch (mostly silence); das (generally OK, but we didn't
agree on some types used; assuming that no objections on
-arch let me to stick to my opinion)

16 years agoGenerally, anything that runs rc.d scripts internally should
mtm [Sat, 26 Jan 2008 14:02:19 +0000 (14:02 +0000)]
Generally, anything that runs rc.d scripts internally should
start using the quiet prefix (i.e. quietstart, quietstop, etc...).

16 years agoRename DB_ constants in db_capture.c to DDB_ so that when they are
rwatson [Sat, 26 Jan 2008 13:55:52 +0000 (13:55 +0000)]
Rename DB_ constants in db_capture.c to DDB_ so that when they are
exposed as kernel compile options, they have more meaningful names.

PR: 119993
MFC after: 2 months
Suggested by: Scot Hetzel <swhetzel at gmail dot com>

16 years agoGenerally, anything that runs rc.d scripts internally should
mtm [Sat, 26 Jan 2008 13:50:38 +0000 (13:50 +0000)]
Generally, anything that runs rc.d scripts internally should
start using the quiet prefix (i.e. quietstart, quietstop, etc...).

16 years agoUse 'quietstart' so as not to get spammed with informational diagnostics.
mtm [Sat, 26 Jan 2008 13:37:48 +0000 (13:37 +0000)]
Use 'quietstart' so as not to get spammed with informational diagnostics.

16 years agoExplain how the passno field in /etc/fstab works with fsck
mpp [Sat, 26 Jan 2008 13:03:35 +0000 (13:03 +0000)]
Explain how the passno field in /etc/fstab works with fsck
and quotacheck in some more detail.

16 years agoDocument the no-op -r option of BSD xargs(1).
keramida [Sat, 26 Jan 2008 12:38:19 +0000 (12:38 +0000)]
Document the no-op -r option of BSD xargs(1).

PR: docs/106416
Submitted by: Pete Slagle, freebsd-stable at voidcaptain.com
MFC after: 3 days

16 years agoRemove Giant acquisition around soreceive() and sosend() in fifofs. The
rwatson [Sat, 26 Jan 2008 12:34:23 +0000 (12:34 +0000)]
Remove Giant acquisition around soreceive() and sosend() in fifofs.  The
bug that caused us to reintroduce it is believed to be fixed, and Kris
says he no longer sees problems with fifofs in highly parallel builds.
If this works out, we'll MFC it for 7.1.

MFC after: 3 months
Pointed out by: kris

16 years agoSync up quotacheck's preen.c with fsck's. This makes quotacheck
mpp [Sat, 26 Jan 2008 12:03:26 +0000 (12:03 +0000)]
Sync up quotacheck's preen.c with fsck's.  This makes quotacheck
process parallel checks in the same way as fsck, since fsck supports
pass numbers other than 0, 1 or 2.  Without this, quotacheck would
ignore file systems with pass numbers > 2.

The -l (maxrun) option is now deprecated and can be tuned with pass
numbers in /etc/fstab if needed.

16 years agoRe-implement: do not silently fail when a command is not carried
mtm [Sat, 26 Jan 2008 11:22:12 +0000 (11:22 +0000)]
Re-implement: do not silently fail when a command is not carried
out because the rc.conf(5) variable was not enabled. Display a
message that the command wasn't run and offer suggestions on
what the user can do.

Implement a quiet prefix, which will disable some diagnostics. The
fast prefix also implies quiet. During boot we use either fast or
quiet. For shutdown we already use 'faststop'. So, this informational
message should only appear during interactive use.

An additional benefit of having a quiet prefix is that we can start
putting some of our diagnostic messages behind this knob and start
"de-cluttering" the console during boot and shutdown.

16 years agoCatch up with revision 1.18 of dcons_os.c and add an example of how to use
trhodes [Sat, 26 Jan 2008 06:50:14 +0000 (06:50 +0000)]
Catch up with revision 1.18 of dcons_os.c and add an example of how to use
dcons(4) as a valid gdb port.

PR:             118490
Submitted by:   Alexandre Kovalenko <alex.kovalenko@verizon.net>

16 years agoIn rev. 1.156, the convertion of the minor number to the unit number
kib [Sat, 26 Jan 2008 06:09:23 +0000 (06:09 +0000)]
In rev. 1.156, the convertion of the minor number to the unit number
resulted in the argument to the make_dev() to be a unit number.

Correct this by supplying a minor number to make_dev(), and using
the unit number for the calculation of the slave tty name.

Reported and tested by: Peter Holm
Reviewed by: jhb
Yet another pointy hat to: kib
MFC after: 1 day

16 years agoOne of my powerbooks has this chip in it..
julian [Sat, 26 Jan 2008 05:11:09 +0000 (05:11 +0000)]
One of my powerbooks has this chip in it..
Confirmed by looking at netbsd.. they have also added this.
checked by grehen
MFC After: 3 days

16 years agoAllow arbitrary baud rates, not just the standard ones.
emaste [Sat, 26 Jan 2008 04:30:48 +0000 (04:30 +0000)]
Allow arbitrary baud rates, not just the standard ones.

16 years agoadd opt_global.h dependency
kmacy [Sat, 26 Jan 2008 01:00:56 +0000 (01:00 +0000)]
add opt_global.h dependency

16 years agoFix a harmless type error in 1.9.
bde [Fri, 25 Jan 2008 21:09:21 +0000 (21:09 +0000)]
Fix a harmless type error in 1.9.

16 years agoFix a bug where a thread that hit the race where the sleep timeout fires
jhb [Fri, 25 Jan 2008 19:44:46 +0000 (19:44 +0000)]
Fix a bug where a thread that hit the race where the sleep timeout fires
while the thread does not hold the thread lock would stop blocking for
subsequent interruptible sleeps and would always immediately fail the
sleep with EWOULDBLOCK instead (even sleeps that didn't have a timeout).

Some background:
- KSE has a facility for allowing one thread to interrupt another thread.
  During this process, the target thread aborts any interruptible sleeps
  much as if the target thread had a pending signal.  Once the target
  thread acknowledges the interrupt, normal sleep handling resumes.  KSE
  manages this via the TDF_INTERRUPTED flag.  Specifically, it sets the
  flag when it sends an interrupt to another thread and clears it when
  the interrupt is acknowledged.  (Note that this is purely a software
  interrupt sort of thing and has no relation to hardware interrupts
  or kernel interrupt threads.)
- The old code for handling the sleep timeout race handled the race
  by setting the TDF_INTERRUPT flag and faking a KSE-style thread
  interrupt to the thread in the process of going to sleep.  It probably
  should have just checked the TDF_TIMEOUT flag in sleepq_catch_signals()
  instead.
- The bug was that the sleepq code would set TDF_INTERRUPT but it was
  never cleared.  The sleepq code couldn't safely clear it in case there
  actually was a real KSE thread interrupt pending for the target thread
  (in fact, the sleepq timeout actually stomped on said pending interrupt).
  Thus, any future interruptible sleeps (*sleep(.. PCATCH ..) or
  cv_*wait_sig()) would see the TDF_INTERRUPT flag set and immediately
  fail with EWOULDBLOCK.  The flag could be cleared if the thread belonged
  to a KSE process and another thread posted an interrupt to the original
  thread.  However, in the more common case of a non-KSE process, the
  thread would pretty much stop sleeping.
- Fix the bug by just setting TDF_TIMEOUT in the sleepq timeout code and
  not messing with TDF_INTERRUPT and td_intrval.  With yesterday's fix to
  fix sleepq_switch() to check TDF_TIMEOUT, this is now sufficient.

MFC after: 3 days

16 years agoUpdate the timestamp regexps in syncstamp() and monostamp() for > 99999
jhb [Fri, 25 Jan 2008 19:24:12 +0000 (19:24 +0000)]
Update the timestamp regexps in syncstamp() and monostamp() for > 99999
traces where there isn't any leading whitespace before the record number
in the ktrdump output.

16 years agoBackout previous commit. It's going to clutter the console
mtm [Fri, 25 Jan 2008 16:44:34 +0000 (16:44 +0000)]
Backout previous commit. It's going to clutter the console
during boot and shutdown. I think I'll hide it behind autoboot or
maybe take brooks@ suggestion and implement a different command
prefix for booting/shutdown purposes, but in any case it needs more
thought and attention.

Noticed by: ceri
Pointyhat to: mtm

16 years agoClarify in what formats the grouplist for the '-G' switch may be accepted.
mtm [Fri, 25 Jan 2008 15:54:14 +0000 (15:54 +0000)]
Clarify in what formats the grouplist for the '-G' switch may be accepted.

Submitted by: Eygene Ryabinkin <rea-fbsd@codelabs.ru>

16 years agoIf the rc.conf(5) variable for a script is not enabled do not fail
mtm [Fri, 25 Jan 2008 15:06:26 +0000 (15:06 +0000)]
If the rc.conf(5) variable for a script is not enabled do not fail
silently. Display a message that the command wasn't run and make
possible suggestions for what to do.

PR:    conf/118770
MFC after: 1 week

16 years agoHide ipfw internal data structures behind IPFW_INTERNAL rather than
rwatson [Fri, 25 Jan 2008 14:38:27 +0000 (14:38 +0000)]
Hide ipfw internal data structures behind IPFW_INTERNAL rather than
exposing them to all consumers of ip_fw.h.  These structures are
used in both ipfw(8) and ipfw(4), but not part of the user<->kernel
interface for other applications to use, rather, shared
implementation.

MFC after: 3 days
Reported by: Paul Vixie <paul at vix dot com>

16 years agoRev. 1.6 made it impossible to use rc.d/kerberos with the krb5 port.
mtm [Fri, 25 Jan 2008 05:23:01 +0000 (05:23 +0000)]
Rev. 1.6 made it impossible to use rc.d/kerberos with the krb5 port.
Re-implement the change so that the script once again works with
the krb5 port.

Submitted by: kensmith (slightly modified)
MFC after: 3 days

16 years agoCalculate baud rate divisor instead of allowing only a fixed set of
emaste [Fri, 25 Jan 2008 02:41:44 +0000 (02:41 +0000)]
Calculate baud rate divisor instead of allowing only a fixed set of
standard rates.

Obtained from OpenBSD
  src/sys/dev/usb/uftdi.c 1.29
  src/sys/dev/usb/uftdireg.h 1.11

OpenBSD revisions noted by: ticso, on hackers

16 years agoFix a race in the sleepqueue timeout code that resulted in sleeps not
jhb [Fri, 25 Jan 2008 02:09:38 +0000 (02:09 +0000)]
Fix a race in the sleepqueue timeout code that resulted in sleeps not
being properly cancelled by a timeout.  In general there is a race
between a the sleepq timeout handler firing while the thread is still
in the process of going to sleep.  In 6.x with sched_lock, the race was
largely protected by sched_lock.  The only place it was "exposed" and had
to be handled was while checking for any pending signals in
sleepq_catch_signals().

With the thread lock changes, the thread lock is dropped in between
sleepq_add() and sleepq_*wait*() opening up a new window for this race.
Thus, if the timeout fired while the sleeping thread was in between
sleepq_add() and sleepq_*wait*(), the thread would be marked as timed
out, but the thread would not be dequeued and sleepq_switch() would
still block the thread until it was awakened via some other means.  In
the case of pause(9) where there is no other wakeup, the thread would
never be awakened.

Fix this by teaching sleepq_switch() to check if the thread has had its
sleep canceled before blocking by checking the TDF_TIMEOUT flag and
aborting the sleep and dequeueing the thread if it is set.

MFC after: 3 days
Reported by: dwhite, peter

16 years agoOnce the release goes out, RELENG_7_* will need approval from so@.
cperciva [Thu, 24 Jan 2008 22:07:03 +0000 (22:07 +0000)]
Once the release goes out, RELENG_7_* will need approval from so@.

Approved by: core (two months ago)

16 years agoMove the code for working with kld's out into its own file.
jhb [Thu, 24 Jan 2008 19:11:13 +0000 (19:11 +0000)]
Move the code for working with kld's out into its own file.

16 years agoWhen asked to use kqueue, AIO stores its internal state in the
dumbbell [Thu, 24 Jan 2008 17:10:19 +0000 (17:10 +0000)]
When asked to use kqueue, AIO stores its internal state in the
`kn_sdata' member of the newly registered knote. The problem is that
this member is overwritten by a call to kevent(2) with the EV_ADD flag,
targetted at the same kevent/knote. For instance, a userland application
may set the pointer to NULL, leading to a panic.

A testcase was provided by the submitter.

PR: kern/118911
Submitted by: MOROHOSHI Akihiko <moro@remus.dti.ne.jp>
MFC after: 1 day

16 years agoDo not dereference NULL scp in the case the screen is not opened.
kib [Thu, 24 Jan 2008 15:37:48 +0000 (15:37 +0000)]
Do not dereference NULL scp in the case the screen is not opened.
Instead, return ENXIO to the ioctl caller.

Reported and tested by: Pawel Worach <pawel.worach gmail com>
Discussed with: markus
MFC after: 3 days

16 years agoReflect lockcount() axing and lockmgr() prototype changing.
attilio [Thu, 24 Jan 2008 14:17:52 +0000 (14:17 +0000)]
Reflect lockcount() axing and lockmgr() prototype changing.

16 years ago- sched_4bsd is no longer a default system scheduler on some
ru [Thu, 24 Jan 2008 13:48:20 +0000 (13:48 +0000)]
- sched_4bsd is no longer a default system scheduler on some
  architectures, so call it "traditional" instead.

- sched_ule is no longer buggy or experimental (according to
  rev. 1.7 of sched_ule(4)), so don't call it experimental
  (reported by a user on stable@).

Reviewed by: rwatson

16 years agoBump __FreeBSD_version in order to signal:
attilio [Thu, 24 Jan 2008 12:37:54 +0000 (12:37 +0000)]
Bump __FreeBSD_version in order to signal:
- lockmgr() prototype changing
- lockcount() axing
- LOCKMGR_ASSERT() axing

16 years agoCleanup lockmgr interface and exported KPI:
attilio [Thu, 24 Jan 2008 12:34:30 +0000 (12:34 +0000)]
Cleanup lockmgr interface and exported KPI:
- Remove the "thread" argument from the lockmgr() function as it is
  always curthread now
- Axe lockcount() function as it is no longer used
- Axe LOCKMGR_ASSERT() as it is bogus really and no currently used.
  Hopefully this will be soonly replaced by something suitable for it.
- Remove the prototype for dumplockinfo() as the function is no longer
  present

Addictionally:
- Introduce a KASSERT() in lockstatus() in order to let it accept only
  curthread or NULL as they should only be passed
- Do a little bit of style(9) cleanup on lockmgr.h

KPI results heavilly broken by this change, so manpages and
FreeBSD_version will be modified accordingly by further commits.

Tested by: matteo

16 years agoThere is no PUC_FASTINTR option anymore.
marck [Thu, 24 Jan 2008 12:09:59 +0000 (12:09 +0000)]
There is no PUC_FASTINTR option anymore.

MFC after: 2 weeks

16 years ago- Reduce how much ZFS caches by default. This is another change to mitigate
pjd [Thu, 24 Jan 2008 11:24:16 +0000 (11:24 +0000)]
- Reduce how much ZFS caches by default. This is another change to mitigate
  'kmem_map too small panics'.
- Print two warnings if there is not enough memory and not enough address
  space.
- Improve comment.

16 years agoChange type of kmem_used() and kmem_size() functions to uint64_t, so it
pjd [Thu, 24 Jan 2008 11:21:54 +0000 (11:21 +0000)]
Change type of kmem_used() and kmem_size() functions to uint64_t, so it
doesn't overflow in arc.c in this check:

if (kmem_used() > (kmem_size() * 4) / 5)
return (1);

With this bug ZFS almost doesn't cache.

Only 32bit machines are affected that have vm.kmem_size set to values >=1GB.

Reported by: David Taylor <davidt@yadt.co.uk>

16 years agoReplace the last susers calls in netinet6/ with privilege checks.
bz [Thu, 24 Jan 2008 08:25:59 +0000 (08:25 +0000)]
Replace the last susers calls in netinet6/ with privilege checks.

Introduce a new privilege allowing to set certain IP header options
(hop-by-hop, routing headers).

Leave a few comments to be addressed later.

Reviewed by: rwatson (older version, before addressing his comments)

16 years agoDifferentiate between addifaddr and delifaddr for the privilege check.
bz [Thu, 24 Jan 2008 08:14:38 +0000 (08:14 +0000)]
Differentiate between addifaddr and delifaddr for the privilege check.

Reviewed by: rwatson
MFC after: 2 weeks

16 years agoRemove one more alpha leftover.
ru [Thu, 24 Jan 2008 07:43:09 +0000 (07:43 +0000)]
Remove one more alpha leftover.

16 years agoMany improvements that have been collected over time:
scottl [Thu, 24 Jan 2008 07:26:53 +0000 (07:26 +0000)]
Many improvements that have been collected over time:

- Improve error handling for load operations.
- Fix a memory corruption bug when using certain linux management apps.
- Allocate all commands up front to avoid OOM deadlocks later on.

16 years agoFlag a hack.
ru [Thu, 24 Jan 2008 07:25:13 +0000 (07:25 +0000)]
Flag a hack.

16 years agoStyle.
ru [Thu, 24 Jan 2008 07:24:30 +0000 (07:24 +0000)]
Style.