]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
18 years agoBy a popular demand, add "nomakeoptions" as an alias to "nomakeoption".
ru [Thu, 3 Nov 2005 21:09:59 +0000 (21:09 +0000)]
By a popular demand, add "nomakeoptions" as an alias to "nomakeoption".

18 years agoAdd stoppcbs[] arrays on Alpha and sparc64 and have each CPU save its
jhb [Thu, 3 Nov 2005 21:08:20 +0000 (21:08 +0000)]
Add stoppcbs[] arrays on Alpha and sparc64 and have each CPU save its
current context in the IPI_STOP handler so that we can get accurate stack
traces of threads on other CPUs on these two archs like we do now on i386
and amd64.

Tested on: alpha, sparc64

18 years agoFix 'show allpcpu' ddb command on non-x86. CPU IDs are in the range 0 ..
jhb [Thu, 3 Nov 2005 21:06:29 +0000 (21:06 +0000)]
Fix 'show allpcpu' ddb command on non-x86.  CPU IDs are in the range 0 ..
mp_maxid, not 0 .. mp_maxid - 1.  The result was that the highest numbered
CPU was skipped on Alpha and sparc64.

MFC after: 1 week

18 years agoFix build breakage on tinderbox.
jkim [Thu, 3 Nov 2005 20:27:38 +0000 (20:27 +0000)]
Fix build breakage on tinderbox.

18 years agoFix for a crash (from nfs_lookup() in an error case).
ps [Thu, 3 Nov 2005 19:24:54 +0000 (19:24 +0000)]
Fix for a crash (from nfs_lookup() in an error case).

Submitted by: Mohan Srinivasan

18 years agoImplement the "nocpu" directive.
ru [Thu, 3 Nov 2005 14:01:22 +0000 (14:01 +0000)]
Implement the "nocpu" directive.

Requested by: rwatson

18 years agoDetect memory leaks when memory type is being destroyed.
pjd [Thu, 3 Nov 2005 13:48:59 +0000 (13:48 +0000)]
Detect memory leaks when memory type is being destroyed.
This is very helpful for detecting kernel modules memory leaks on unload.

Discussed and reviewed by: rwatson

18 years agoThere is no need to explicitly add "status" to $extra_commands in
rse [Thu, 3 Nov 2005 13:17:49 +0000 (13:17 +0000)]
There is no need to explicitly add "status" to $extra_commands in
the /etc/rc.d/pf script as it is implicitly added by /etc/rc.subr's
run_rc_command() because of the existing $pf_program.

Submitted by: Christoph Schug <chris@schug.net>
MFC after: 1 week

18 years agoUpdate list of controllers ciss(4) driver
rse [Thu, 3 Nov 2005 13:02:35 +0000 (13:02 +0000)]
Update list of controllers ciss(4) driver
actually supports according to implementation.

Submitted by: Christoph Schug <chris@schug.net>
MFC after: 1 week

18 years agoSerialize access to the info/dir file; needed for parallel installs.
ru [Thu, 3 Nov 2005 08:56:39 +0000 (08:56 +0000)]
Serialize access to the info/dir file; needed for parallel installs.

Reported by: scottl

I'm not very fond of using the non-standard lockf(1) here, but I
have no better idea at the moment.  NetBSD uses ln(1) to create a
lock file, but this approach can result in a deadlock if make is
interrupted, leaving an orphaned lock file.

18 years agoAppropriate NULL pointer checking to avoid mysterious panic during
ariff [Thu, 3 Nov 2005 08:19:04 +0000 (08:19 +0000)]
Appropriate NULL pointer checking to avoid mysterious panic during
device cloning.

Approved by: netchild (mentor)

18 years agoo NetBSD 2.0.3 and NetBSD 2.1 added.
maxim [Thu, 3 Nov 2005 08:06:06 +0000 (08:06 +0000)]
o NetBSD 2.0.3 and NetBSD 2.1 added.

Obtained from: NetBSD
MFC after: 3 days

18 years agoMerge from RELENG_6: FreeBSD 6.0. Not sure the release date is correct
maxim [Thu, 3 Nov 2005 07:59:58 +0000 (07:59 +0000)]
Merge from RELENG_6: FreeBSD 6.0.  Not sure the release date is correct
because no release announce yet.

18 years agoRemove the remaining spl*() calls. Add some assertions. Eliminate some
alc [Thu, 3 Nov 2005 07:51:02 +0000 (07:51 +0000)]
Remove the remaining spl*() calls.  Add some assertions.  Eliminate some
excessive white space.

18 years agoRestore part of the code dropped in rev. 1.25 that makes sure ether_demux()
ru [Thu, 3 Nov 2005 07:46:04 +0000 (07:46 +0000)]
Restore part of the code dropped in rev. 1.25 that makes sure ether_demux()
will receive an mbuf chain with Ethernet header in the data portion of the
first mbuf.

18 years agoIn nfs_flush(), clear the NMODIFIED bit only if there are no dirty
ps [Thu, 3 Nov 2005 07:42:15 +0000 (07:42 +0000)]
In nfs_flush(), clear the NMODIFIED bit only if there are no dirty
buffers *and* there are no buffers queued up for writing.  The bug
was that NMODIFIED was being cleared even while there were buffers
scheduled to be written out, which leads to all sorts of interesting
bugs - one where the file could shrink (because of a post-op getattr
load, say) causing data in buffer(s) queued for write to be tossed,
resulting in data corruption.

