Commit Graph

14148 Commits

Author SHA1 Message Date
John Polstra
0738f6e0c3 Reverse the order of processing object files within an executable or
shared library when invoking global constructors and destructors.
For constructors, the object files used to be processed from first
to last; now they're done from last to first.  (Destructors are done
in the opposite order, as required by the C++ standard.)  This makes
us consistent with standard gcc and egcs compilers.  It also
eliminates ordering differences between dynamic and static
executables.

Bump the value of __FreeBSD_version to 400002 to reflect this
change.
1999-03-13 01:35:44 +00:00
Poul-Henning Kamp
30f27235cb Fix an old cut&paste bogon.
Noticed by: bde
1999-03-12 21:58:54 +00:00
Warner Losh
ba1602a8ed Don't allow anyone except root to mount file systems that map uids.
This can have bad security implications, but the impact on FreeBSD
systems is minimal because this fs isn't in the default kernels and it
is unknown if it even works.

Submitted by: Manuel Bouyer <bouyer@antioche.eu.org> and
	Artur Grabowski <art@stacken.kth.se>
1999-03-12 19:40:39 +00:00
Warner Losh
841c7bb674 Remove static delcarations from {,un}register_pcic_intr declarations
in the not APIC_IO case.  This should silence the warnings when
building pcic.c as well as the undefined functions when the kernel
links.

Noticed by: several people in -current and me building the kernel
1999-03-12 18:45:47 +00:00
Andrew Gallatin
19fa470d92 Enable crashdumps on alphas.
Reviewed by: Doug Rabson <dfr@nlsystems.com>
1999-03-12 14:44:46 +00:00
Poul-Henning Kamp
37d39f0a50 Remove duplicate include.
Noticed by: bde
1999-03-12 11:09:50 +00:00
Poul-Henning Kamp
68f6066e6b Fix Typo. 1999-03-12 11:09:18 +00:00
Alan Cox
b73d0eb905 Remove vm_page_frees from kmem_malloc that are performed
by vm_map_delete/vm_object_page_remove anyway.
1999-03-12 08:05:49 +00:00
Julian Elischer
beef8a367c This solves a deadlock that can occur when read()ing into a file-mmap()
space. When doing this, it is possible to for another process to attempt
to get an exclusive lock on the vnode and deadlock the mmap/read
combination when the uiomove() call tries to obtain a second
shared lock on the vnode. There is still a potential deadlock
situation with write()/mmap().
Submitted by: Matt Dillon <dillon@freebsd.org>
Reviewed by: Luoqi Chen <luoqi@freebsd.org>
Delimmitted by tag PRE_MATT_MMAP_LOCK and POST_MATT_MMAP_LOCK
in kern/kern_lock.c kern/kern_subr.c
1999-03-12 03:09:29 +00:00
Julian Elischer
4ef2094e45 Reviewed by: Many at differnt times in differnt parts,
including alan, john, me, luoqi, and kirk
Submitted by:	Matt Dillon <dillon@frebsd.org>

This change implements a relatively sophisticated fix to getnewbuf().
There were two problems with getnewbuf(). First, the writerecursion
can lead to a system stack overflow when you have NFS and/or VN
devices in the system. Second, the free/dirty buffer accounting was
completely broken. Not only did the nfs routines blow it trying to
manually account for the buffer state, but the accounting that was
done did not work well with the purpose of their existance: figuring
out when getnewbuf() needs to sleep.

