]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
20 years ago- Add a function ioapic_program_intpin() that completely programs an I/O
jhb [Tue, 1 Jun 2004 20:28:42 +0000 (20:28 +0000)]
- Add a function ioapic_program_intpin() that completely programs an I/O
  APIC interrupt pin based on the settings in the corresponding interrupt
  source structure.
- Use ioapic_program_intpin() in place of manual frobbing of the intpin
  configuration in ioapic_program_destination() and ioapic_register().
- Use ioapic_program_intpin() to implement suspend/resume support for I/O
  APICs.

20 years agoAdd SVR4-compatible VTOC-style elements to the Sun label. The
joerg [Tue, 1 Jun 2004 20:18:25 +0000 (20:18 +0000)]
Add SVR4-compatible VTOC-style elements to the Sun label.  The
FreeBSD kernel doesn't use them but sunlabel(8) shortly will,
and both these files are used by sunlabel(8).

20 years agoAllow the pir0 device add to fail since pir0 may already exist. This should
jhb [Tue, 1 Jun 2004 19:51:29 +0000 (19:51 +0000)]
Allow the pir0 device add to fail since pir0 may already exist.  This should
fix the panics in device_set_ivars() that people were seeing on boxes with
multiple Host-PCI bridges but not using ACPI.

20 years agoFix legacy_add_child() to properly handle the case where
jhb [Tue, 1 Jun 2004 19:50:42 +0000 (19:50 +0000)]
Fix legacy_add_child() to properly handle the case where
device_add_child_ordered() fails (due to a duplicate device add for
example) and properly cleanup and return NULL.

20 years agoUse the local APIC ID rather than the ACPI Processor ID to index the array
jhb [Tue, 1 Jun 2004 19:49:38 +0000 (19:49 +0000)]
Use the local APIC ID rather than the ACPI Processor ID to index the array
of CPUs since local APIC IDs are bounded but ACPI IDs are not bounded.

20 years agoMerged from double precision case (e_pow.c 1.10: sign fixes).
bde [Tue, 1 Jun 2004 19:33:30 +0000 (19:33 +0000)]
Merged from double precision case (e_pow.c 1.10: sign fixes).

20 years agoReplace current locking comments for struct socket/struct sockbuf
rwatson [Tue, 1 Jun 2004 19:33:06 +0000 (19:33 +0000)]
Replace current locking comments for struct socket/struct sockbuf
with new ones.  Annotate constant-after-creation fields as such.  The
comments describe a number of locks that are not yet merged.

20 years agoAdd Aerospace Corporation copyrights to EUI64 support files.
brooks [Tue, 1 Jun 2004 19:30:13 +0000 (19:30 +0000)]
Add Aerospace Corporation copyrights to EUI64 support files.

Suggested by: marcel, imp