Submitted by: Mohan Srinivasan

18 years agoConsistently use OPT_* macros to test/set boot options.
ru [Thu, 3 Nov 2005 07:35:36 +0000 (07:35 +0000)]
Consistently use OPT_* macros to test/set boot options.

18 years agoFix for a race between the thread transmitting the request and the
ps [Thu, 3 Nov 2005 07:31:06 +0000 (07:31 +0000)]
Fix for a race between the thread transmitting the request and the
thread processing the reply.

Submitted by: Mohan Srinivasan

18 years agoThe default fill byte is 0xf6, not 0xf5.
ru [Thu, 3 Nov 2005 07:28:46 +0000 (07:28 +0000)]
The default fill byte is 0xf6, not 0xf5.

18 years agoBe cross-arch friendly.
ru [Thu, 3 Nov 2005 07:27:50 +0000 (07:27 +0000)]
Be cross-arch friendly.

18 years agoFix .Dd argument.
ru [Thu, 3 Nov 2005 07:26:54 +0000 (07:26 +0000)]
Fix .Dd argument.

18 years agoSupport sending realtime signal information via signal queue, realtime
davidxu [Thu, 3 Nov 2005 05:25:26 +0000 (05:25 +0000)]
Support sending realtime signal information via signal queue, realtime
signal memory is pre-allocated, so kernel can always notify user code.

18 years agoCleanup some signal interfaces. Now the tdsignal function accepts
davidxu [Thu, 3 Nov 2005 04:49:16 +0000 (04:49 +0000)]
Cleanup some signal interfaces. Now the tdsignal function accepts
both proc pointer and thread pointer, if thread pointer is NULL,
tdsignal automatically finds a thread, otherwise it sends signal
to given thread.
Add utility function psignal_event to send a realtime sigevent
to a process according to the delivery requirement specified in
struct sigevent.

18 years agoSuggest the user to use 'diff -urN' instead of 'diff -crN'.
delphij [Thu, 3 Nov 2005 03:49:57 +0000 (03:49 +0000)]
Suggest the user to use 'diff -urN' instead of 'diff -crN'.

Submitted by: Jimmie James  <jimmiejaz@gmail.com>
PR: docs/88427

18 years agoOops, don't change tdsignal call.
davidxu [Thu, 3 Nov 2005 01:38:49 +0000 (01:38 +0000)]
Oops, don't change tdsignal call.

18 years agoAdd thread_find() function to search a thread by lwpid.
davidxu [Thu, 3 Nov 2005 01:34:08 +0000 (01:34 +0000)]
Add thread_find() function to search a thread by lwpid.

18 years agoList IFT_BRIDGE as a valid type so that arp entries can be properly deleted.
thompsa [Thu, 3 Nov 2005 00:56:43 +0000 (00:56 +0000)]
List IFT_BRIDGE as a valid type so that arp entries can be properly deleted.

Submitted by: Michal Mertl <mime^traveller.cz>

18 years agoIt had been noticed disc2 was overflowing earlier but committing the
kensmith [Thu, 3 Nov 2005 00:23:13 +0000 (00:23 +0000)]
It had been noticed disc2 was overflowing earlier but committing the
fix slipped through a crack.  Remove the apache and php packages under
the assumption someone installing a Web server has network access and
doesn't *need* the packages on disc2.

This will be insta-MFCed...

18 years agoAdd `local' and `return' to the list of built-ins.
jcamou [Thu, 3 Nov 2005 00:15:19 +0000 (00:15 +0000)]
Add `local' and `return' to the list of built-ins.

Submitted by: garys
Approved by: trhodes (mentor)

18 years agoSmall changes in the AlphaStation 200 and PC14 area. PC164 SRM does
wilko [Wed, 2 Nov 2005 22:18:47 +0000 (22:18 +0000)]
Small changes in the AlphaStation 200 and PC14 area.  PC164 SRM does
not work with 53C896 SCSI chips.

Submitted by: Owen Mann <owen@mann.org>

18 years agoCalling setrlimit from 32bit apps could potentially increase certain
ps [Wed, 2 Nov 2005 21:18:07 +0000 (21:18 +0000)]
Calling setrlimit from 32bit apps could potentially increase certain
limits beyond what should be capiable in a 32bit process, so we
must fixup the limits.

Reviewed by: jhb

18 years agoChange the x86 code to allocate IDT vectors on-demand when an interrupt
jhb [Wed, 2 Nov 2005 20:11:47 +0000 (20:11 +0000)]
Change the x86 code to allocate IDT vectors on-demand when an interrupt
source is first enabled similar to how intr_event's now allocate ithreads
on-demand.  Previously, we would map IDT vectors 1:1 to IRQs.  Since we
only have 191 available IDT vectors for I/O interrupts, this limited us
to only supporting IRQs 0-190 corresponding to the first 190 I/O APIC
intpins.  On many machines, however, each PCI-X bus has its own APIC even
though it only has 1 or 2 devices, thus, we were reserving between 24 and
32 IRQs just for 1 or 2 devices and thus 24 or 32 IDT vectors.  With this
change, a machine with 100 IRQs but only 5 in use will only use up 5 IDT
vectors.  Also, this change provides an API (apic_alloc_vector() and
apic_free_vector()) that will allow a future MSI interrupt source driver to
request IDT vectors for use by MSI interrupts on x86 machines.