The meat of the change is to kern/vfs_bio.c. The remaining diffs are
all minor except for NFS, which includes both the fixes for bp
interaction AND fixes for a 'biodone(): buffer already done' lockup.
Sys/buf.h also contains a chaining structure which is not used by
this patchset but is used by other patches that are coming soon.
This patch deliniated by tags PRE_MAT_GETBUF and POST_MAT_GETBUF.
(sorry for the missing T matt)
1999-03-12 02:24:58 +00:00
Julian Elischer
ed1ff184f3 Fix the 'fwd' option to ipfw when asked to divert to another machine.
also rely less on other modules clearing static values, and clear them
in a few cases we missed before.
Submitted by: Matthew Reimer <mreimer@vpop.net>
1999-03-12 01:15:57 +00:00
Julian Elischer
51df594922 Stop the mfs from trying to swap out crucial bits of the mfs
as this can lead to deadlock.
Submitted by: Mat dillon <dillon@freebsd.org>
1999-03-12 00:44:03 +00:00
Bruce Evans
56ce1a8dc4 Fixed runtime accounting. The time since the previous context switch
was discarded on every call to calcru().  Hacking on the `switchtime'
global for a related fix in rev.1.38 of kern_resource.c was too fragile
and broke when p_switchtime went away.

PR:		10402
1999-03-11 21:53:12 +00:00
David Greenman
40969e381b Fixed variable overflow problem.
Obtained from:	NetBSD via Mark J. Taylor <mtaylor@cybernet.com>
1999-03-11 18:50:39 +00:00
David Greenman
8681b974c1 Increased kernel virtual address space to 1GB. NOTE: You MUST have fixed
bootblocks in order to boot the kernel after this! Also note that this
change breaks BSDI BSD/OS compatibility.
Also increased default NKPT to 17 so that FreeBSD can boot on machines
with >=2GB of RAM. Booting on machines with exactly 4GB requires other
patches, not included.
1999-03-11 18:28:46 +00:00
Poul-Henning Kamp
32c203577a Make even more of the PPSAPI implementations generic.
FLL support in hardpps()

Various magic shuffles and improved comments

Style fixes from Bruce.
1999-03-11 15:09:51 +00:00
Jordan K. Hubbard
79ccc19983 People who wanted the "tagged opening" message can boot -v. The rest
of us, who appear to have complained incessantly about this message since
it appeared, can now stop.
1999-03-11 10:48:02 +00:00
Ollivier Robert
cd1df78903 Fix two tests against hex. values for CPUID.
PR:		i386/10050
Submitted by:	Kevin Day <toasty@dragondata.com>
1999-03-10 20:42:00 +00:00
Julian Elischer
92bff1289a Need to include /contrib/dev/oltr/... not dev/oltr/... 1999-03-10 17:45:26 +00:00
Roger Hardiman
6fe7bbc584 Updated to use new APIC (SMP) safe interrupt register/unregister
functions.
Posted for review to -smp and -mobile and -hackers with no objections.

Reviewed by:	Nate
1999-03-10 15:00:54 +00:00
Roger Hardiman
ac483aaf25 Header file for pcic interrupt register/unregister functions.
No objections from -smp or -mobile or -hackers.
1999-03-10 14:56:28 +00:00
KATO Takenori
b1af2afcd4 Keyboard driver update.
Submitted by:	Kazutaka YOKOTA <yokota@FreeBSD.org>
1999-03-10 14:51:53 +00:00
Kazutaka YOKOTA
0a0319c27f - Added new options (ATKBD_DFLT_KEYMAP, KBD_DISABLE_KEYMAP_LOAD and
KBD_INSTALL_CDEV).
- Removed the note that the VESA option cannot be used on the SMP system;
  this is not true.
- Moved the option VESA to more appropriate place.
1999-03-10 14:47:41 +00:00
KATO Takenori
7cb3264c42 Sync with sys/i386/conf/options.i386 revision up to 1.108. 1999-03-10 14:01:59 +00:00
KATO Takenori
d98863613a Sync with sys/i386/conf/majors.i386 revision 1.66. 1999-03-10 14:00:21 +00:00
KATO Takenori
82a9512c46 Sync with sys/i386/conf/files.i386 revision up to 1.227. 1999-03-10 13:59:20 +00:00
KATO Takenori
29ebfa3ecc Sync with sys/boot/i386/loader/Makefile revision 1.30. 1999-03-10 13:41:44 +00:00
KATO Takenori
12637fce17 Sync with sys/boot/i386/libi386/bootinfo.c revision 1.17. 1999-03-10 13:40:29 +00:00
Kazutaka YOKOTA
e9deda23ae Keyboard driver update in preparation for the USB keyboard driver.
- Refined internal interface in keyboard drivers so that:
  1. the side effect of device probe is kept minimal,
  2. polling mode function is added,
  3. and new ioctl and configuration options are added (see below).

- Added new ioctl: KDSETREPEAT
  Set keyboard typematic rate.  There has existed an ioctl command,
  KDSETRAD, for the same purpose.  However, KDSETRAD is dependent on
  the AT keyboard.  KDSETREPEAT provides more generic interface.
  KDSETRAD will still be supported in the atkbd driver.

- Added new configuration options:
  ATKBD_DFLT_KEYMAP
  Specify a keymap to be used as the default, built-in keymap.
  (There has been undocumented options, DKKEYMAP, UKKEYMAP, GRKEYMAP,
  SWKEYMAP, RUKEYMAP, ESKEYMAP, and ISKEYMAP to set the default keymap.
  These options are now gone for good.  The new option is more general.)

  KBD_DISABLE_KEYMAP_LOADING
  Don't allow the user to change the keymap.
1999-03-10 10:36:53 +00:00
Julian Elischer
fda82fc2b9 Submitted by: Larry Lile
Move the Olicom token ring driver to the officially sanctionned location of
/sys/contrib. Also fix some brokenness in the generic token ring support.

Be warned that if_dl.h has been changed and SOME programs might
like recompilation.
1999-03-10 10:11:43 +00:00
Alan Cox
0a91231d3b For clarity, use the "map" variable introduced by the last commit
throughout exec_aout_imgact.
1999-03-10 07:07:42 +00:00
Daniel C. Sobral
f847f7558c Install new loader.rc stuff. 1999-03-10 03:34:14 +00:00
Matt Jacob
21c3b31ead Don't forget to remove devstat entries when taking
down the CCD device.
1999-03-10 00:41:27 +00:00
Brian Somers
4c32f5d217 Remove all diagnostics to stdout/stderr with #ifdef DEBUG
Statify functions in alias_nbt.c
1999-03-09 23:44:00 +00:00
Poul-Henning Kamp
a2210fe12b Make TIMER_FREQ a normal, undocumented option. Raise confusion to
a higher level with example in LINT.

Clarify comment about PPS_SYNC.  Ignore for now that it doesn't
work in FLL mode, it will in a few days.
1999-03-09 20:20:09 +00:00
Andreas Klemm
1853e64dca Fix from author of the driver:
The i++ loop from 1..1000 is too small on very fast machines like
PII 450 MHz. Increasing the loop from 1..100000 lets the machine
access PHY. After this patch it's possible to use a SMC PCI card
on a HP Kayak XA series PC Workstation. Workaround until this fix
was to enable debugging in the driver (#define EPIC_DEBUG 1).

Without that patch you get an undefined state:
while true
do
ifconfig -a | grep status:
done
The status messages flaps between twwo values, but not
"connected".

Obtained from:	Ustimenko Semen <semen@iclub.nsu.ru>
1999-03-09 17:30:12 +00:00
Kazutaka YOKOTA
11b5621ee0 Don't free() a NULL pointer! 1999-03-09 14:23:14 +00:00
Daniel C. Sobral
7caa817b0e New loader.rc stuff.
Reviewed by:	jkh
1999-03-09 14:06:55 +00:00
Alan Cox
00d4f4a5f4 Remove (redundant) map timestamp increments from some properly
synchronized routines.
1999-03-09 08:00:17 +00:00
Brian Somers
4f5f3f0763 typo police 1999-03-09 00:24:27 +00:00
Jordan K. Hubbard
8770025ccf Reserve cdev 115 for University of Waikato DAG network capture boards 1999-03-08 23:31:04 +00:00
Justin T. Gibbs
1ab33b7b83 Clean up and order register definitions. 1999-03-08 22:43:23 +00:00
Justin T. Gibbs
048714e71c Add necessary splcam() protection around target mode setup and teardown
routines as well as card access that occurs for the AC_LOST_DEVICE async
event.
1999-03-08 22:42:52 +00:00
Nick Hibma
ab18313bcb Move untimeout up before call to uhci_ii_done, avoids panic in
untimeout.

Submitted by Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
and gehenna@jp.FreeBSD.org.
1999-03-08 22:27:07 +00:00
Justin T. Gibbs
49529072c9 Add bt_port_probe() a routine shared by the EISA and ISA probe code to
determine IRQ and DRQ information.

Fix a bug that would cause us to attempt to retrieve extended sync
rate information on cards/firmware revs that do not support that command.
1999-03-08 21:36:34 +00:00
Justin T. Gibbs
e01902feb4 Ask the card where our interrupt is instead of attempting to use the EISA
config info.  On early revision cards (742a), the EISA register space,
other than the location used to determine the address of the card's main
command ports, is write only.
1999-03-08 21:35:03 +00:00
Justin T. Gibbs
4297664797 Pull 'ISA style' probe where interrupt information is determined through
commands sent to card, into the base driver module.  It is now used for
EISA board probes too.
1999-03-08 21:32:59 +00:00
Steve Price
0d43bf40ed Spell David correctly. 1999-03-08 21:21:43 +00:00
Poul-Henning Kamp
c68996e271 Integrate the new "nanokernel" PLL from Dave Mills.
This code is backwards compatible with the older "microkernel" PLL, but
allows ntpd v4 to use nanosecond resolution.  Many other improvements.

PPS_SYNC and hardpps() are NOT supported yet.
1999-03-08 12:36:14 +00:00
Daniel C. Sobral
445a035707 Add MODINFO_ARGS, parameters passed to a module at load time.
VS: ----------------------------------------------------------------------
1999-03-08 11:05:52 +00:00