20 years agoFixed the sign of the result in some overflow and underflow cases (ones
bde [Tue, 1 Jun 2004 19:28:38 +0000 (19:28 +0000)]
Fixed the sign of the result in some overflow and underflow cases (ones
where the exponent is an odd integer and the base is negative).

Obtained from: fdlibm-5.3

Sun finally released a new version of fdlibm just a coupe of weeks
ago.  It only fixes 3 bugs (this one, another one in pow() that we
already have (rev.1.9), and one in tan().  I've learned too much about
powf() lately, so this fix was easy to merge.  The patch is not verbatim,
because our base version has many differences for portability and I
didn't like global renaming of an unrelated variable to keep it separate
from the sign variable.  This patch uses a new variable named sn for
the sign.

20 years agoFixed another precision bug in powf(). This one is in the computation
bde [Tue, 1 Jun 2004 19:03:31 +0000 (19:03 +0000)]
Fixed another precision bug in powf().  This one is in the computation
[t=p_l+p_h High].  We multiply t by lg2_h, and want the result to be
exact.  For the bogus float case of the high-low decomposition trick,
we normally discard the lowest 12 bits of the fraction for the high
part, keeping 12 bits of precision.  That was used for t here, but it
doesnt't work because for some reason we only discard the lowest 9
bits in the fraction for lg2_h.  Discard another 3 bits of the fraction
for t to compensate.

This bug gave wrong results like:

      powf(0.9999999, -2.9999995) = 1.0000002 (should be 1.0000001)
        hex values: 3F7FFFFF C03FFFFE 3F800002 3F800001

As explained in the log for the previous commit, the bug is normally
masked by doing float calculations in extra precision on i386's, but
is easily detected by ucbtest on systems that don't have accidental
extra precision.

This completes fixing all the bugs in powf() that were routinely found
by ucbtest.

20 years agoRemove unused variable.
phk [Tue, 1 Jun 2004 19:02:51 +0000 (19:02 +0000)]
Remove unused variable.

20 years agoSince I'm not ready to add the non-standard ADD_PS_LISTRESET feature,
gad [Tue, 1 Jun 2004 19:00:42 +0000 (19:00 +0000)]
Since I'm not ready to add the non-standard ADD_PS_LISTRESET feature,
remove the #ifdef for it for now.  I might add the feature for real at
some later date, there isn't much reason for the #ifdef for now.

20 years agoMake a few style-istic improvements to the previous commits.
gad [Tue, 1 Jun 2004 18:12:04 +0000 (18:12 +0000)]
Make a few style-istic improvements to the previous commits.

Noticed by: bde

20 years agoFixed 2 bugs in the computation /* t_h=ax+bp[k] High */.
bde [Tue, 1 Jun 2004 18:08:39 +0000 (18:08 +0000)]
Fixed 2 bugs in the computation /* t_h=ax+bp[k] High */.
(1) The bit for the 1.0 part of bp[k] was right shifted by 4.  This seems
    to have been caused by a typo in converting e_pow.c to e_powf.c.
(2) The lower 12 bits of ax+bp[k] were not discarded, so t_h was actually
    plain ax+bp[k].  This seems to have been caused by a logic error in
    the conversion.

These bugs gave wrong results like:

    powf(-1.1, 101.0) = -15158.703 (should be -15158.707)
      hex values: BF8CCCCD 42CA0000 C66CDAD0 C66CDAD4

Fixing (1) gives a result wrong in the opposite direction (hex C66CDAD8),
and fixing (2) gives the correct result.

ucbtest has been reporting this particular wrong result on i386 systems
with unpatched libraries for 9 years.  I finally figured out the extent
of the bugs.  On i386's they are normally hidden by extra precision.
We use the trick of representing floats as a sum of 2 floats (one much
smaller) to get extra precision in intermediate calculations without
explicitly using more than float precision.  This trick is just a
pessimization when extra precision is available naturally (as it always
is when dealing with IEEE single precision, so the float precision part
of the library is mostly misimplemented).  (1) and (2) break the trick
in different ways, except on i386's it turns out that the intermediate
calculations are done in enough precision to mask both the bugs and
the limited precision of the float variables (as far as ucbtest can
check).

ucbtest detects the bugs because it forces float precision, but this
is not a normal mode of operation so the bug normally has little effect
on i386's.

On systems that do float arithmetic in float precision, e.g., amd64's,
there is no accidental extra precision and the bugs just give wrong
results.

20 years agoAdd GIANT_REQUIRED to kqueue_close(), since kqueue currently requires
rwatson [Tue, 1 Jun 2004 18:05:41 +0000 (18:05 +0000)]
Add GIANT_REQUIRED to kqueue_close(), since kqueue currently requires
Giant.

20 years agoPush the VOP_ADVLOCK() call to release advisory locks on vnode file
rwatson [Tue, 1 Jun 2004 18:03:20 +0000 (18:03 +0000)]
Push the VOP_ADVLOCK() call to release advisory locks on vnode file
descriptors out of fdrop_locked() and into vn_closefile().  This
removes all knowledge of vnodes from fdrop_locked(), since the lock
behavior was specific to vnodes.  This also removes the specific
requirement for Giant in fdrop_locked(), it's now only required by
code that it calls into.

Add GIANT_REQUIRED to vn_closefile() since VFS requires Giant.

20 years agoFix a couple of bugs in the mbuf and packet ctors. In the latter case,
bmilekic [Tue, 1 Jun 2004 16:17:10 +0000 (16:17 +0000)]
Fix a couple of bugs in the mbuf and packet ctors.  In the latter case,
nextpkt within the m_hdr was not being initialized to NULL for
!M_PKTHDR cases.  *Maybe* this will fix weird socket buffer
inconsistency panics, but we'll see.

20 years agoCommit the correct version of the patch from last night. This fixes an
scottl [Tue, 1 Jun 2004 15:50:11 +0000 (15:50 +0000)]
Commit the correct version of the patch from last night.  This fixes an
immediate panic when doing any i/o, and it closes a completion race.

20 years agoGainfully employ the new ttyioctl in the trivial cases.
phk [Tue, 1 Jun 2004 13:49:28 +0000 (13:49 +0000)]
Gainfully employ the new ttyioctl in the trivial cases.

20 years agoIntroduce a ttyioctl() cdevsw default function.
phk [Tue, 1 Jun 2004 13:39:02 +0000 (13:39 +0000)]
Introduce a ttyioctl() cdevsw default function.

20 years agoRemoved a leftover from the previous change.
ru [Tue, 1 Jun 2004 13:15:32 +0000 (13:15 +0000)]
Removed a leftover from the previous change.

Submitted by: Gleb Smirnoff

20 years agoWhen waiting for drive to become ready, reinit the request params as they
sos [Tue, 1 Jun 2004 12:28:45 +0000 (12:28 +0000)]
When waiting for drive to become ready, reinit the request params as they
might get trashed by autosensing.

20 years agoUse the right cmd+errorcode if we are in autosense/not.
sos [Tue, 1 Jun 2004 12:26:08 +0000 (12:26 +0000)]
Use the right cmd+errorcode if we are in autosense/not.

20 years agoThere is no need to explicitly call the stop function. In all likelyhood
phk [Tue, 1 Jun 2004 11:57:15 +0000 (11:57 +0000)]
There is no need to explicitly call the stop function.  In all likelyhood
->l_close() did it and ttyclose certainly will.

20 years agoshift the four cdevsw functions for ttys to sys/conf.h and prototype
phk [Tue, 1 Jun 2004 11:56:04 +0000 (11:56 +0000)]
shift the four cdevsw functions for ttys to sys/conf.h and prototype
them with the correct typedef.

20 years agoThere is no need to explicitly call ttwakeup() and ttwwakeup() after
phk [Tue, 1 Jun 2004 11:38:06 +0000 (11:38 +0000)]
There is no need to explicitly call ttwakeup() and ttwwakeup() after
ttyclose() has been called.  It's already been done once by ttyclose,
and probably once by the line-discipline too.

20 years agoOnly set and report error if not set already.
sos [Tue, 1 Jun 2004 11:37:24 +0000 (11:37 +0000)]
Only set and report error if not set already.

20 years agoDont retry on devices that left the system.
sos [Tue, 1 Jun 2004 11:34:46 +0000 (11:34 +0000)]
Dont retry on devices that left the system.
Ignore "fake" devices that has 0x7f status.

20 years agottyclose() increments t_gen. Remove redundant increments in drivers.
phk [Tue, 1 Jun 2004 10:15:56 +0000 (10:15 +0000)]
ttyclose() increments t_gen.  Remove redundant increments in drivers.

20 years agoConsistently credit President Truman as Harry S. Truman.
des [Tue, 1 Jun 2004 09:45:16 +0000 (09:45 +0000)]
Consistently credit President Truman as Harry S. Truman.

20 years agoAdd Alice Liddell, Christopher Robin Milne and Winnie-the-Pooh, who
tanimura [Tue, 1 Jun 2004 09:43:22 +0000 (09:43 +0000)]
Add Alice Liddell, Christopher Robin Milne and Winnie-the-Pooh, who
inspired well-known stories for children.

20 years agoFixed manpage's synopsis, and synchronized it with the program's usage().
ru [Tue, 1 Jun 2004 09:34:04 +0000 (09:34 +0000)]
Fixed manpage's synopsis, and synchronized it with the program's usage().

20 years agoWhitespace correction - #define should be followed by a tab.
truckman [Tue, 1 Jun 2004 08:59:03 +0000 (08:59 +0000)]
Whitespace correction - #define should be followed by a tab.

20 years agoFinish repo move arlconfig -> arlcontrol.
fjoe [Tue, 1 Jun 2004 07:38:11 +0000 (07:38 +0000)]
Finish repo move arlconfig -> arlcontrol.

20 years agoChange the signature of ftok from (const char *, char) to (const char *, int)
tjr [Tue, 1 Jun 2004 06:53:07 +0000 (06:53 +0000)]
Change the signature of ftok from (const char *, char) to (const char *, int)

Obtained from: NetBSD (christos)

20 years agoAxe the old midi drivers and framework. matk has developed a new
tanimura [Tue, 1 Jun 2004 06:22:59 +0000 (06:22 +0000)]
Axe the old midi drivers and framework.  matk has developed a new
module-friendly midi subsystem to be merged soon.

20 years agoAdd latinamerican.iso.acc
ache [Tue, 1 Jun 2004 06:12:01 +0000 (06:12 +0000)]
Add latinamerican.iso.acc

20 years agoCollapse aac_map_command() into aac_startio(). Check the AAC_QUEUE_FRZN in
scottl [Tue, 1 Jun 2004 05:32:26 +0000 (05:32 +0000)]
Collapse aac_map_command() into aac_startio().  Check the AAC_QUEUE_FRZN in
every iteration of aac_startio().  This ensures that a command that is
deferred for lack of resources doesn't immediately get retried in the
aac_startio() loop.  This avoids an almost certain livelock.

20 years agoUpdate the "All I really need to know I learned in kindergarten" entry
dougb [Tue, 1 Jun 2004 05:00:46 +0000 (05:00 +0000)]
Update the "All I really need to know I learned in kindergarten" entry
by using the text from the Villard Books edition (1989, pages 6 through
8) and formatting to fit in 72 columns.

20 years ago* Reformat several attributions according to ../Notes (mostly whitespace)
dougb [Tue, 1 Jun 2004 04:32:11 +0000 (04:32 +0000)]
* Reformat several attributions according to ../Notes (mostly whitespace)
* Spell out some names that were pointlessly abbreviated
* Remove a couple of incidental duplicates
* Harry Truman had no actual middle name. The initial "S" was added to his
name to make him appear more statesmanlike. Therefore it's not usually punctuated.
* Format a couple of actual fortunes to fit into 72 columns

20 years agoAdd a global mutex, accept_filter_mtx, to protect the global list of
rwatson [Tue, 1 Jun 2004 04:08:48 +0000 (04:08 +0000)]
Add a global mutex, accept_filter_mtx, to protect the global list of
accept filters and prevent read-modify-write races.

20 years agolat-amer -> latinamerican keymap
ache [Tue, 1 Jun 2004 04:02:24 +0000 (04:02 +0000)]
lat-amer -> latinamerican keymap

PR:             67365

20 years agoFix so `ps' catches and complains about null-values specified for a
gad [Tue, 1 Jun 2004 03:01:51 +0000 (03:01 +0000)]
Fix so `ps' catches and complains about null-values specified for a
process id, instead of using pid==0.  Ie, `ps -p 12,' and `ps -p ,12'
are now errors (instead of being treated like `ps -p 0 -p 12').

Noticed by: Cyrille Lefevre on freebsd-arch

20 years agoThe SS_COMP and SS_INCOMP flags in the so_state field indicate whether
rwatson [Tue, 1 Jun 2004 02:42:56 +0000 (02:42 +0000)]
The SS_COMP and SS_INCOMP flags in the so_state field indicate whether
the socket is on an accept queue of a listen socket.  This change
renames the flags to SQ_COMP and SQ_INCOMP, and moves them to a new
state field on the socket, so_qstate, as the locking for these flags
is substantially different for the locking on the remainder of the
flags in so_state.

20 years agoAdditional tiny adjustment to kludge-option processing so `ps t p0'
gad [Tue, 1 Jun 2004 02:31:44 +0000 (02:31 +0000)]
Additional tiny adjustment to kludge-option processing so `ps t p0'
is treated like `ps -t p0', instead of changing it to `ps -T p0'.
Note that `ps t' is still changed to `ps -T', since that is one of
the main reasons for this kludge processing...

Noticed by: Jilles Tjoelker on freebsd-arch

20 years agoRewrite the kludge-option processing to improve how it handles a few
gad [Tue, 1 Jun 2004 02:03:21 +0000 (02:03 +0000)]
Rewrite the kludge-option processing to improve how it handles a few
more special situations.  This is the code which process `ps blah',
when "blah" does not include a leading '-'.

This change also removes a long-undocumented BACKWARD_COMPATIBILITY
compile-time option, where:
     ps -options arg1 arg2
(with no '-' on "arg1" and "arg2") was treated as:
    ps -options -N arg1 -M arg2

This also changes `ps' to check for any additional arguments after
processing all the '-'-options, and attempt to use those arguments as
a pid or pidlist.  If an extra argument is not a valid pidlist, then
`ps' will print an error and exit.  This seems a more generally useful
extension of the kludge-option processing than the -N/-M behavior, and
has fewer confusing side-effects.

Reviewed by: freebsd-arch

20 years agoFix a comment above uma_zsecond_create(), describing its arguments.
bmilekic [Tue, 1 Jun 2004 01:36:26 +0000 (01:36 +0000)]
Fix a comment above uma_zsecond_create(), describing its arguments.
It doesn't take 'align' and 'flags' but 'master' instead, which is
a reference to the Master Zone, containing the backing Keg.

Pointed out by: Tim Robbins (tjr)

20 years agoHonor NOINET6 and disable IPv6 support in libmilter and sendmail if it
gshapiro [Tue, 1 Jun 2004 01:29:42 +0000 (01:29 +0000)]
Honor NOINET6 and disable IPv6 support in libmilter and sendmail if it
is set.

MFC after: 4 days

20 years agoAdd MSG_NBIO flag option to soreceive() and sosend() that causes
truckman [Tue, 1 Jun 2004 01:18:51 +0000 (01:18 +0000)]
Add MSG_NBIO flag option to soreceive() and sosend() that causes
them to behave the same as if the SS_NBIO socket flag had been set
for this call.  The SS_NBIO flag for ordinary sockets is set by
fcntl(fd, F_SETFL, O_NONBLOCK).

Pass the MSG_NBIO flag to the soreceive() and sosend() calls in
fifo_read() and fifo_write() instead of frobbing the SS_NBIO flag
on the underlying socket for each I/O operation.  The O_NONBLOCK
flag is a property of the descriptor, and unlike ordinary sockets,
fifos may be referenced by multiple descriptors.

20 years agoRemove debugging printf that never triggered because acpi is the first
njl [Tue, 1 Jun 2004 01:04:25 +0000 (01:04 +0000)]
Remove debugging printf that never triggered because acpi is the first
user of nexus::bus_get_resource.

20 years agoAdd a warning note to security.jail.allow_raw_sockets
csjp [Tue, 1 Jun 2004 00:25:44 +0000 (00:25 +0000)]
Add a warning note to security.jail.allow_raw_sockets
about the risks of enabling raw sockets in prisons.

Because raw sockets can be used to configure and interact
with various network subsystems, extra caution should be
used where privileged access to jails is given out to
untrusted parties. As such, by default this option is disabled.

A few others and I are currently auditing the kernel
source code to ensure that the use of raw sockets by
privledged prison users is safe.

Approved by: bmilekic (mentor)

20 years agoRemove duplicates of the "wherever you go, there you are" fortune,
dougb [Tue, 1 Jun 2004 00:16:32 +0000 (00:16 +0000)]
Remove duplicates of the "wherever you go, there you are" fortune,
quote directly from the movie, and give a better attribution (with
correct spelling) for Buckaroo Banzai.

20 years ago"Get rid of the nested include of <sys/module.h> from <sys/kernel.h>" or
mlaier [Mon, 31 May 2004 22:48:19 +0000 (22:48 +0000)]
"Get rid of the nested include of <sys/module.h> from <sys/kernel.h>" or
better do no longer depend on it.

Requested-by: phk
Approved-by: bms(mentor)

20 years agoBring in mbuma to replace mballoc.
bmilekic [Mon, 31 May 2004 21:46:06 +0000 (21:46 +0000)]
Bring in mbuma to replace mballoc.

mbuma is an Mbuf & Cluster allocator built on top of a number of
extensions to the UMA framework, all included herein.

Extensions to UMA worth noting:
  - Better layering between slab <-> zone caches; introduce
    Keg structure which splits off slab cache away from the
    zone structure and allows multiple zones to be stacked
    on top of a single Keg (single type of slab cache);
    perhaps we should look into defining a subset API on
    top of the Keg for special use by malloc(9),
    for example.
  - UMA_ZONE_REFCNT zones can now be added, and reference
    counters automagically allocated for them within the end
    of the associated slab structures.  uma_find_refcnt()
    does a kextract to fetch the slab struct reference from
    the underlying page, and lookup the corresponding refcnt.

mbuma things worth noting:
  - integrates mbuf & cluster allocations with extended UMA
    and provides caches for commonly-allocated items; defines
    several zones (two primary, one secondary) and two kegs.
  - change up certain code paths that always used to do:
    m_get() + m_clget() to instead just use m_getcl() and
    try to take advantage of the newly defined secondary
    Packet zone.
  - netstat(1) and systat(1) quickly hacked up to do basic
    stat reporting but additional stats work needs to be
    done once some other details within UMA have been taken
    care of and it becomes clearer to how stats will work
    within the modified framework.

From the user perspective, one implication is that the
NMBCLUSTERS compile-time option is no longer used.  The
maximum number of clusters is still capped off according
to maxusers, but it can be made unlimited by setting
the kern.ipc.nmbclusters boot-time tunable to zero.
Work should be done to write an appropriate sysctl
handler allowing dynamic tuning of kern.ipc.nmbclusters
at runtime.

Additional things worth noting/known issues (READ):
   - One report of 'ips' (ServeRAID) driver acting really
     slow in conjunction with mbuma.  Need more data.
     Latest report is that ips is equally sucking with
     and without mbuma.
   - Giant leak in NFS code sometimes occurs, can't
     reproduce but currently analyzing; brueffer is
     able to reproduce but THIS IS NOT an mbuma-specific
     problem and currently occurs even WITHOUT mbuma.
   - Issues in network locking: there is at least one
     code path in the rip code where one or more locks
     are acquired and we end up in m_prepend() with
     M_WAITOK, which causes WITNESS to whine from within
     UMA.  Current temporary solution: force all UMA
     allocations to be M_NOWAIT from within UMA for now
     to avoid deadlocks unless WITNESS is defined and we
     can determine with certainty that we're not holding
     any locks when we're M_WAITOK.
   - I've seen at least one weird socketbuffer empty-but-
     mbuf-still-attached panic.  I don't believe this
     to be related to mbuma but please keep your eyes
     open, turn on debugging, and capture crash dumps.

This change removes more code than it adds.

A paper is available detailing the change and considering
various performance issues, it was presented at BSDCan2004:
http://www.unixdaemons.com/~bmilekic/netbuf_bmilekic.pdf
Please read the paper for Future Work and implementation
details, as well as credits.

Testing and Debugging:
    rwatson,
    brueffer,
    Ketrien I. Saihr-Kesenchedra,
    ...
Reviewed by: Lots of people (for different parts)

20 years agoTreat IPv4 private address as global scope rather than site scope.
ume [Mon, 31 May 2004 21:09:14 +0000 (21:09 +0000)]
Treat IPv4 private address as global scope rather than site scope.
Though it breaks RFC 3484, without this change, dest addr selection
doesn't work well under NAT environment.

20 years agoAssert Giant in vn_start_write() and vn_finished_write().
rwatson [Mon, 31 May 2004 20:56:10 +0000 (20:56 +0000)]
Assert Giant in vn_start_write() and vn_finished_write().

20 years agoCorrection: -h should be a synonym for -L, not -H.
kientzle [Mon, 31 May 2004 20:22:41 +0000 (20:22 +0000)]
Correction:  -h should be a synonym for -L, not -H.
(as specified by Linux Standards Base, GNU tar, and 4.4BSD documentation)

20 years agoGiant wasn't dropped here if we have to return EBUSY. This is bad.
bmilekic [Mon, 31 May 2004 20:21:06 +0000 (20:21 +0000)]
Giant wasn't dropped here if we have to return EBUSY.  This is bad.

20 years agouse source address as a hint to determine destination address.
ume [Mon, 31 May 2004 19:27:54 +0000 (19:27 +0000)]
use source address as a hint to determine destination address.

Obtained from: KAME

20 years agoRelease NFS subsystem lock and acquire Giant when calling into
rwatson [Mon, 31 May 2004 19:08:22 +0000 (19:08 +0000)]
Release NFS subsystem lock and acquire Giant when calling into
vn_start_write().

20 years agoAssert Giant in vrele().
rwatson [Mon, 31 May 2004 19:06:01 +0000 (19:06 +0000)]
Assert Giant in vrele().

20 years agoMFC: cron(8) -j and -J options.
yar [Mon, 31 May 2004 17:27:01 +0000 (17:27 +0000)]
MFC: cron(8) -j and -J options.

20 years ago- Fix typo
krion [Mon, 31 May 2004 16:55:12 +0000 (16:55 +0000)]
- Fix typo

Approved by: tobez

20 years agoAdd an assertion that nfssvc() isn't called with Giant.
rwatson [Mon, 31 May 2004 16:32:49 +0000 (16:32 +0000)]
Add an assertion that nfssvc() isn't called with Giant.

Add two additional pairs of assertions, one at the end of the NFS
server event loop, and one one exit from the NFS daemon, that
assert that if debug.mpsafenet is enabled, Giant is not held, and
that if it is not enabled, Giant will be held.  This is intended
to support debugging scenarios where Giant is "leaked" during NFS
processing.

20 years agoNecessary modifications do get pcf working again for ISA. Tested with
nsouch [Mon, 31 May 2004 14:24:21 +0000 (14:24 +0000)]
Necessary modifications do get pcf working again for ISA. Tested with
my Elektor card. Note that the hints are necessary to specify the
IO base of the pcf chip. This enables to check the IO base when the
probe routine is called during ISA enumeration.

The interrupt driven code is mixed with polled mode, which is wrong
and produces supposed spurious interrupts at each access. I still have
to work on it.

20 years agoUse __isctype() instead of __istype() for iswdigit() and iswxdigit() for
tjr [Mon, 31 May 2004 12:44:50 +0000 (12:44 +0000)]
Use __isctype() instead of __istype() for iswdigit() and iswxdigit() for
consistency with <ctype.h>.

20 years agoAdd russian translation for hardware notes and connect it to the build
den [Mon, 31 May 2004 11:43:25 +0000 (11:43 +0000)]
Add russian translation for hardware notes and connect it to the build

Build proc-alpha from english sources

Obtained from: The FreeBSD Russian Documentation Project

20 years agoDevclass have to be shared with same 'pcm' devclass, or
takawata [Mon, 31 May 2004 11:38:46 +0000 (11:38 +0000)]
Devclass have to be shared with same 'pcm' devclass, or
unit management will corrupt.

20 years agoAdd common share/locale directories (everything used by >= 5 ports [1]) and
kris [Mon, 31 May 2004 07:34:40 +0000 (07:34 +0000)]
Add common share/locale directories (everything used by >= 5 ports [1]) and
/usr/local/www

[1] Semi-arbitrary cutoff, but I didn't want to add every locale directory
    used by ports, because a lot are only used by one or two, and it's less
    intrusive for these ports to just clean up after themselves.

MFC after: 2 days

20 years agoThe NFS server modevent code manually patches the system call table to
rwatson [Mon, 31 May 2004 00:59:10 +0000 (00:59 +0000)]
The NFS server modevent code manually patches the system call table to
install nfssvc().  It also updates the argument count, but did so
without setting SYF_MPSAFE, effectively removing the MPSAFE flag even
when syscalls.master indicates it doesn't require Giant.  This change
forces the modevent to set MPSAFE as a flag to its internal notion of
an argument coutn.

Note: this duplication of information is a bad thing, but is a more
general problem I'm not currently willing to address.

20 years agoInclude <machine/bus.h> and <machine/resource.h> here (only in the
imp [Sun, 30 May 2004 23:08:53 +0000 (23:08 +0000)]
Include <machine/bus.h> and <machine/resource.h> here (only in the
kernel).  No other sys/*.h file requires machine/foo.h to be included
before it.  In addition, all the files that include rman.h would need
to include those two anyway.  From these two perspectives, it is
traditional to include things like this.

This lets us stop treating sys/rman.h specially in every bus frontend
file.

20 years agoOne more case where we want to drop the NFS server lock and acquire
rwatson [Sun, 30 May 2004 22:59:54 +0000 (22:59 +0000)]
One more case where we want to drop the NFS server lock and acquire
Giant when entering VFS.  Discovered by code inspection; still not
hit without debug.mpsafenet=1.

Reported by: bmilekic

20 years agoAcquire Giant around two more cases when calling into VFS to vput()
rwatson [Sun, 30 May 2004 22:41:43 +0000 (22:41 +0000)]
Acquire Giant around two more cases when calling into VFS to vput()
a vnode.  Not bumped into with asserts in the main tree because we
run the NFS server with Giant by default.  Discovered by inspection.

Complete annotations of Giant acquisition/release to note that it's
only because of VFS that we acquire Giant in most places in the NFS
server.

20 years agoTurn down the queue size by 8 until I can figure out why the 512th command
scottl [Sun, 30 May 2004 22:40:28 +0000 (22:40 +0000)]
Turn down the queue size by 8 until I can figure out why the 512th command
keeps on getting lost.

20 years agoRemove a stale comment: PG_DIRTY and PG_FILLED were removed in
alc [Sun, 30 May 2004 20:48:15 +0000 (20:48 +0000)]
Remove a stale comment: PG_DIRTY and PG_FILLED were removed in
revisions 1.17 and 1.12 respectively.

20 years agoAdd missing #include <sys/module.h>
phk [Sun, 30 May 2004 20:34:58 +0000 (20:34 +0000)]
Add missing #include <sys/module.h>

20 years agoDescribe pkg_version_index
brian [Sun, 30 May 2004 20:32:00 +0000 (20:32 +0000)]
Describe pkg_version_index

Reviewed by: joe

20 years agoadd missing #include <sys/module.h>
phk [Sun, 30 May 2004 20:27:19 +0000 (20:27 +0000)]
add missing #include <sys/module.h>

20 years agoAdd missing <sys/module.h> includes
phk [Sun, 30 May 2004 20:08:47 +0000 (20:08 +0000)]
Add missing <sys/module.h> includes

20 years agoAdd missing <sys/module.h> includes
phk [Sun, 30 May 2004 20:00:41 +0000 (20:00 +0000)]
Add missing <sys/module.h> includes

20 years agoZap a redundant NULL
phk [Sun, 30 May 2004 18:04:06 +0000 (18:04 +0000)]
Zap a redundant NULL

20 years agoAdd some missing <sys/module.h> includes which are masked by the
phk [Sun, 30 May 2004 17:57:46 +0000 (17:57 +0000)]
Add some missing <sys/module.h> includes which are masked by the
one on death-row in <sys/kernel.h>

20 years agoFix typo.
le [Sun, 30 May 2004 17:40:39 +0000 (17:40 +0000)]
Fix typo.

20 years agoMake the comment for DLT_NULL slightly more accurate.
dwmalone [Sun, 30 May 2004 17:03:48 +0000 (17:03 +0000)]
Make the comment for DLT_NULL slightly more accurate.

PR: 62272
Submitted by: Radim Kolar <hsn@netmag.cz>
MFC after: 1 week

20 years agoUse miligram rather than mg in the definition of carats.
dwmalone [Sun, 30 May 2004 16:09:12 +0000 (16:09 +0000)]
Use miligram rather than mg in the definition of carats.

PR: 61451
Submitted by: Tony Monroe <tmonroe+freebsd@nog.net>

20 years agostruct cpu_nameclass is a private to identcpu.c, move it there.
phk [Sun, 30 May 2004 15:16:07 +0000 (15:16 +0000)]
struct cpu_nameclass is a private to identcpu.c, move it there.

20 years agoMerged from sys/dev/fdc/fdc.c revision 1.272.
nyan [Sun, 30 May 2004 13:56:06 +0000 (13:56 +0000)]
Merged from sys/dev/fdc/fdc.c revision 1.272.

20 years agoAlso terminate program names if we hit a '/' - this is to be slightly
dwmalone [Sun, 30 May 2004 10:34:58 +0000 (10:34 +0000)]
Also terminate program names if we hit a '/' - this is to be slightly
more friendly to postfix log messages.

PR: 50912
Submitted by: Stanislav Lapshansky <slapsh@slapsh.pp.ru>

20 years agoUse a better way to calculate POINTER_WIDTH suggested by pjd@.
dwmalone [Sun, 30 May 2004 10:10:41 +0000 (10:10 +0000)]
Use a better way to calculate POINTER_WIDTH suggested by pjd@.

20 years agoA log file name may now be prefixed by a '-' if it should not be
dwmalone [Sun, 30 May 2004 10:04:03 +0000 (10:04 +0000)]
A log file name may now be prefixed by a '-' if it should not be
explicitly fsynced after kernel messages are logged. This option
should be syntax compatible with a similar option in Linux syslogd.

I've made some small changes to Pekka's patch, hoepfully I haven't
goofed anything.

PR: 66790
Submitted by: Pekka Savola <pekkas@netcore.fi>
Obtained from: Martin Schulze's syslogd
MFC after: 1 month

20 years agoAdd implementations for cimag{,f,l}, creal{,f,l} and conj{,f,l}. They are
stefanf [Sun, 30 May 2004 09:21:56 +0000 (09:21 +0000)]
Add implementations for cimag{,f,l}, creal{,f,l} and conj{,f,l}.  They are
needed for cases where GCC's builtin functions cannot be used and for
compilers that don't know about them.

Approved by: das (mentor)

20 years agoInclude <string.h> rather than <strings.h> for string function prototypes.
stefanf [Sun, 30 May 2004 08:59:10 +0000 (08:59 +0000)]
Include <string.h> rather than <strings.h> for string function prototypes.

Approved by: das (mentor)

20 years agoThe file pt_tcplisten.c lacks the $FreeBSD$ keyword. Use the opportunity to
stefanf [Sun, 30 May 2004 08:54:27 +0000 (08:54 +0000)]
The file pt_tcplisten.c lacks the $FreeBSD$ keyword.  Use the opportunity to
change all files to __FBSDID.

Approved by: das (mentor)

20 years agoRemove the macros for creal{,f} and cimag{,f}. They failed to convert their
stefanf [Sun, 30 May 2004 08:47:12 +0000 (08:47 +0000)]
Remove the macros for creal{,f} and cimag{,f}.  They failed to convert their
arguments to the needed type and so the result type depended on the argument
type.  Fixing them isn't really worth the effort because GCC emits the same
assembler code with or without them.

Not minded by: ru
Approved by: das (mentor)

20 years agoMFi386 revision 1.6
alc [Sun, 30 May 2004 04:49:39 +0000 (04:49 +0000)]
MFi386 revision 1.6
 Reenable ithread preemption for interrupts that occur while executing in
 the kernel.

20 years agoUse a unique malloc type rather than M_DEVBUF.
scottl [Sun, 30 May 2004 04:01:29 +0000 (04:01 +0000)]
Use a unique malloc type rather than M_DEVBUF.

20 years agocheck interface number
sanpei [Sun, 30 May 2004 01:48:04 +0000 (01:48 +0000)]
check interface number
Kyocera AH-K3001V has 2 data interface.  But we could use only one
interface(id = 0)

PR: kern/66779
Submitted by: Togawa Satoshi <toga@puyo.org>

20 years agoCorrect typo, vm_page_list_find() is called vm_pageq_find() for quite a
hmp [Sun, 30 May 2004 00:42:38 +0000 (00:42 +0000)]
Correct typo, vm_page_list_find() is called vm_pageq_find() for quite a
long time, i.e., since the cleanup of the VM Page-queues code done two
years ago.

Reviewed by: Alan Cox <alc at freebsd.org>,
             Matthew Dillon <dillon at backplane.com>

20 years agoPermit (but ignore) -Z with -x or -t, now that libarchive
kientzle [Sun, 30 May 2004 00:09:43 +0000 (00:09 +0000)]
Permit (but ignore) -Z with -x or -t, now that libarchive
recognizes and decompresses .Z format.

20 years agoTry to be more careful about using using the file descriptor f_file.
dwmalone [Sun, 30 May 2004 00:02:19 +0000 (00:02 +0000)]
Try to be more careful about using using the file descriptor f_file.
Syslogd should ensure that f_file is a valid file descriptor when
f_type is FILE, CONSOLE, TTY and for a PIPE where f_pid > 0. If the
descriptor is closed/invalid then the type should be set to UNUSED
or the pid should be set to 0.

To this end:
1) Don't close(f->f_file) if we can't send a message to a remote
   host because the file descriptor used for remote logging is
   stored in finet, not in f->f_file. f->f_file is probably
   uninitialised, so I guess we usually end up closing fd 0.
2) Don't close PIPE file descriptors if they are invalid.
3) If the call to p_open fails, don't set the pid.

The OpenBSD patches in this area set f_file to -1 after the fd is
closed and then avoids calling close if f_file < 0. I haven't done
this, but it might be a good idea too.

Inspired by: PR 67139/OpenBSD