Tested on: amd64, i386

18 years agoTests with my dual Opteron system have shown that it's possible
wpaul [Wed, 2 Nov 2005 18:01:04 +0000 (18:01 +0000)]
Tests with my dual Opteron system have shown that it's possible
for code to start out on one CPU when thunking into Windows
mode in ctxsw_utow(), and then be pre-empted and migrated to another
CPU before thunking back to UNIX mode in ctxsw_wtou(). This is
bad, because then we can end up looking at the wrong 'thread environment
block' when trying to come back to UNIX mode. To avoid this, we now
pin ourselves to the current CPU when thunking into Windows code.

Few other cleanups, since I'm here:

- Get rid of the ndis_isr(), ndis_enable_interrupt() and
  ndis_disable_interrupt() wrappers from kern_ndis.c and just invoke
  the miniport's methods directly in the interrupt handling routines
  in subr_ndis.c. We may as well lose the function call overhead,
  since we don't need to export these things outside of ndis.ko
  now anyway.

- Remove call to ndis_enable_interrupt() from ndis_init() in if_ndis.c.
  We don't need to do it there anyway (the miniport init routine handles
  it, if needed).

- Fix the logic in NdisWriteErrorLogEntry() a little.

- Change some NDIS_STATUS_xxx codes in subr_ntoskrnl.c into STATUS_xxx
  codes.

- Handle kthread_create() failure correctly in PsCreateSystemThread().

18 years agoMandatory mbuf cluster reference counting and groundwork for UMA
andre [Wed, 2 Nov 2005 16:20:36 +0000 (16:20 +0000)]
Mandatory mbuf cluster reference counting and groundwork for UMA
based jumbo 9k and jumbo 16k cluster support.

All mbuf's with external storage attached are mandatory reference
counted.  For clusters and jumbo clusters UMA provides the refcnt
storage directly.  It does not have to be separatly allocated.  Any
other type of external storage gets its own refcnt allocated from
an UMA mbuf refcnt zone instead of normal kernel malloc.

The refcount API MEXT_ADD_REF() and MEXT_REM_REF() is no longer
publically accessible.  The proper m_* functions have to be used.

mb_ctor_clust() and mb_dtor_clust() both handle normal 2K as well
as 9k and 16k clusters.

Clusters and jumbo clusters may be obtained without attaching it
immideatly to an mbuf.  This is for high performance cluster
allocation in network drivers where mbufs are attached after the
cluster has been filled.

Tested by: rwatson
Sponsored by: TCP/IP Optimizations Fundraise 2005

18 years agoFix several races between socket closure and node/hook
glebius [Wed, 2 Nov 2005 15:34:42 +0000 (15:34 +0000)]
Fix several races between socket closure and node/hook
destruction:
  - Backout 1.62, since it doesn't fix all possible
    problems.
  - Upon node creation, put an additional reference on node.
  - Add a mutex and refcounter to struct ngsock. Netgraph node,
    control socket and data socket all count as references.
  - Introduce ng_socket_free_priv() which removes one reference
    from ngsock, and frees it when all references has gone.
  - No direct pointers between pcbs and node, all pointing
    is done via struct ngsock and protected with mutex.

18 years agoFix two races which happen when netgraph is restructuring:
glebius [Wed, 2 Nov 2005 15:23:47 +0000 (15:23 +0000)]
Fix two races which happen when netgraph is restructuring:
  - Introduce ng_topo_mtx, a mutex to protect topology changes.
  - In ng_destroy_node() protect with ng_topo_mtx the process
    of checking and pointing at ng_deadnode. [1]
  - In ng_con_part2() check that our peer is not a ng_deadnode,
    and protect the check with ng_topo_mtx.
  - Add KASSERTs to ng_acquire_read/write, to make more
    understandible synopsis in case if called on ng_deadnode.

Reported by: Roselyn Lee [1]

18 years agoRework the ng_item queueing on nodes:
glebius [Wed, 2 Nov 2005 14:27:24 +0000 (14:27 +0000)]
Rework the ng_item queueing on nodes:
  - Introduce a new flags NGQF_QREADER and NGQF_QWRITER,
    which tell how the item should be actually applied,
    overriding NGQF_READER/NGQF_WRITER flags.
  - Do not differ between pending reader or writer. Use only
    one flag that is raised, when there are pending items.
  - Schedule netgraph ISR in ng_queue_rw(), so that callers
    do not need to do this job.
  - Fix several comments.

Submitted by: julian

18 years agoRemove a redundant _get_curthread() call.
davidxu [Wed, 2 Nov 2005 14:06:29 +0000 (14:06 +0000)]
Remove a redundant _get_curthread() call.

18 years agoThis commit was generated by cvs2svn to compensate for changes in r151970,
harti [Wed, 2 Nov 2005 14:05:49 +0000 (14:05 +0000)]
This commit was generated by cvs2svn to compensate for changes in r151970,
which included commits to RCS files with non-trunk default branches.

