Commit Graph

4996 Commits

Author SHA1 Message Date
Doug Rabson
498b291e26 Fix some more ioctls which I missed becausese they were hidden by options
which were not in LINT.
1998-06-07 19:40:41 +00:00
Doug Rabson
ecbb00a262 This commit fixes various 64bit portability problems required for
FreeBSD/alpha.  The most significant item is to change the command
argument to ioctl functions from int to u_long.  This change brings us
inline with various other BSD versions.  Driver writers may like to
use (__FreeBSD_version == 300003) to detect this change.

The prototype FreeBSD/alpha machdep will follow in a couple of days
time.
1998-06-07 17:13:14 +00:00
Poul-Henning Kamp
dbb3475507 Add a "this" style argument and a "void *private" so timecounters can
figure out which instance to wount with.
1998-06-07 08:40:53 +00:00
Steve Price
810e1311d2 keymap -> key_map so that the kernel will compile with
-DESKEYMAP.

PR:		6864
Submitted by:	Javier Rueda <jmrueda@diatel.upm.es>
1998-06-06 17:45:11 +00:00
Julian Elischer
e256a933a8 Reverse the default sense of the IPFW/DIVERT reinjection code
so that the new behaviour is now default.
Solves the "infinite loop in diversion" problem when more than one diversion
is active.
Man page changes follow.

The new code is in -stable as the NON default option.
1998-06-05 22:40:01 +00:00
Jordan K. Hubbard
100047083e Add the DPT driver here. It's kinda ironic that it got enabled in -stable
first. :)
PR:		6848
1998-06-03 13:33:34 +00:00
Bruce Evans
12e1ed28e2 Force success of the probe (after doing it as before except in one
miscconfigured case) if the port is the console.  This fixes several
bugs:
- if all sioprobe()s failed, then the console driver followed null
  pointers in cdevsw[].
- if the sioprobe() for the console failed but another sioprobe()
  succeeded, then init hung early when the console couldn't be
  opened.
- it was silly for the console to not be there after printing boot
  messages on it.
