Commit Graph

1388 Commits

Author SHA1 Message Date
bde
a1c70f26ad Fixed setting of `safepri'. It should be SWI_AST_MASK most of the
time, but was left at 0.  This caused the "can't happen" case in
splz_swi to happen for panics when tsleep() calls splx(safepri)
and there is a SWI_AST pending.  This was harmless because the
the error handling happens to be right.  Debugging this was tricky
because debugger traps force SWI_AST_MASK on in `cpl'.
1997-11-21 18:27:15 +00:00
bde
63e63c0d00 Moved splhigh()/spl0() calls from isa_configure() to configure() so that
there is a natural place to initialize `safepri' in a future commit.
Spinoffs:
- spl0() gets called in the unlikely event that isa is not configured.
- configure() has better control over enabling interrupts.
- it is now less unclear that interrupts aren't actually enabled early.
  Rev.1.48 of autoconf.c seems to have done the opposite of what was
  intended - moving the isa_configure() call delayed the spl0() side
  effect.
Added some comments about the bogons.  Removed the splhigh() call since
it is a no-op.
1997-11-21 18:14:02 +00:00
peter
e74dd6943e Previous commit refers to SWAP_PART, which is only defined if the include
file that it's in is #included...
1997-11-21 05:44:07 +00:00
bde
2ba2c6e5da Removed a duplicate (sloppy common-style) definition.
Fixed some style bugs.
1997-11-20 19:41:20 +00:00
bde
d1b702788e Moved some extern declarations to header files (unused ones to /dev/null). 1997-11-20 19:30:35 +00:00
bde
4d907b31d0 Avoid passing some more `retval's. 1997-11-20 18:43:55 +00:00
bde
40314588fd Fixed wrong limits for the kernel text in db_numargs(). The
interval [VM_MIN_KERNEL_ADDRESS, etext] was used instead of
[btext, etext).  Added a comment about this being completely
wrong for LKMs.  This only affects interpreting the instructions
after the return to attempt decide the number of args.  The
attempt usually fails anyway.
1997-11-20 18:24:52 +00:00
bde
dfbf1ec5a9 Fixed write enabling of the kernel text section. The overlap
checking was mostly wrong at the boundaries.  For the lower limit,
VM_MIN_KERNEL_ADDRESS was used instead of btext and there was an
off-by-(`size' - 1) error.  For the upper limit, &etext was used
instead of etext and there was an off-by-1 error.  The bugs were
harmless because `size' is not too large and some memory is mapped
just beyond the ends.  We still depend on the former to avoid
having to handle the case where the memory range covers the whole
text section, and on the latter to prevent problems when we map
just beyond an end to allow writing an address range that overlaps
the end.

Fixed placement of a nearby comment.
1997-11-20 18:09:36 +00:00
bde
dbdea37b84 Don't allow setting the dump device to any partition except the
one traditionally reserved for swap devices.  The restrictions
should now be the same as the ones for dumpsys().  The restriction
on the partition should be removed someday, and dumpsys() shouldn't
repeat all the checks.
1997-11-20 17:07:21 +00:00
bde
dcdbeebf14 Removed an unused #included.
Ifdefed #includes that are not used in the SMP case.
1997-11-18 11:32:31 +00:00
bde
17497cdb02 Removed #unused includes.
Added a used #include (don't depend on yet to be fixed namespace pollution).
1997-11-18 11:16:56 +00:00
bde
50390b0fa2 Don't #include <machine/smp.h> even in the SMP case. Fixed the one
place that depended on it.  The "bazillion warnings" mentioned in the
log for rev.1.45 apparently aren't a problem any more.  It is hard
to be sure because the SIMPLELOCK_DEBUG option turns off (and breaks)
things in the SMP case.
1997-11-18 09:27:23 +00:00
tegge
cd60b5872c Use UPAGES when setting up private pages for SMP (which includes idle stack). 1997-11-07 19:58:34 +00:00
phk
ccc7e7fa9f Rename some local variables to avoid shadowing other local variables.
Found by: -Wshadow
1997-11-07 09:21:01 +00:00
phk
4d26888936 Remove a bunch of variables which were unused both in GENERIC and LINT.
Found by:	-Wunused
1997-11-07 08:53:44 +00:00
phk
4c8218a5c7 Move the "retval" (3rd) parameter from all syscall functions and put
it in struct proc instead.

This fixes a boatload of compiler warning, and removes a lot of cruft
from the sources.

I have not removed the /*ARGSUSED*/, they will require some looking at.

libkvm, ps and other userland struct proc frobbing programs will need
recompiled.
1997-11-06 19:29:57 +00:00
kato
a254837af9 Identify MediaGX CPU correctly. Old MeidaGX CPU and GXm CPU are
distinguished.  CPU-classes of MeidaGX CPU and GXm CPU are 486-class
and 586-class, respectively.

PR:		4936
1997-11-06 03:10:28 +00:00
kato
81b353e477 Fix rare 6x86 CPU whose DIR0 = 0x20 - 0x28 case. 1997-11-05 15:12:44 +00:00
kato
7fee134339 Use same address for USERCONFIG_BOOT on PC-98 as IBM-PC.
Submitted by:	H. Nokubi <h-nokubi@nmit.tmg.nec.co.jp>
Forgotten by:	kato
1997-11-04 03:19:25 +00:00
jseger
1f886000f4 Change comments about ijppp to iijppp.
PR:		conf/4905
Submitted by:	takas-su@is.aist-nara.ac.jp
1997-10-31 22:10:09 +00:00
bde
fb826377ff Removed unused #includes. 1997-10-28 15:59:26 +00:00
bde
561cc79f50 Don't include <machine/cputypes.h> or declare cputype/class interfaces
in <machine/cpu.h>.  Moved the declarations to <machine/cputypes.h>.
Fixed style bugs in the moved code.  Fixed everything that depended on
the nested include.  Don't include <machine/cpu.h> (in the changed files)
unless something in it is used directly.
1997-10-28 11:43:57 +00:00
joerg
d7060af272 Remove the stale `log' non-pseudodevice.
Found by:	the new config(8) ;-)
1997-10-28 07:24:35 +00:00
bde
af87f94a9c Moved declaration of etext from <machine/md_var.h> to <machine/cpu.h>
and fixed everything that dependended on it being declared in the old
place.  It is used in "machine-independent" code in subr_prof.c.

Moved declaration of btext from subr_prof.c to <machine/cpu.h>.  It
is machine-dependent.
1997-10-27 17:23:18 +00:00
bde
059c792df9 Oops, <machine/psl.h> is used unconditionally in -current. 1997-10-27 17:19:20 +00:00
bde
cae681d984 Cleaned up #includes.
Ifdefed conditionally used includes.

Finished changing indentation of per-statement comments to 40.
1997-10-27 16:35:34 +00:00
jkh
abd3e4e891 Bump MAXDSIZ to 512MB so that soft limits have a chance to actually
regulate this.
Reviewed by:	dyson
1997-10-27 00:38:46 +00:00
dyson
298618c900 Check to see if the pv_limits are initialized before checking. 1997-10-27 00:34:15 +00:00
dyson
8be1e875ff Change the initial amount of memory allocated for pv_entries to be proportional
to the amount of system memory.  Also, clean-up some of the new pv_entry
mgmt code.
1997-10-26 12:33:39 +00:00
nate
c68183d0b8 - Do a bunch of gratuitous changes intended to make the code easier to
follow.
 * Rename/reorder all of the pccard structures, change many of the member
   names to be descriptive, and follow more closely other 'bus' drivers
   naming schemes.
 * Rename a bunch of parameter and local variable names to be more
   consistant in the code.
 * Renamed the PCCARD 'crd' device to be the 'card' device
 * KNF and make the code consistant where it was obvious.
 * ifdef'd out some unused code
1997-10-26 04:36:24 +00:00
dyson
43e9a7b262 Somehow an error crept in during the previous commit. 1997-10-25 04:49:01 +00:00
dyson
56bd787cbb Support garbage collecting the pmap pv entries. The management doesn't
happen until the system would have nearly failed anyway, so no signficant
overhead is added.  This helps large systems with lots of processes.
1997-10-25 02:41:56 +00:00
dyson
bcae676793 Decrease the initial allocation for the zone allocations. 1997-10-24 23:41:04 +00:00
msmith
0d9f4e4f4d Reference the DMI table inside the SMBIOS table correctly, not using a variable
that won't be initialised until a later test.
Submitted by:	bde via -Wunused
1997-10-21 07:40:22 +00:00
joerg
f44f4b4ca1 Make all the documented (in pcvt(4)) options supported options. While
i was at it, do no longer insist on `PCVT_FREEBSD' being declared in
the config file, but default it to a reasonable value.

More cleanup to follow, but this part is safe for RELENG_2_2, too.
1997-10-18 10:59:47 +00:00
phk
36e7a51ea1 Last major round (Unless Bruce thinks of somthing :-) of malloc changes.
Distribute all but the most fundamental malloc types.  This time I also
remembered the trick to making things static:  Put "static" in front of
them.

A couple of finer points by:	bde
1997-10-12 20:26:33 +00:00
peter
f8166c2605 Try and fix some style problems 1997-10-12 15:24:39 +00:00
jkh
b456ae04aa Allow "foo0: disabled, not probed" message to stay, but make it conditional
on bootverbose so that those who _really wanna know_ still can.
Compromise suggested by:	joerg
1997-10-12 08:31:41 +00:00
phk
645e7b2ab6 Distribute and statizice a lot of the malloc M_* types.
Substantial input from:	bde
1997-10-11 18:31:40 +00:00
peter
df386e1ca3 Compensate for pcb.h tweaks.
(Bruce pointed out the nesting)
1997-10-10 12:42:54 +00:00
peter
9e46021905 Don't #include unneeded includes here. pcb_ext.h picks up lots of other
stuff with it.
1997-10-10 12:40:09 +00:00
peter
d590550373 GPROC0_SEL isn't used in any *.s files it seems.. 1997-10-10 12:38:27 +00:00
peter
fc821abd4c Convert the VM86 option from a global option to an option only depended
on by the files that use it.  Changing the VM86 option now only causes
a recompile of a dozen files or so rather than the entire kernel.
1997-10-10 09:44:12 +00:00
nate
967f29d3c4 - Enable PS/2 mouse support by default. Given that almost all new hardware
has a PS/2 port, this is a good thing.  Note, older 386/486 boxes may
  lockup the keyboard controller with this enabled, but most of these kinds
  of machines don't run -current, so the benefits outweigh the downsides.

Discussed with:		Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
1997-10-08 17:05:03 +00:00
kato
41003c48a0 Added two Cyrix 6x86/6x86MX options.
- CPU_CYRIX_NO_LOCK enables weak locking.  If this option is not set and
  FAILESAFE is defined, NO_LOCK bit of CCR1 is cleared.
- CPU_WT_ALLOC enables write-through allocation.
1997-10-06 08:08:41 +00:00
dyson
a96b1911b8 It is possible that MB's with really broken bios's not set up more of
the mtrr registers.  This just fills in more of the registers.
1997-10-06 02:11:32 +00:00
dyson
038c3f0595 Make sure that the memory type registers are the same for each CPU
in a P6 SMP system.  Some MB bios'es don't set the registers up correctly
for the AP's.  Additionally, set the memory between 0xa0000 and 0xbffff
as write combining.
1997-10-05 03:19:29 +00:00
kato
24a6bdc01c Call identifycyrix() when 6x86MX CPU is found. The identifycyrix()
function sets cyrix_did.  Old code could not display correct variable.

Reviewed by:	Hideyuki Suzuki <hideyuki@sat.t.u-tokyo.ac.jp>
1997-10-03 14:23:47 +00:00
gibbs
91399998c0 Fix a serious bug I introduced while adding in support for CAM interrupts.
It seems I didn't count my 0's properly when adding the new masks into
icu_vector.s pushing SWI_AST_MASK off the end of the array and screwing
up the indexing for SWI_CLOCK_MASK.

Fix the bug icu_vector.s and also reformat the code in both icu_vector.s and
apic_vector.s so that it will be much harder to make the same mistake in
the future.

Submitted by:	Bruce Evans <bde@zeta.org.au>
1997-09-28 19:30:01 +00:00
mckay
2ff71b2b21 Add a small hack to support the strange antics of the Unisys ELI 4003. This
machine generates an NMI for each floating point error, just like an old XT.
Since it is ISA only, reading the EISA status port yields 0xff, which would
give a spurious EISA panic.  The simplest thing to do is to ignore the 0xff.
1997-09-28 15:48:34 +00:00