18 years agoVendor patch: fix the reporting of ifOperStatus. We now consider an
harti [Wed, 2 Nov 2005 14:05:49 +0000 (14:05 +0000)]
Vendor patch: fix the reporting of ifOperStatus. We now consider an
interface up when it is running AND the link is not down (that is, it is
up or unknown). If the interface is running but the link is down, we return
state 'dormant', because we're waiting for an external event. Otherwise
the interface is 'down'.

Submitted by: csjp
Reviewed by: glebius

18 years agoMoved the optimization for tiny x from __kernel_tan[f](x) to tan[f](x)
bde [Wed, 2 Nov 2005 14:01:45 +0000 (14:01 +0000)]
Moved the optimization for tiny x from __kernel_tan[f](x) to tan[f](x)
so that it can be faster for tiny x and avoided for reduced x.

This improves things a little differently than for cosine and sine.
We still need to reclassify x in the "kernel" functions, but we get
an extra optimization for tiny x, and an overall optimization since
tiny reduced x rarely happens.  We also get optimizations for space
and style.  A large block of poorly duplicated code to fix a special
case is no longer needed.  This supersedes the fixes in k_sin.c revs
1.9 and 1.11 and k_sinf.c 1.8 and 1.10.

Fixed wrong constant for the cutoff for "tiny" in tanf().  It was
2**-28, but should be almost the same as the cutoff in sinf() (2**-12).
The incorrect cutoff protected us from the bugs fixed in k_sinf.c 1.8
and 1.10, except 4 cases of reduced args passed the cutoff and needed
special handling in theory although not in practice.  Now we essentially
use a cutoff of 0 for the case of reduced args, so we now have 0 special
args instead of 4.

This change makes no difference to the results for sinf() (since it
only changes the algorithm for the 4 special args and the results for
those happen not to change), but it changes lots of results for sin().
Exhaustive testing is impossible for sin(), but exhaustive testing
for sinf() (relative to a version with the old algorithm and a fixed
cutoff) shows that the changes in the error are either reductions or
from 0.5-epsilon ulps to 0.5+epsilon ulps.  The new method just uses
some extra terms in approximations so it tends to give more accurate
results, and there are apparently no problems from having extra
accuracy.  On amd64 with -O1, on all float args the error range in ulps
is reduced from (0.500, 0.665] to [0.335, 0.500) in 24168 cases and
increased from 0.500-epsilon to 0.500+epsilon in 24 cases.  Non-
exhaustive testing by ucbtest shows no differences.

18 years agoIn raise(), use a shortcut to directly send signal to current thread.
davidxu [Wed, 2 Nov 2005 13:52:48 +0000 (13:52 +0000)]
In raise(), use a shortcut to directly send signal to current thread.

18 years agoRetire MT_HEADER mbuf type and change its users to use MT_DATA.
andre [Wed, 2 Nov 2005 13:46:32 +0000 (13:46 +0000)]
Retire MT_HEADER mbuf type and change its users to use MT_DATA.

Having an additional MT_HEADER mbuf type is superfluous and redundant
as nothing depends on it.  It only adds a layer of confusion.  The
distinction between header mbuf's and data mbuf's is solely done
through the m->m_flags M_PKTHDR flag.

Non-native code is not changed in this commit.  For compatibility
MT_HEADER is mapped to MT_DATA.

Sponsored by: TCP/IP Optimization Fundraise 2005