Bugs introduced by this are hopefully no worse than old ones caused
by forcing the success of the `cn' level probe.
1998-06-03 12:30:10 +00:00
Bruce Evans
b76bb1d472 Fixed a printf() arg botch in the previous commit.
Only complain about an irq mismatch in the probe if the configured
irq doesn't become active, and then print the bitmap of irqs that
became active (including clock irqs) instead of just the first
(not including clock irqs).

Bugs reported by: msmith
1998-06-03 09:43:38 +00:00
Bruce Evans
56fe964551 Ifdefed the netisr support.
PR:		6760
Reviewed by:	joerg
1998-06-03 07:56:59 +00:00
Mike Smith
f9c9bbc054 If vm86 services are available, use these to perform the APM BIOS
probe and intialisation.  This will ultimately remove the grubby (but
functional) hack that copies a real-mode function into low memory
early in locore.s.
1998-06-03 01:59:42 +00:00
Jordan K. Hubbard
ba98833992 ".. x11amp appears to be calling shmctl(id, IPC_RMID, 0) and the emulation
layer does not like the null shmid_ds buffer pointer.  The emulation layer
returned an error without ever calling FreeBSD's shmctl, so the segments
were not being deleted when the reference count went to zero."

Submitted by:	Kevin Street <street@iname.com>
1998-06-02 12:38:31 +00:00
John Dyson
e8f367853b Correct sleep priority. 1998-06-02 05:39:13 +00:00
Steve Price
a4f54cdf08 Make this ${.OBJDIR} and ${.CURDIR} aware.
PR:		2565
1998-05-31 22:40:49 +00:00
Bruce Evans
cd55b8f46c Converted the ICU-level interrupt tests (3, 5 and 8) in sioprobe() into
a test of the irq number, and made failure of this test non-fatal.
Removed related unused complications for the APIC_IO case.  Removed the
no-test3 flag.

Deverbosified the failure messages for the other tests.  Removed the
per-port verbose flag - just use the general verbose flag.
1998-05-31 10:53:55 +00:00
Poul-Henning Kamp
5db3b83128 Add minimum driver for XC6200 based cards. Currently it knows about
the HOT1 from www.vcc.com.
1998-05-30 18:28:12 +00:00
Poul-Henning Kamp
e4062700c2 100 xrpu Xilinx Reprogrammable Processing Unit 1998-05-29 08:51:34 +00:00
Poul-Henning Kamp
bfb925ba31 most recent code for Loran driver. 1998-05-29 08:04:44 +00:00
Poul-Henning Kamp
e796e00de3 Some cleanups related to timecounters and weird ifdefs in <sys/time.h>.
Clean up (or if antipodic: down) some of the msgbuf stuff.

Use an inline function rather than a macro for timecounter delta.

Maintain process "on-cpu" time as 64 bits of microseconds to avoid
needless second rollover overhead.

Avoid calling microuptime the second time in mi_switch() if we do
not pass through _idle in cpu_switch()

This should reduce our context-switch overhead a bit, in particular
on pre-P5 and SMP systems.

WARNING:  Programs which muck about with struct proc in userland
will have to be fixed.

Reviewed, but found imperfect by:       bde
1998-05-28 09:30:28 +00:00
Joseph Koshy
dce52a9c00 Install ${DESTDIR}/boot.help during `make distribution'.
PR: 6063
Submitted by: Doug <Studded@dal.net>
1998-05-27 12:13:18 +00:00
Paul Richards
aa6b464e36 Fix some bitrot in the multicast support, the move from TAILQ macros wasn't implemented fully. 1998-05-27 11:05:17 +00:00
Paul Richards
697990295f This time add an Id string that'll actually get expanded :-) 1998-05-27 09:59:13 +00:00
Paul Richards
f0a5342dc5 Add an ID string (can't believe it never had one!) 1998-05-27 09:58:00 +00:00
Søren Schmidt
4ac3e074c1 Install in /usr/lib/aout 1998-05-27 08:06:33 +00:00
Jonathan M. Bresler
29c98bc624 code was using wrong temporary variable "i", in place of "j".
i contains the contents of the EP_W0_CONFIG_CTRL register.
	i was being used as the array index into an array on the stack.

	j is initialized to 0 as it should be.

PR:		kern/6757
Reviewed by:	jmb
Submitted by:	Stephane E. Potvin <sepotvin@videotron.ca>
1998-05-26 02:28:18 +00:00
Dag-Erling Smørgrav
627d8c5f42 Use switch instead of if/else chain for 686 model identification.
Add precise model identification for 586-family CPUs.
1998-05-22 22:15:14 +00:00
Dag-Erling Smørgrav
47f4979594 Add CPU_PII to the list. 1998-05-22 00:03:23 +00:00
Dag-Erling Smørgrav
25bc695c77 Correctly identify the precise CPU model within the 686 family: instead
of just printing "Pentium Pro", check the model (cpu_id & 0xf0) and print
the appropriate information.
1998-05-21 22:53:24 +00:00
Eivind Eklund
3933c622cd Move __FreeBSD_version from src/sys/conf/newvers.sh to
src/sys/sys/param.h, to facilitate access from the kernel.  This make
it possible to do outside kernel development and have it actually work
properly.
1998-05-21 19:21:46 +00:00
John Dyson
cf2819ccb8 Make flushing dirty pages work correctly on filesystems that
unexpectedly do not complete writes even with sync I/O requests.
This should help the behavior of mmaped files when using
softupdates (and perhaps in other circumstances also.)
1998-05-21 07:47:58 +00:00
Bill Paul
e21faf3e33 And entries for ThunderLAN driver. 1998-05-21 03:22:20 +00:00
Eivind Eklund
94610ec47e Back out previous commit - it breaks when called from 'buildworld' :-(
(Damn, I wanted that in the -snap).
1998-05-20 20:54:10 +00:00
Eivind Eklund
a5eed7b873 Move __FreeBSD_version into <sys/param.h> (with automated duplication
to <osreldate.h>).  This allow kernel drivers access to it.

Approved by:	-current
1998-05-20 20:35:42 +00:00
Poul-Henning Kamp
d53fd54d9f LoadSoftModem() routine at sio.c does not trap general serial I/Os.
It fauls to probe eather DSI Modem or others.

PR:		4657
Reviewed by:	phk
Submitted by:	Kenji Saito <marukun@mx2.nisiq.net>
1998-05-20 06:46:58 +00:00
Julian Elischer
0346e0fe04 Change the description of where to get the Soft Updates files. 1998-05-19 23:23:09 +00:00
Peter Dufault
daa2c78fae Remove option for SCHED_FIFO. With this optional, SCHED_FIFO
is the same as RTPRIO_IDLE when it falls through to the default.
1998-05-19 20:59:07 +00:00
Peter Wemm
09685dbd57 Missing parens caused cpu features not to be printed for cyrix >= M2/MX.
Althought the comments say the datasheet doesn't list the device ID
registers on the M2/MX, they seem to be there and quite alive.
(It's interesting to note that the M2/MX calls itself a 686 class cpu but
 is missing a heck of a lot of features, including VME, PGE, PSE, etc)
1998-05-19 19:40:45 +00:00
Poul-Henning Kamp
4b9afc97a7 Change a data type internal to the timecounters, and remove the "delta"
function.

Reviewed, but not entirely approved by: bde
1998-05-19 18:48:30 +00:00
Poul-Henning Kamp
58067a9909 Make the size of the msgbuf (dmesg) a "normal" option. 1998-05-19 08:58:53 +00:00
Tor Egge
12d311d02e Back out part of revision 1.198 commit (clearing kernel stack pages).
By request from David Greenman <dg@root.com>
1998-05-19 00:06:35 +00:00
Tor Egge
afc6ea238f Disallow reading the current kernel stack. Only the user structure and
the current registers should be accessible.
Reviewed by:	David Greenman <dg@root.com>
1998-05-19 00:00:14 +00:00
Tor Egge
5d183e9691 Change simple lock handling to not depend upon having a local apic
available.  The per-cpu variable ss_tpr has been replaced by ss_eflags.
This reduced the number of interrupts sent to the wrong CPU, due to
the cpu having the global lock being inside a critical region.

Remove some unneeded manipulation of tpr register in mplock.s.

Adjust code in mplock.s to be aware of variables on the stack being
destroyed by MPgetlock if GRAB_LOPRIO is defined.
1998-05-17 23:08:04 +00:00
Tor Egge
2f1e70693d Add forwarding of roundrobin to other cpus. This gives a more regular
update of cpu usage as shown by top when one process is cpu bound
(no system calls) while the system is otherwise idle (except for top).

Don't attempt to switch to the BSP in boot().  If the system was idle when
an interrupt caused a panic, this won't work.  Instead, switch to the BSP
in cpu_reset.

Remove some spurious forward_statclock/forward_hardclock warnings.
1998-05-17 22:12:14 +00:00
Tor Egge
167a4d818c Use a higher priority interrupt vector for 8254 timer interrupts. 1998-05-17 21:15:18 +00:00
Justin T. Gibbs
6772bb1537 Include "eisa.h" and only provide code if NEISA > 0. 1998-05-17 20:31:50 +00:00
Tor Egge
5931a9c24e For SMP, use prv_PPAGE1/prv_PMAP1 instead of PADDR1/PMAP1.
get_ptbase and pmap_pte_quick no longer generates IPIs.
This should reduce the number of IPIs during heavy paging.
1998-05-17 18:53:19 +00:00
Tor Egge
cf4b29e405 Clear kernel stack pages before usage.
Correct panic message in pmap_zero_page (s/CMAP /CMAP2 /).
1998-05-17 17:43:13 +00:00
Tor Egge
6680ea138a Be more restrictive about when to disregard MP config table values
(previous commit broke support for Dec Personal Workstation).
1998-05-17 17:32:10 +00:00
Poul-Henning Kamp
c21410e119 s/nanoruntime/nanouptime/g
s/microruntime/microuptime/g

Reviewed by:	bde
1998-05-17 11:53:46 +00:00
KATO Takenori
8e929d6553 Some of newer PC-98 may cause "Windows Protection Fault" when booting
Windows 95 after rebooting FreeBSD without power off.  In PC-98
system, reboot mode is set via I/O port 0x37 in cpu_reset(), and
accessing of this port is the reason of the problem.  To avnoid the
fault, current status of reboot mode should be checked before
accessing the I/O port.
1998-05-16 14:44:11 +00:00
KATO Takenori
0d303cbabf Disable local APIC in UP kernel. Intel specification update describes
that local APIC should be disabled in UP system.  However, some of old
BIOS does not disable local APIC, and virtual wire mode through local
APIC may cause int 15.
1998-05-16 14:38:10 +00:00