18 years agoUpdated the comment about the optimization for tiny x (the previous
bde [Wed, 2 Nov 2005 13:06:49 +0000 (13:06 +0000)]
Updated the comment about the optimization for tiny x (the previous
commit moved it).  This includes a comment that the "kernel" sine no
longer works on arg -0, so callers must now handle this case.  The kernel
sine still works on all other tiny args; without the optimization it is
just a little slower on these args.  I intended it to keep working on
all tiny args, but that seems to be impossible without losing efficiency
or accuracy.  (sin(x) ~ x * (1 + S1*x**2 + ...) would preserve -0, but
the approximation must be written as x + S1*x**3 + ... for accuracy.)

18 years agoo Update list of holidays in Russia.
maxim [Wed, 2 Nov 2005 09:22:28 +0000 (09:22 +0000)]
o Update list of holidays in Russia.

Submitted by: osa
MFC after: 1 week

18 years agoInstead of a panic()ing in pmap_insert_entry() if get_pv_entry() fails,
alc [Wed, 2 Nov 2005 08:23:28 +0000 (08:23 +0000)]
Instead of a panic()ing in pmap_insert_entry() if get_pv_entry() fails,
reclaim a pv entry by destroying a mapping to an inactive page.

18 years agoRemoved dead code for handling tan[f]() on odd multiples of pi/2. This
bde [Wed, 2 Nov 2005 06:45:21 +0000 (06:45 +0000)]
Removed dead code for handling tan[f]() on odd multiples of pi/2.  This
case never occurs since pi/2 is irrational so no multiple of it can
be represented as a float and we have precise arg reduction so we never
end up with a remainder of 0 in the "kernel" function unless the
original arg is 0.

If this case occurs, then we would now fall through to general code
that returns +-Inf (depending on the sign of the reduced arg) instead
of forcing +Inf.  The correct handling would be to return NaN since
we would have lost so much precision that the correct result can be
anything _except_ +-Inf.

Don't reindent the else clause left over from this, although it was already
bogusly indented ("if (foo) return; else ..." just marches the indentation
to the right), since it will be removed too.

Index: k_tan.c
===================================================================
RCS file: /home/ncvs/src/lib/msun/src/k_tan.c,v
retrieving revision 1.10
diff -r1.10 k_tan.c
88,90c88
<  if (((ix | low) | (iy + 1)) == 0)
<  return one / fabs(x);
<  else {
---
>  {

18 years agoFix an erroneous description of the file descriptor assignments for
jdp [Wed, 2 Nov 2005 05:47:49 +0000 (05:47 +0000)]
Fix an erroneous description of the file descriptor assignments for
the "~C" command.

MFC After: 1 week

18 years agoFixed some of the silliness related to rev.1.8. In 1.8, "double" in
bde [Wed, 2 Nov 2005 05:37:31 +0000 (05:37 +0000)]
Fixed some of the silliness related to rev.1.8.  In 1.8, "double" in
a declaration was not translated to "float" although bit fiddling on
double variables was translated.  This resulted in garbage being put
into the low word of one of the doubles instead of non-garbage being
put into the only word of the intended float.  This had no effect on
any result because:
- with doubles, the algorithm for calculating -1/(x+y) is unnecessarily
  complicated.  Just returning -1/((double)x+y) would work, and the
  misdeclaration gave something like that except for messing up some
  low bits with the bit fiddling.
- doubles have plenty of bits to spare so messing up some of the low
  bits is unlikely to matter.
- due to other bugs, the buggy code is reached for a whole 4 args out
  of all 2**32 float args.  The bug fixed by 1.8 only affects a small
  percentage of cases and a small percentage of 4 is 0.  The 4 args
  happen to cause no problems without 1.8, so they are even less likely
  to be affected by the bug in 1.8 than average args; in fact, neither
  1.8 nor this commit makes any difference to the result for these 4
  args (and thus for all args).

Corrections to the log message in 1.8: the bug only applies to tan()
and not tanf(), not because the float type can't represent numbers
large enough to trigger the problem (e.g., the example in the fdlibm-5.3
readme which is > 1.0e269), but because:
- the float type can't represent small enough numbers.  For there to be
  a possible problem, the original arg for tanf() must lie very near an
  odd multiple of pi/2.  Doubles can get nearer in absolute units.  In
  ulps there should be little difference, but ...
- ... the cutoff for "small" numbers is bogus in k_tanf.c.  It is still
  the double value (2**-28).  Since this is 32 times smaller than
  FLT_EPSILON and large float values are not very uniformly distributed,
  only 6 args other than ones that are initially below the cutoff give
  a reduced arg that passes the cutoff (the 4 problem cases mentioned
  above and 2 non-problem cases).

Fixing the cutoff makes the bug affect tanf() and much easier to detect
than for tan().  With a cutoff of 2**-12 on amd64 with -O1, 670102
args pass the cutoff; of these, there are 337604 cases where there
might be an error of >= 1 ulp and 5826 cases where there is such an
error; the maximum error is 1.5382 ulps.

The fix in 1.8 works with the reduced cutoff in all cases despite the
bug in it.  It changes the result in 84492 cases altogether to fix the
5826 broken cases.  Fixing the fix by translating "double" to "float"
changes the result in 42 cases relative to 1.8.  In 24 cases the
(absolute) error is increased and in 18 cases it is reduced, but it
remains less than 1 ulp in all cases.

18 years agoRate limit vnode_pager_putpages printfs to once a second.
ps [Tue, 1 Nov 2005 23:00:24 +0000 (23:00 +0000)]
Rate limit vnode_pager_putpages printfs to once a second.

18 years agoThrow the switch and turn on STOP_NMI on in GENERIC for amd64 and i386.
jhb [Tue, 1 Nov 2005 22:59:03 +0000 (22:59 +0000)]
Throw the switch and turn on STOP_NMI on in GENERIC for amd64 and i386.

Requested by: kris
Ok'd by: scottl

18 years agoCatch up with ACPI-CA 20051021 import
jkim [Tue, 1 Nov 2005 22:44:08 +0000 (22:44 +0000)]
Catch up with ACPI-CA 20051021 import

18 years agoUpdate to reflect import of ACPI-CA 20051021 with includes fixups
jkim [Tue, 1 Nov 2005 22:38:50 +0000 (22:38 +0000)]
Update to reflect import of ACPI-CA 20051021 with includes fixups

18 years agoLocal change: remove unnecessary __cdecl
jkim [Tue, 1 Nov 2005 22:33:32 +0000 (22:33 +0000)]
Local change: remove unnecessary __cdecl

18 years agoLocal change: remove compilation warnings
jkim [Tue, 1 Nov 2005 22:30:52 +0000 (22:30 +0000)]
Local change: remove compilation warnings

18 years agoFix conflicts from import of Intel ACPI-CA 20051021
jkim [Tue, 1 Nov 2005 22:28:49 +0000 (22:28 +0000)]
Fix conflicts from import of Intel ACPI-CA 20051021

18 years agoUnchanged files that are off the vendor branch
jkim [Tue, 1 Nov 2005 22:23:25 +0000 (22:23 +0000)]
Unchanged files that are off the vendor branch

18 years agoThis commit was generated by cvs2svn to compensate for changes in r151940,
jkim [Tue, 1 Nov 2005 22:18:47 +0000 (22:18 +0000)]
This commit was generated by cvs2svn to compensate for changes in r151940,
which included commits to RCS files with non-trunk default branches.

18 years agoFix few compilation problems on vendor branch.
jkim [Tue, 1 Nov 2005 22:18:47 +0000 (22:18 +0000)]
Fix few compilation problems on vendor branch.
These fixes will be submitted vendor.

18 years agoThis commit was generated by cvs2svn to compensate for changes in r151937,
jkim [Tue, 1 Nov 2005 22:11:18 +0000 (22:11 +0000)]
This commit was generated by cvs2svn to compensate for changes in r151937,
which included commits to RCS files with non-trunk default branches.

18 years agoVendor import of Intel ACPI-CA 20051021
jkim [Tue, 1 Nov 2005 22:11:18 +0000 (22:11 +0000)]
Vendor import of Intel ACPI-CA 20051021

18 years agoQuick kill links to the nsmb(8) manual page, there is no such
trhodes [Tue, 1 Nov 2005 21:16:39 +0000 (21:16 +0000)]
Quick kill links to the nsmb(8) manual page, there is no such
utility that I can find.

18 years agoMove HPET debugging under ACPI_TIMER in order to save a bitfield.
scottl [Tue, 1 Nov 2005 20:41:43 +0000 (20:41 +0000)]
Move HPET debugging under ACPI_TIMER in order to save a bitfield.

18 years agoXref setlocale(3), bump document date.
trhodes [Tue, 1 Nov 2005 19:36:17 +0000 (19:36 +0000)]
Xref setlocale(3), bump document date.

18 years agoNote which options are not part of the standards.
trhodes [Tue, 1 Nov 2005 19:31:25 +0000 (19:31 +0000)]
Note which options are not part of the standards.
Xref locale(1) and bump document date.

Reviewed by: keramida
No Objections: -standards

18 years agoPush down Giant into fdfree() and remove it from two of the callers.
jhb [Tue, 1 Nov 2005 17:13:05 +0000 (17:13 +0000)]
Push down Giant into fdfree() and remove it from two of the callers.
Other callers such as some rfork() cases weren't locking Giant anyway.

Reviewed by: csjp
MFC after: 1 week

18 years agoAdd proper debugging infrastructure for acpi_hpet.c.
scottl [Tue, 1 Nov 2005 15:57:15 +0000 (15:57 +0000)]
Add proper debugging infrastructure for acpi_hpet.c.

18 years agoAdd a "-H" argument to kdump, which causes kdump to print an additional
rwatson [Tue, 1 Nov 2005 14:48:23 +0000 (14:48 +0000)]
Add a "-H" argument to kdump, which causes kdump to print an additional
field holding the threadid.  This is more useful for libthr than
libpthread, but still quite useful in libpthread as it can be used to
process interlaced records from multiple threads over the course of a
system call.

Detect old ktr_buffer values using the heuristic "if it's negative,
then it must not be a valid threadid".  This may leave something to be
desired.

MFC after: 1 month
Reviewed by: davidxu

18 years agoReuse ktr_unused field in ktr_header structure as ktr_tid; populate
rwatson [Tue, 1 Nov 2005 14:46:37 +0000 (14:46 +0000)]
Reuse ktr_unused field in ktr_header structure as ktr_tid; populate
ktr_tid as part of gathering of ktr header data for new ktrace
records.  The continued use of intptr_t is required for file layout
reasons, and cannot be changed to lwpid_t at this point.

MFC after: 1 month
Reviewed by: davidxu

18 years agoFix some comments, eliminate a memory leak.
davidxu [Tue, 1 Nov 2005 13:05:47 +0000 (13:05 +0000)]
Fix some comments, eliminate a memory leak.

18 years agoReplace ktr_buffer pointer in struct ktr_header with a ktr_unused
rwatson [Tue, 1 Nov 2005 12:36:19 +0000 (12:36 +0000)]
Replace ktr_buffer pointer in struct ktr_header with a ktr_unused
intptr_t.  The buffer length needs to be written to disk as part
of the trace log, but the kernel pointer for the buffer does not.
Add a new ktr_buffer pointer to the kernel-only ktrace request
structure to hold that pointer.  This frees up an integer in the
ktrace record format that can be used to hold the threadid,
although older ktrace files will have a garbage ktr_buffer field
(or more accurately, a kernel pointer value).

MFC after: 2 weeks
Space requested by: davidxu

18 years agoo OpenBSD 3.8 added.
maxim [Tue, 1 Nov 2005 10:32:42 +0000 (10:32 +0000)]
o OpenBSD 3.8 added.

18 years agoClean up one remaining 'multiple DPC thread' bogon: only bzero() one
wpaul [Tue, 1 Nov 2005 09:24:35 +0000 (09:24 +0000)]
Clean up one remaining 'multiple DPC thread' bogon: only bzero() one
sizeof(kq_queue), not sizeof(kq_queue) * mp_ncpus.

18 years agoUse TIMERS_UNLOCK.
davidxu [Tue, 1 Nov 2005 07:05:32 +0000 (07:05 +0000)]
Use TIMERS_UNLOCK.

18 years agoAdd code to handle timer_delete(). The timer wrapper code is completely
davidxu [Tue, 1 Nov 2005 06:53:22 +0000 (06:53 +0000)]
Add code to handle timer_delete(). The timer wrapper code is completely
rewritten, now timers created with same sigev_notify_attributes will
run in same thread, this allows user to organize which timers can
run in same thread to save some thread resource.

18 years agoIn mode 'u', check for an error return from archive_read_open.
kientzle [Tue, 1 Nov 2005 06:41:05 +0000 (06:41 +0000)]
In mode 'u', check for an error return from archive_read_open.
This causes attempts to update a non-existent file to report
an actual error instead of triggering an assertion failure.

PR: bin/87911
Thanks to: roemer.ulrich
MFC after: 3 days

Note: This does not entirely fix bin/87911.  I need to decide on
the "correct" response when someone tries to update a non-existent
archive file.

18 years agoInclude <sys/param.h> in order to get current __FreeBSD_version
kientzle [Tue, 1 Nov 2005 05:53:16 +0000 (05:53 +0000)]
Include <sys/param.h> in order to get current __FreeBSD_version
in order to properly set HAVE_NL_LANGINFO.  <whew!>

Thanks to: Andrey Chernov
PR: bin/88013
MFC after: 3 days

18 years agoSpell "--format" correctly in error message. (It hasn't been
kientzle [Tue, 1 Nov 2005 05:48:02 +0000 (05:48 +0000)]
Spell "--format" correctly in error message.  (It hasn't been
called "-F" for a very long time.)

PR: bin/86915
Thanks to: Gary W. Swearingen
MFC after: 3 days

18 years agoConsider the zero-copy transmission of a page that was wired by mlock(2).
alc [Tue, 1 Nov 2005 04:30:21 +0000 (04:30 +0000)]
Consider the zero-copy transmission of a page that was wired by mlock(2).
If a copy-on-write fault occurs on the page, the new copy should inherit
a part of the original page's wire count.

Submitted by: tegge
MFC after: 1 week

18 years agoUpdate SIGTHR's comment.
davidxu [Tue, 1 Nov 2005 03:14:39 +0000 (03:14 +0000)]
Update SIGTHR's comment.

18 years agoAdd items to unmount to the front of the list so they are unmounted in
brooks [Tue, 1 Nov 2005 01:36:58 +0000 (01:36 +0000)]
Add items to unmount to the front of the list so they are unmounted in
reverse (thus allowing /conf to be unmounted).

18 years agostatically configured IPv6 address is properly added/deleted now
suz [Mon, 31 Oct 2005 23:06:04 +0000 (23:06 +0000)]
statically configured IPv6 address is properly added/deleted now

Obtained from: KAME
Reported in: freebsd-net@freebsd
MFC after: 1 day

18 years agoSwitch from pax to tar for extracting cpio archives. pax requires a
brooks [Mon, 31 Oct 2005 22:00:44 +0000 (22:00 +0000)]
Switch from pax to tar for extracting cpio archives.  pax requires a
writable /tmp (or TMPDIR) and thus is unsuitable for this job.

Tested by: Joerg Pulz <Joerg dot Pulz at frm2 dot tum dot de>
PR: conf/88293

18 years agoTie acpi_hpet.c into the module and kernel.
phk [Mon, 31 Oct 2005 21:40:40 +0000 (21:40 +0000)]
Tie acpi_hpet.c into the module and kernel.

18 years agoAdd a basic HPET timecounter.
phk [Mon, 31 Oct 2005 21:39:50 +0000 (21:39 +0000)]
Add a basic HPET timecounter.

It has -200 quality for now so it will not get automatically selected.

18 years ago- Use callout_*() to manage the callout and make it MPSAFE.
jhb [Mon, 31 Oct 2005 21:37:27 +0000 (21:37 +0000)]
- Use callout_*() to manage the callout and make it MPSAFE.
- Fix locking in detach(), we only need to lock across vr_stop().

Tested by: Mike Tancsa mike at sentex dot net
MFC after: 1 week

18 years agoInstead of a panic()ing in pmap_insert_entry() if get_pv_entry()
alc [Mon, 31 Oct 2005 21:25:33 +0000 (21:25 +0000)]
Instead of a panic()ing in pmap_insert_entry() if get_pv_entry()
fails, reclaim a pv entry by destroying a mapping to an inactive
page.

Change the format strings in many of the assertions that were recently
converted from PMAP_DIAGNOSTIC printf()s so that they are compatible
with PAE.  Avoid unnecessary differences between the amd64 and i386
format strings.

18 years agoReformat socket control messages on input/output for 32bit compatibility
ps [Mon, 31 Oct 2005 21:09:56 +0000 (21:09 +0000)]
Reformat socket control messages on input/output for 32bit compatibility
on 64bit systems.

Submitted by: ps, ups
Reviewed by: jhb

18 years agoThe -x <format> option of pax is for creation of archives, not
brooks [Mon, 31 Oct 2005 21:07:14 +0000 (21:07 +0000)]
The -x <format> option of pax is for creation of archives, not
extraction.

This will allow cpio archive support to work, at least in situations
where /tmp is writable.  Because pax requires a writable /tmp it is
unsuitable for this task, but replacing it will come in a later commit.

Submitted by: Joerg Pulz <Joerg dot Pulz at frm2 dot tum dot de>
PR: conf/88293

18 years agoHook nve(4) up in i386 and amd64 NOTES.
jhb [Mon, 31 Oct 2005 20:45:37 +0000 (20:45 +0000)]
Hook nve(4) up in i386 and amd64 NOTES.

MFC after: 1 week

18 years agoRate limit filesystem full and out of inodes messages to once a
ps [Mon, 31 Oct 2005 20:33:28 +0000 (20:33 +0000)]
Rate limit filesystem full and out of inodes messages to once a
second.

18 years agoPut probe-time printf of adapter speed and duplex behind bootverbose:
rwatson [Mon, 31 Oct 2005 19:59:40 +0000 (19:59 +0000)]
Put probe-time printf of adapter speed and duplex behind bootverbose:
since the link takes a bit to negotiate, the information is pretty
much never available during the probe.  As such, the boot output
pretty much always prints N/A for speed and duplex.  Since we print
out the output of ifconfig during the user space boot, this early
boot information is also generally redundant, and added to the noise.

MFC after: 2 weeks

18 years agoCheck to see if the hash table is present in link_elf_lookup_symbol()
jhb [Mon, 31 Oct 2005 19:17:32 +0000 (19:17 +0000)]
Check to see if the hash table is present in link_elf_lookup_symbol()
before dereferencing it.  Certain corrupt kernel modules might not have
a valid hash table, and would cause a kernel panic when they were loaded.
Instead of panic'ing, the kernel now prints out a warning that it is
missing the symbol hash table.

Tested by: Benjamin Close Benjamin dot Close at clearchain dot com
MFC after: 1 week

18 years agoAdd the device ID for the VIA VT8235 south bridge.
jhb [Mon, 31 Oct 2005 18:43:28 +0000 (18:43 +0000)]
Add the device ID for the VIA VT8235 south bridge.

PR: kern/62438
Submitted by: FUJIMOTO Kou fujimoto at j dot dendai dot ac dot jp
Tested by: Oliver Fromme olli at secnetix dot de
MFC after: 1 week

18 years agoSome of the VIA pm and propm devices are actually the same device as the
jhb [Mon, 31 Oct 2005 18:31:16 +0000 (18:31 +0000)]
Some of the VIA pm and propm devices are actually the same device as the
PCI-ISA bridge.  Thus, when viapm0 or viapropm0 attaches, isab0 dosen't
attach so there is no isa0 bus hung off of that bridge.  In the non-ACPI
case, legacy0 will add an isa0 anyway as a fail-safe, but ACPI assumes that
any ISA bus will be enumerated via a bridge.  To fix this, call
isab_attach() to attach an isa0 ISA child bus device if the pm or propm
device we are probing is a PCI-ISA bridge.  Both drivers now have to
implement the bus_if interface via the generic methods for resource
allocation, etc. to work.  Also, we now add 2 new ISA bus drivers that
attach to viapm and viapropm devices.

PR: kern/87363
Reported by: Oliver Fromme olli at secnetix dot de
Tested by: glebius
MFC after: 1 week

18 years agoNew release notes:
hrs [Mon, 31 Oct 2005 16:52:11 +0000 (16:52 +0000)]
New release notes:
hw.pci.do_powerstate change,
FreeBSD/ia64 SMP support,
a kernel config for MAC added,
tnt4882(4) driver added,
agp(4) now supports ATI IGP chipsets,
re(4): D-Link DGE-528(T) Gigabit Ethernet card support,
aac(4): Adaptec 2610SA SATA-RAID controller support,
ata(4): ITE IT8211F, PDC40718, and PDC40719 support,
hptmv(4) update: amd64 and PAE support,
gpt(8) GPT partition label support,
kenv(1) and sysctl(8) -q flag added,
libedit updated,
rpcgen(1) now generate ANSI C code instead of K&R style, and
OpenSSH 4.0p1->4.2p1.

Update release notes:
Fix an entry about ifconfig_<ifn> NOAUTO keyword.

18 years agoMFamd64/i386
alc [Mon, 31 Oct 2005 16:14:07 +0000 (16:14 +0000)]
MFamd64/i386
 Eliminate unneeded diagnostic code.

18 years agoNormalize a significant number of kernel malloc type names:
rwatson [Mon, 31 Oct 2005 15:41:29 +0000 (15:41 +0000)]
Normalize a significant number of kernel malloc type names:

- Prefer '_' to ' ', as it results in more easily parsed results in
  memory monitoring tools such as vmstat.

- Remove punctuation that is incompatible with using memory type names
  as file names, such as '/' characters.

- Disambiguate some collisions by adding subsystem prefixes to some
  memory types.

- Generally prefer lower case to upper case.

- If the same type is defined in multiple architecture directories,
  attempt to use the same name in additional cases.

Not all instances were caught in this change, so more work is required to
finish this conversion.  Similar changes are required for UMA zone names.

18 years agoDocument the fact that sendfile(2) can EOPNOTSUPP if the underlying
jkoshy [Mon, 31 Oct 2005 04:08:28 +0000 (04:08 +0000)]
Document the fact that sendfile(2) can EOPNOTSUPP if the underlying
filesystem for the file being transferred doesn't support UIO_NOCOPY.

Reported by: Niki Denev <nike_d@cytexbg.com>

18 years agoSort error list.
jkoshy [Mon, 31 Oct 2005 04:00:20 +0000 (04:00 +0000)]
Sort error list.