christos
3f8f92f2b4
Add EXCL keyword as described in tech_kern, and fix comments. Make the
...
vtrace syscall UNIMPL because it is.
1999-06-09 04:25:30 +00:00
briggs
f98c8a0394
Remove some register declarations.
...
Get Q9x0 dual SCSI at least basically working.
Be paranoid about some register reads.
1999-06-09 03:41:34 +00:00
christos
2cfd9ef718
Synchronize with GENERIC
1999-06-09 01:47:14 +00:00
simonb
6a949cddfb
Include <pmax/pmax/machdep.h> instead of declaring our own prom_*()
...
prototypes.
1999-06-08 23:42:36 +00:00
simonb
b7a2ec3f01
+ Call prom_scsiid() to found out what the host SCSI ID should
...
be instead of hardcoding values.
+ Print the host SCSI ID in siiattach().
XXX - probably should do the same to the ASC driver?? The manuals for
the 5000 series machines don't mention the scsiidN env variable, but it
is present on all the models I've looked at...
1999-06-08 23:41:59 +00:00
simonb
7eb995464d
+ Add prototypes from the prom_*() callback routines.
...
+ Remove leading "extern" from function declarations.
+ CG unused latched_cycle_cnt.
1999-06-08 23:40:42 +00:00
simonb
661c94c72c
+ Add prom_getenv(), and use it instead off calling callv->_getenv.
...
+ Add prom_scsiid() to read and decode the prom scsiidN environment
variable that says what the host SCSI id should be.
+ Include <pmax/pmax/machdep.h> instead of declaring our own
prom_*() prototypes.
1999-06-08 23:40:19 +00:00
mrg
efb227d3a7
fix a few KNF nits ..
1999-06-08 10:38:15 +00:00
mrg
30c351dc59
mmm, missing return types make gcc unhappy.
1999-06-08 10:35:36 +00:00
mhitch
d9be0d6e6b
When entering a read-only page for MIPS3, va does not need to be adjusted by PAGE_SIZE
...
when flushing the I-cache.
1999-06-08 03:44:18 +00:00
thorpej
c146fe969e
Regen.
1999-06-08 03:08:32 +00:00
thorpej
8b35c542b5
mincore: caddr_t -> void *
1999-06-08 03:07:39 +00:00
thorpej
84380f9fbe
In sosend(), if so_error is set, clear it before returning the error to
...
the process (i.e. pre-Reno behavior). The 4.4BSD behavior (introduced
in Reno) caused transient errors to stick incorrectly.
This is from PR #7640 (Havard Eidnes), cross-checked w/ FreeBSD, where
Bill Fenner committed the same fix (as described in a comment in the
Vat sources, by Van Jacobsen).
1999-06-08 02:39:57 +00:00
nisimura
540b02ab76
- Exterminate haunted evil soul of MIPS va_arg(). Verified OK with
...
either endian. Not a perfect solution which would be revealed on
a certain condition when va_arg() is applied to magical struct
arguments passed by value. format_bytes() is now saved. With the
help from Noriyuki Soda and Masanari Tsubai.
1999-06-08 00:46:38 +00:00
thorpej
1c5f2999b2
Make sure `olddelta' is a valid pointer before performing the guts of
...
the adjtime(2) system call. Fixes PR #7721 , Darren Reed.
1999-06-07 22:33:53 +00:00
is
b7ee76f1c4
Check for an unterminated bus; if yes: complain and don't try to use this
...
bus. Without this, cbiiisc used to hang if nothing was connected.
Reported by Matthias Scheler. A similar method to avoid this was suggested
by Ralph Schmidt.
1999-06-07 21:30:57 +00:00
thorpej
2c35c7bd03
Only declare block major numbers for devices which can be the root device.
1999-06-07 20:31:27 +00:00
thorpej
d76e7b8c6d
Don't pass a nam2blk around at all; just have setroot() and friends reference
...
dev_name2blk[] directly. Addresses PR #7622 (ITOH Yasufumi), although
in a different way.
1999-06-07 20:16:08 +00:00
thorpej
12006f3c05
Don't clobber the error returned by uiomove() when starting the audio
...
output (in case we got a partial block). Fixes PR #7722 , from
Antti Kantee <pooka@iki.fi>.
1999-06-07 19:24:38 +00:00
thorpej
ec9fd3b48c
Fix a braino in vm_map_unlock(). Thanks to Chuck Silvers for pointing
...
out that there was a problem, and for sending me a trace.
1999-06-07 16:34:04 +00:00
thorpej
5de7bac9b1
Print the maps flags in "show map" from DDB.
1999-06-07 16:31:42 +00:00
thorpej
397b71aaca
Fix a typo.
1999-06-07 15:25:19 +00:00
mrg
0525e9c7ef
add ebus attachment for cs4231. this does not work as it requires ebus DMA and will panic if enabled. but it should otherwise be mostly complete.
1999-06-07 14:59:14 +00:00
mrg
03c5c00056
remove "EXPERIMENTAL" comment from this file, as it does not exist elsewhere in this directory.
1999-06-07 14:43:34 +00:00
thorpej
a0faadd7d2
Make traces work with ELF kernels.
1999-06-07 07:00:07 +00:00
mrg
aa506f8098
copyright foo. in the future, we will all be binary-redistributable.
1999-06-07 05:40:08 +00:00
eeh
1884f05354
Another general cleanup:
...
Remove the entire idea of fasttrap interrupts since V9 traps are really cheap,
the CPUs are really fast, and the completely different trap frames would make
these handlers really difficult to implement.
pmap_changeprot() was only used by the clock and one other place; deprecate it.
probeget() and probeset() now take 64-bit addresses even in 32-bit mode so we
can probe IO locations by physical addresses.
Some pmap cleanup.
Some more copyright cleanup.
1999-06-07 05:28:03 +00:00
thorpej
4476366369
Make sure the regression test compiles.
1999-06-07 02:25:05 +00:00
mrg
7185af78dc
oops. move sendit: above the PFIL_HOOKS so that multicast traffic is filtered. from darren reed.
1999-06-07 01:26:04 +00:00
pk
62cb666f4a
Guard our global resource `phpool' against all interrupts.
1999-06-06 22:20:15 +00:00
pk
0e286f5c1f
Guard our global resource `expool' against all interrupts.
1999-06-06 22:14:53 +00:00
ragge
92d41a0675
Copied from ../../arch/vax/if/if_uba.c,v
1999-06-06 20:45:21 +00:00
ragge
0f8d40c444
Copied from ../../arch/vax/if/if_uba.h,v
1999-06-06 20:45:02 +00:00
is
92568502cc
Don't dump all the registers at attach time. It works now.
1999-06-06 19:58:31 +00:00
ragge
2778cc9866
Copied from ../../arch/vax/if/if_qereg.h,v
1999-06-06 19:27:06 +00:00
ragge
8237a141e5
Copied from ../../arch/vax/if/if_qe.c,v
1999-06-06 19:26:44 +00:00
ragge
508b5c5cee
Bus'ify the mscp code also.
1999-06-06 19:16:18 +00:00
ragge
a2692d780b
Fix map register/DMA wait queues.
...
Still to do:
BDP handling. Currently missing.
Ubareset's won't work at all.
1999-06-06 19:14:48 +00:00
ragge
3bb07459cd
Qbus moved in hierarchy.
1999-06-06 19:10:49 +00:00
ragge
4756cdb74e
Page tables must be pageable (where did this disappear?)
...
Fix a PGOFSET -> VAX_PGOFSET miss.
Stylistic cleanup.
1999-06-06 19:09:50 +00:00
ragge
f6d61fb6ad
Add an define for SGMAP.
1999-06-06 19:07:11 +00:00
ragge
d55d0ac4b5
Add some more IPRs for KA670.
1999-06-06 19:06:29 +00:00
ragge
db8c0c9c4c
Use gencons if VAX670.
1999-06-06 19:05:21 +00:00
ragge
02637941e5
Ops, forgot this file.
1999-06-06 19:03:40 +00:00
ragge
134b65fde3
Added support for Qbus DMA.
1999-06-06 19:00:53 +00:00
ragge
64572c459a
sgmap files, copied from the Alpha port and modified for vax.
1999-06-06 18:58:50 +00:00
dante
a775803f91
Add adv* entry under ISA devices
1999-06-06 17:57:23 +00:00
dante
600618d977
Add adv0 entry under ISA SCSI controllers
1999-06-06 17:37:03 +00:00
dante
162dba620b
Add support for ISA, EISA and ISApnp cards
...
Fixed a bus reset bug which shows on arm32
1999-06-06 17:33:18 +00:00
dante
29c6046a31
Add adv_isa.c entry
1999-06-06 17:30:37 +00:00
dante
8c090be7cb
Add support for the following AdvanSys SCSI ISA cards:
...
Connectivity Products:
ABP510/5150 - Bus-Master ISA (240 CDB) (Footnote 1)
ABP5140 - Bus-Master ISA (16 CDB) (Footnote 1) (Footnote 2)
ABP5142 - Bus-Master ISA with floppy (16 CDB) (Footnote 3)
Single Channel Products:
ABP542 - Bus-Master ISA with floppy (240 CDB)
Footnotes:
1. This board has been shipped by HP with the 4020i CD-R drive.
The board has no BIOS so it cannot control a boot device, but
it can control any secondary SCSI device.
2. This board has been sold by SIIG as the i540 SpeedMaster.
3. This board has been sold by SIIG as the i542 SpeedMaster.
1999-06-06 17:28:58 +00:00
ragge
22b5707362
Complete support for VAX 4000/300. From Michael Kukat. (michael@camaronet.de)
1999-06-06 14:23:46 +00:00
mrg
e6545647b8
update this to GENERIC rev. 1.84.
1999-06-06 13:06:38 +00:00
mrg
440ac638bc
EXEC_ELF32 is now default. enable "rnd"
1999-06-06 13:00:03 +00:00
pk
3d9ae33cfb
Add COMPAT_AOUT.
1999-06-06 09:23:38 +00:00
mrg
1428ee6103
note that this is for an u5/u10 (from hubert)
1999-06-06 01:59:40 +00:00
eeh
186c3eba2b
Make pbrobeget() and probeset() work for 64-bit values as well. To do this
...
the arguments are changed so the address is first and the ASI second so we
can have the address in %o0:%o1 and not worry about unused registers.
Also a bit of copyright cleanup.
1999-06-05 21:58:16 +00:00
eeh
3f7968c736
Fix things up so they compile again.
1999-06-05 20:38:24 +00:00
eeh
fcd1351b4c
Add support for AOUT_COMPAT which we'll need when the sparc port cuts to ELF.
1999-06-05 16:55:19 +00:00
eeh
dca7a79c9d
Guys, let's get real. We don't really want an #if !defined() for every possible
...
machine that could concievably have defined an IPL_AUDIO, do we?
1999-06-05 16:51:39 +00:00
mrg
14729c2b11
fix lpt definition. add audiocs at ebus. oops, comment broken/incomplete devices.
1999-06-05 14:34:22 +00:00
mrg
5e7ea137ac
lpt at ebus. fixed (commented) audiocs attachments.
1999-06-05 14:33:44 +00:00
mrg
875af1a2f8
put `audiocs' stuff in here so we can share it between sbus & ebus.
1999-06-05 14:32:08 +00:00
mrg
67cbdf5623
split sbus audiocs code up so we can share it with the ebus. XXX ebus DMA is probably different.
1999-06-05 14:29:10 +00:00
mrg
eca7784d58
XXX avoid redefiing splaudio and IPL_AUDIO on the sparc XXX
1999-06-05 14:26:07 +00:00
mrg
756c2cde22
map in registers, configure interrupts, this appears to be OK now.
1999-06-05 14:19:44 +00:00
mrg
e8ccf39491
find ebus device INO values via the "interrupt-map" and "interrupt-map-mask" properties.
1999-06-05 14:18:26 +00:00
augustss
d80294fead
Regen.
1999-06-05 14:14:42 +00:00
augustss
c5255e5a48
Remove vendor from one of the descriptive strings; it's superfluous.
1999-06-05 14:14:02 +00:00
augustss
0e2edfb67a
Very small formatting nit.
1999-06-05 13:43:03 +00:00
pk
bea0725979
64-bit safety to help sharing compilation tools with sparc64.
1999-06-05 12:54:23 +00:00
tron
a1259a8d1b
Regen.
1999-06-05 10:42:15 +00:00
pk
d256dc6c3c
`rasops_glue' is only here to force the header file's name hence it must
...
be mentioned first in the expression.
Shudder..
1999-06-05 10:42:11 +00:00
tron
bffc27b587
Add Matrox MGA 400, 3Dfx Banshee and Voodoo 3.
1999-06-05 10:41:37 +00:00
tron
e9fe988d72
Regen.
1999-06-05 09:54:29 +00:00
tron
1c05aff552
Add Brother HL-1050 laser printer. Fixes second half of PR kern/7699
...
by Bjoern Labitzke.
1999-06-05 09:54:09 +00:00
tron
2b262e8565
Regen.
1999-06-05 09:44:03 +00:00
tron
fce6975678
Add entry for Riva TNT and correct entry for Riva 128.
...
Fixes first half of PR kern/7699 by Bjoern Labitzke.
1999-06-05 09:43:21 +00:00
pk
56aa5f9391
Cast ptrdiff_t to long for printf purposes.
1999-06-05 08:36:29 +00:00
pk
9db217428b
Cast size_t to long for printf purposes.
1999-06-05 08:35:45 +00:00
mrg
3670ff2120
if we are not bypassing the MMU, use ASI_PRIMARY. map PCI memory space
...
non-cached. XXX clean this up by looking at the "non-cacheable" bit of
the full physical address.
avoid having 'nbuf' change between calls to `mdallocsys()' by setting it
in mdallocsys() like the MI allocsys() does. XXX fix this too!
fix some printf lossage.
update for probeget() changes -- though bus_space_probe() appears to be
unused on the sparc64.
1999-06-05 05:35:41 +00:00
mrg
cc49a21298
use common IOMMU routines.
1999-06-05 05:30:43 +00:00
mrg
da265ce045
clean up a bit, implement pci_conf_{read,write}() with probe[gs]et() (not yet used).
1999-06-05 05:29:50 +00:00
mrg
bb0d20abc4
lpt at ebus.
1999-06-05 05:28:36 +00:00
mrg
dcb6040569
clock attaches at ebus also now.
1999-06-05 05:10:01 +00:00
mrg
4b183190b5
update a commit slightly.
1999-06-05 05:08:25 +00:00
mrg
2ee43849be
catch up with probe[gs]et() changes.
1999-06-05 05:05:11 +00:00
thorpej
f421cc0851
Keep interrupt-safe maps on an additional queue. In uvm_fault(), if we're
...
looking up a kernel address, check to see if the address is on this
"interrupt-safe" list. If so, return failure immediately. This prevents
a locking screw if a page fault is taken on an interrupt-safe map in or
out of interrupt context.
1999-06-05 04:12:31 +00:00
mrg
6dffb4dff3
use common IOMMU code for sbus and psycho (remove old iommu
...
device declaration, we don't want it). pull in psycho, pci,
ata and pciide code. clock, eeprom and power attach at sbus
*and* ebus now (clock as `eeprom' works). add `lpt at ebus',
wd major number, and other misc. commented devices.
1999-06-05 03:16:19 +00:00
mrg
cb392a2e1d
only set LD to /usr/ccs/bin/ld if it exists. avoid empty SFILES.
1999-06-05 01:56:31 +00:00
thorpej
2c3dc83a64
Keep interrupt-safe maps on an additional queue. In uvm_fault(), if we're
...
looking up a kernel address, check to see if the address is on this
"interrupt-safe" list. If so, return failure immediately. This prevents
a locking screw if a page fault is taken on an interrupt-safe map in or
out of interrupt context.
1999-06-04 23:38:41 +00:00
castor
6b1b77230e
in switch_exit() previous fix forgot to guard REG_L with REG_PROLOGUE and
...
REG_EPILOGUE.
1999-06-04 21:43:12 +00:00
castor
4f92d800a6
fix register restore to be safe for n32 model.
1999-06-04 21:35:47 +00:00
thorpej
c5e6001ff8
Don't built most of the PCVT utilities; they're not really useful anymore,
...
now that we're trying to deprecate PCVT.
XXX Leave the fonts and font editor for now.
1999-06-04 18:47:33 +00:00
drochner
b458b1c57e
In pckbd_decode(), do the remapping of "extended" (multibyte) keys
...
before the elimination of typematic events.
This fixes the case where the "extended" prefix was not ignored and
affected the next keystroke. (seen with the AltGr key)
1999-06-04 15:03:43 +00:00
mrg
8613b8e39d
avoid uninitalised pointers.
1999-06-04 14:29:38 +00:00
mrg
3a1472c106
GC dead code. add support for PCI and IDE boot device detection, plus hme ethernet.
...
should probably deal with be and qe, etc.
1999-06-04 14:00:38 +00:00
mrg
27bcf2b6e6
eek. sparc can have "wd" disks.
1999-06-04 13:58:59 +00:00
mrg
e40f54e4c7
GC dead code. add support for PCI and IDE boot device detection, plus hme ethernet.
...
should probably deal with be and qe, etc.
1999-06-04 13:55:37 +00:00
mrg
a1c100d377
clone this from the macppc port.
1999-06-04 13:51:57 +00:00
mrg
10b89455c7
pull iommu code out of sbus code so we can share it with the PCI.
...
define some useful PCI macros.
1999-06-04 13:48:48 +00:00
mrg
03adf4aad1
PCI driver for the UltraSPARC. this only works on the Ultra5/10 machines
...
(`SUNW,sabre') for now, and it doesn't really quite work there yet anyway.
the bus space/dma code is cloned from the sbus driver. the IOMMU code also
is cloned from the sbus code, but separated out into iommu.c so that we can
share it with the sbus driver. hopefully, much of the bus space/dma code
can also be re-shared with the sbus driver and the ebus driver but for now
these copies will do.
support for the real UltraSPARC PCI (`SUNW,psycho') is unwritten, though
most of this code is shared with it.
we can probe PCI config space and try to configue devices, but interrupts
don't work yet...
1999-06-04 13:42:14 +00:00
mrg
36237341af
support for the UltraSPARC `Extension Bus' found on the PCI machines.
...
the bus space/dma code is cloned from the PCI code to do the same thing
which itself was cloned from the sbus bus space/dma code. the bus dma
code is non-functional at this point.
1999-06-04 13:29:13 +00:00
mrg
da08612af4
Ultra5/10 configuration.
1999-06-04 13:22:22 +00:00
oster
8c39e1bf02
When adding a hot spare, remember to lock down the main raidPtr
...
structure before mucking with its contents.
1999-06-04 02:02:39 +00:00
oster
60769ea563
At config time, initialize a small amount of space for the disk queues
...
corresponding to the hot spares. We'll need that space when a spare is
actually added. Huge Thanks to Martin Laubach for helping track this down.
1999-06-04 01:51:00 +00:00
oster
3af0ce9e19
Don't count two problems with a single component as two
...
component failures! Also: remember to configure the disk queues for
the spares -- failure to do that is Bad(tm).
Huge Thanks to Martin Laubach for helping track this down.
1999-06-04 01:50:01 +00:00
minoura
bb1f24c221
Could not be compiled without PMAP_NEW.
1999-06-03 14:43:33 +00:00
leo
9a13ebbdd6
Fix lossage with the et4000. Some of the CRT registers were incorrect.
1999-06-03 12:38:50 +00:00
thorpej
8c59c67288
Just say no to interrupt-safe maps.
1999-06-03 00:05:45 +00:00
thorpej
acf81da21e
A page fault on a non-pageable map is always fatal.
1999-06-02 23:26:21 +00:00
christos
f2393e39f3
Don't include rasops files unconditionally; only when we have rasterconsole or
...
wsdisplay.
1999-06-02 23:24:54 +00:00
christos
beb12b13b9
Don't include rasops and wscons goo here; we get it already from fbvar.h
1999-06-02 23:24:00 +00:00
thorpej
779ecdd773
Simplify the last even more; We downgraded to a shared (read) lock, so
...
setting recursive has no effect! The kernel lock manager doesn't allow
an exclusive recursion into a shared lock. This situation must simply
be avoided. The only place where this might be a problem is the (ab)use
of uvm_map_pageable() in the Utah-derived pmaps for m68k (they should
either toss the iffy scheme they use completely, or use something like
uvm_fault_wire()).
In addition, once we have looped over uvm_fault_wire(), only upgrade to
an exclusive (write) lock if we need to modify the map again (i.e.
wiring a page failed).
1999-06-02 22:40:51 +00:00
is
1790023ce8
Support ADOS file systems with more then 512 bytes/sector.
...
Fixes contributed by Detlef Würkner in PR 7653.
1999-06-02 22:04:30 +00:00
thorpej
0723d57281
Clean up the locking mess in uvm_map_pageable() a little... Most importantly,
...
don't unlock a kernel map (!!!) and then relock it later; a recursive lock,
as it used in the user map case, is fine. Also, don't change map entries
while only holding a read lock on the map. Instead, if we fail to wire
a page, clear recursive locking, and upgrade back to a write lock before
dropping the wiring count on the remaining map entries.
1999-06-02 21:23:08 +00:00
is
59b9a4fb42
Handle RDB ( Amiga native ) partition tables on media with more than 512
...
bytes/sector correctly.
Submitted by Detlev Würkner in PR 7653.
Non-trivial merge with the 1.30 change (handle old AmigaDOS fs partitions
with simulated sectorsperblock > 1) by myself, so don't blame Detlev if it
doesn't work (but I checked!).
XXX We still need changes to the file systems to handle this fully.
1999-06-02 21:09:03 +00:00
mycroft
7d5f7a34ce
We need wsdisplayvar.h for this to compile now!
1999-06-02 12:11:39 +00:00
drochner
ee9cd19ba7
regen
1999-06-02 08:57:02 +00:00
drochner
1fabcae9bf
add SIS 6326 low-end AGP graphics
...
fix CL_PD6832 device id, PR kern/7691 from Paul Dokas
1999-06-02 08:56:03 +00:00
lukem
5e76cbddfb
in humanize_number(), when printing a u_int64_t, use '%qu' (unsigned long long)
...
instead of '%qd' (long long)
1999-06-02 05:53:56 +00:00
thorpej
f687b845d0
Make sure bus mastering is enabled; some broken BIOSes don't set this
...
up properly.
1999-06-01 19:17:59 +00:00
thorpej
2349cbb5b3
Glue in the SiS900 Ethernet controller driver.
1999-06-01 18:29:50 +00:00
thorpej
ba43886d7e
Device driver for the Silicon Integrated Systems SiS900 10/100 Ethernet
...
chip, found on the IBM Netstation.
1999-06-01 18:19:13 +00:00
leo
80054d22ac
Fix copyright (exchange clauses 3 & 4).
1999-06-01 14:27:39 +00:00
bouyer
466d1747ff
memset ump->um_e2fs to 0 after malloc, it is bigger than SBSIZE and thus some
...
parts were left uninitialised. The symptom was that a read-only mount tried
to rewrite back the superblock.
1999-06-01 13:18:49 +00:00
mark
eb947d2f5e
Fix bug in event signalling.
1999-06-01 09:34:06 +00:00
briggs
6e95146ec6
Raise spl4 to spl6 in quick_go--I am now experimenting with interrupts
...
at levels 5 (sound) and 6 (via1) on the Q700.
Raise splhigh when reading and writing registers. It's ugly, but it's
possible that we could get an interrupt from a higher-level source,
causing a re-read of a memory location.
This is not good when, e.g., we are reading the interrupt register.
Ideally, we would just raise splhigh() in ncr53c9x_readregs(), but
that's m.i. code, and it may be expensive on other architectures.
1999-06-01 03:40:12 +00:00
mark
29fe96b920
Guard inclusion of opt_cputypes.h.
1999-06-01 03:37:02 +00:00
briggs
0ff3b0087c
Add debug routine as an aid for working out new nubus cards.
1999-06-01 03:26:42 +00:00
briggs
5e28d99a64
Add define for another ethernet card (Nuvolink)
...
Wrap nubus_scan_slot() prototype in #ifdef DEBUG.
1999-06-01 03:24:25 +00:00
perseant
88207e0cba
Fixed lfs_update (and related functions) so that calls from lfs_fsync
...
will DTRT with vnodes marked VDIROP. In particular, the message
"flushing VDIROP" will no longer appear, and the filesystem will remain
stable in the event of a crash.
This was particularly a problem with NFS-exported LFSes, since fsync
was called on every file close.
1999-06-01 03:00:40 +00:00
briggs
42d2797a4b
Comment out DISABLE_EXT_CACHE as it unnecessarily slows down the IIci
...
w/ external cache. Leave it around so the paranoid can still use it.
1999-06-01 02:39:25 +00:00
lukem
6a62a9cff3
sanity check bufcache before using it
1999-06-01 00:40:48 +00:00
mrg
2332079d3f
unlock the map for unknown arguments to uvm_map_advise. from Soren S. Jorvang in PR kern/7681
1999-05-31 23:36:23 +00:00
ross
a1c15a355d
In PMAP_ISACTIVE(), check curproc->p_vmspace before using it; this macro
...
is called early in startup, long before p_vmspace is set to &vmspace0.
1999-05-31 20:49:00 +00:00
ross
4313734913
After some banging and bashing, commit Jason's new ddb traceback code.
1999-05-31 20:42:15 +00:00
ross
604d4df11e
Convert to traceback-friendly temporary labels.
1999-05-31 20:40:23 +00:00
ross
ffc59b8bad
Be less drastic when running strip(1) on DEBUG=-g kernels.
1999-05-31 18:54:49 +00:00
minoura
db782f7c11
First attempt to implement PMAP_NEW interface.
...
The code was mostly written before the pmap_k* inconsistency fixes.
Work around might still remain. Should be removed.
1999-05-31 14:39:13 +00:00
lukem
7d44fa2e6e
* use format_bytes() to display the disk size
...
* wrap a couple of printf()s
1999-05-31 12:05:39 +00:00
nisimura
8286166c86
- Call _splnone() explicitely after auto config. was well done to make
...
sure SOFT_INTs cleared before interrupt processing is started.
1999-05-31 07:42:56 +00:00
ross
66ffb4e4d6
New format modifier: `L' gives true `long' vs `l' or `legacy' long.
1999-05-31 06:53:45 +00:00
ross
6b3d12f44a
Calculate what sp would have been and save it in otherwise-unused
...
FRAME_SP slot if entering ddb.
1999-05-31 06:41:39 +00:00
nisimura
fad2c4c762
- A little attention for TLBUpdate().
1999-05-31 06:10:32 +00:00
ross
d3df2008f1
Fix generation of locore.s dependencies.
1999-05-31 02:46:17 +00:00
eeh
b14c7f77cb
Garbage collect.
1999-05-31 00:14:00 +00:00
eeh
07d5dfdd7b
Fix some bugs in some more of those asm macros.
1999-05-31 00:13:16 +00:00
briggs
f3d8507abd
PR 7021 from Yoshihisa Sugimoto <sugimoto@sums.shiga-med.ac.jp>:
...
Clear interrupt properly on the RasterOps 24XLTV. Same as the 24LX.
1999-05-30 21:43:19 +00:00
is
2e63d78d8b
Support for a ... somewhat strange method of doing >512 byte/block
...
ADOSFS partitions. By Matthias Scheler via PR 2559. A diagnostic
check was updated by myself.
1999-05-30 21:21:36 +00:00
christos
b4bf637a41
Don't let bd.which be unitialized... Thanks Dave!
1999-05-30 21:13:04 +00:00
briggs
59422960ea
PR 7220 from Ken Nakata:
...
I've fixed most (not all) m68k FPE bugs that give bogus
calculation results, esp. fsqrt instruction. Also, the internal FP
representation has been reduced from 115-bit mantissa to 67-bit
mantissa which reduced the required mantissa operation roughly by one
fourth. I've done an extensive (though not exhaustive - it's
impossible!) test on the internal routines by feeding them randomly
generated FP numbers, and found that the new code is more precise than
MC68040 FPU (it seems to have a rounding bug).
[ Only change was to keep fpu_calcea.c's name instead of renaming to
fpu_ea.c in Ken's patch. --akb ]
1999-05-30 20:17:48 +00:00
eeh
64b891fc8d
Add code to support using %tick as the system clock if no "counter-timer" node
...
is found.
1999-05-30 19:13:33 +00:00
eeh
cd53dbd506
Re-write ASI load/stores to use full 64-bit addresses so we can use device
...
register addresses with MMU bypass ASIs.
1999-05-30 19:11:33 +00:00
eeh
c2f2c064c0
Make pmap_enter() handle little-endian mappings properly.
1999-05-30 19:01:50 +00:00
eeh
de1ba9c829
Grab real locks from the sparc port. I suppose we could use casa and casx
...
instead of ldstub, but since we aren't doing n-way locking it makes little
difference. N.B. Need to decide what to do with sparc64/sparc64/asm.h which
has name conflicts with sparc64/include/asm.h. So far most of
sparc64/sparc64/asm.h has been moved to ctlreg.h.
1999-05-30 18:57:27 +00:00
eeh
dafdd170d7
Handle little-endian mapin requests.
1999-05-30 18:52:51 +00:00
mrg
01849b81ca
allow the kernel to link with no arp (ether) devices
1999-05-30 07:36:28 +00:00
christos
8567d6cad0
PR/7665: Dave Sainty: X server bell pitch setting doesn't reflect reality
...
Applied with a little more error checking.
1999-05-30 04:21:29 +00:00
mrg
1b384c6911
clone intr.h from the SPARC.
1999-05-30 02:37:10 +00:00
bad
6b30aed924
Fix thinko of mine in previous. The source route info is not at m->m_data
...
after various m_adj()s have been done. Kludge around this with a cheesy
macro that knows where the drivers put the mac header in the first mbuf.
XXX There should be a better way to do this.
1999-05-30 00:39:07 +00:00
nathanw
70e38aa504
Fix bug uncovered by audio.c fix: Since the monitor control on the ESS
...
is a muting control, not a level control, change the name to reflect that.
XXX The fact that the audio code depends on the string names of the
XXX mixer devices is bogus.
1999-05-30 00:22:59 +00:00
nathanw
9e14ee3c6e
Fix two small bugs:
...
(1) Fix sense of a strcmp() test so that the monitor subdevice of the
mixer is properly identified.
(2) Use hw_if->set_port() instead of hw_if->get_port() when changinh
the monitor level in audiosetinfo().
Fixes PR kern/7661.
1999-05-30 00:21:08 +00:00
bad
4df5ccb1f6
Now that the ARP code doesn't assume that m_pktdat[0] is the start of the
...
packet(!) we can enable the code that aligns the struct token_header at the
start of the mbuf.
1999-05-29 22:44:11 +00:00
bad
0b3a9f9e00
Don't assume the Token-Ring source route is in the m_pktdat. Use
...
m_data instead. This isn't a problem with ARP packets but is correct
way to this.
Noticed by pmara@cactus.org (Shashi Mara).
1999-05-29 22:36:07 +00:00
ragge
a03c17e53b
Copied from ../../arch/vax/mscp/mscpvar.h,v
1999-05-29 19:13:04 +00:00
ragge
14ef56958a
Copied from ../../arch/vax/mscp/mscpreg.h,v
1999-05-29 19:12:53 +00:00
ragge
870031c90a
Copied from ../../arch/vax/mscp/mscp_tape.c,v
1999-05-29 19:12:42 +00:00
ragge
bf0ac446d2
Copied from ../../arch/vax/mscp/mscp_subr.c,v
1999-05-29 19:11:52 +00:00
ragge
29cdff1acd
Copied from ../../arch/vax/mscp/mscp_disk.c,v
1999-05-29 19:11:41 +00:00
ragge
6c8c62c541
Copied from ../../arch/vax/mscp/mscp.h,v
1999-05-29 19:11:16 +00:00
ragge
bf16b9271a
Copied from ../../arch/vax/mscp/mscp.c,v
1999-05-29 19:11:02 +00:00
ragge
39e7e58401
Copied from ../../arch/vax/mscp/files.mscp,v
1999-05-29 19:10:52 +00:00
kleink
b570b54662
Use BYTE_ORDER do determine the endianness, rather than an (incomplete) check
...
for the machine architecture.
1999-05-29 17:14:27 +00:00
ragge
206d37083c
Copied from ../../arch/vax/uba/uda.c,v
1999-05-29 17:03:17 +00:00
nisimura
ce19767c8b
- Make a modification to reduce the cost of TLBmod exception handling.
...
TLBUpdate() routine is used for dual purposes. In TLBmod case, just ok
to call 'tlbwi' (as designed). Result in saving of extraneous execution
path. MIPS1 only this moment.
1999-05-29 09:38:28 +00:00
nisimura
fcd9e7edb9
- Correct uninitialized pointer issue I made.
...
- Put a comment why the original prodtype detection logic made no trouble.
1999-05-29 09:31:02 +00:00
mrg
58aa48a579
regen.
1999-05-29 07:12:11 +00:00
simonb
59dfa57be9
Move initialisation of ioasic_base to dec_3maxplus_init() - it is used
...
in this function before dec_3maxplus_os_init() gets called.
1999-05-29 07:10:36 +00:00
mrg
5dfbc15479
fix error in previous.
1999-05-29 07:10:33 +00:00
mrg
3f99c8bd11
regen.
1999-05-29 07:08:52 +00:00
mrg
a250615a3b
s/bus/bridge/ for the sun pci bridges. my bad.
1999-05-29 07:07:51 +00:00
fvdl
06019caad8
Recognize 900B-TPC. From Robert Elz.
1999-05-29 01:31:17 +00:00
fvdl
8a6bddab08
Regen.
1999-05-29 01:29:21 +00:00
fvdl
0ca37269fb
Add 3c900B-TPC product ID. From Robert Elz.
1999-05-29 01:28:52 +00:00
fvdl
5958c68bc5
Be more correct with attribute structures for setattr RPCs and friends,
...
so that picky servers (e.g. Solaris 7) don't refuse our requests. Move
some code into a macro, and a bit of KNF. From OpenBSD.
1999-05-29 01:22:03 +00:00
thorpej
dbc1dd921a
Clone vmapbuf() and vunmapbuf() from the Alpha port.
1999-05-28 22:59:40 +00:00
thorpej
fb36fe649a
A little spring cleaning in the unwire case of uvm_map_pageable().
1999-05-28 22:54:12 +00:00
thorpej
8d8badbd8f
Make uvm_fault_unwire() take a vm_map_t, rather than a pmap_t, for
...
consistency. Use this opportunity for checking for intrsafe map use
in this routine (which is illegal).
1999-05-28 20:49:51 +00:00
thorpej
108b13d5a9
Make "intrsafe" maps locked only by exclusive spin locks, never sleep
...
locks (and thus, never shared locks). Move the "set/clear recursive"
functions to uvm_map.c, which is the only placed they're used (and
they should go away anyhow). Delete some unused cruft.
1999-05-28 20:31:42 +00:00
ragge
542c5517c5
The DHU code changed to use bus_space.
...
XXX - still need to use bus_dma.
1999-05-28 20:17:29 +00:00
thorpej
e50ef977d1
Don't use a read lock on an intrsafe map; these maps can only use exclusive,
...
non-sleeping locks.
1999-05-28 19:40:09 +00:00
cgd
bb7cdd7c0b
don't bother initializing 'freelist' -- it can be bss
1999-05-28 19:31:51 +00:00
ragge
545a67b8d9
Copied from ../../arch/vax/uba/dhureg.h,v
1999-05-28 18:56:57 +00:00
ragge
c0777d0846
Copied from ../../arch/vax/uba/dhu.c,v
1999-05-28 18:56:41 +00:00
mark
8885cdd879
Implement a workaround in initarm() for a problem that stopped ARM610
...
and some ARM710 processors from completing their initial bootstrap.
Fixes PR7595.
1999-05-28 09:59:31 +00:00
simonb
f62bb2b791
Add CD9660 filesystem - useful for installing from CD-ROMs :-)
1999-05-28 08:07:12 +00:00
nisimura
d116bc4a0d
- Make this compilable with MIPS1 or MIPS3 only configuration.
1999-05-28 07:23:38 +00:00
cgd
3da80f5ebd
don't vrele a bogus pointer if the namei() of the loader fails
1999-05-28 04:39:14 +00:00
thorpej
5920638afe
Change the main comment block to indicate why PMAP_NEW (specifically,
...
pmap_kenter*()) is not required for {O,A}->K page loans.
1999-05-27 21:50:03 +00:00
ragge
50b4144943
Moved from ../dec/qbus/ubavar.h,v
1999-05-27 16:04:48 +00:00
ragge
708904c240
Moved to ubavar.h,v
1999-05-27 16:04:47 +00:00
ragge
6fa26360b3
Moved to ubareg.h,v
1999-05-27 16:04:28 +00:00
ragge
72cc499b27
Moved from ../dec/qbus/ubareg.h,v
1999-05-27 16:04:27 +00:00
ragge
24a2d9159f
Moved to uba.c,v
1999-05-27 16:04:14 +00:00
ragge
466e9982c9
Moved from ../dec/qbus/uba.c,v
1999-05-27 16:04:13 +00:00
ragge
3a1ea0ce2f
Moved from ../dec/qbus/files.uba,v
1999-05-27 16:03:57 +00:00
ragge
ea56e2d6a7
Moved to files.uba,v
1999-05-27 16:03:56 +00:00
ragge
a9f8e269bc
Moved from ../dec/qbus/dzvar.h,v
1999-05-27 16:03:41 +00:00
ragge
607566ab67
Moved to dzvar.h,v
1999-05-27 16:03:40 +00:00
ragge
fad3ee0de4
Moved from ../dec/qbus/dzreg.h,v
1999-05-27 16:03:13 +00:00
ragge
fd1e7f64df
Moved to dzreg.h,v
1999-05-27 16:03:12 +00:00
ragge
ca5b486e0b
Moved from ../dec/qbus/dz_uba.c,v
1999-05-27 16:02:50 +00:00
ragge
0377900670
Moved to dz_uba.c,v
1999-05-27 16:02:49 +00:00
ragge
ae0c1db46f
Moved to dz.c,v
1999-05-27 16:02:33 +00:00
ragge
4da3a5fea9
Moved from ../dec/qbus/dz.c,v
1999-05-27 16:02:32 +00:00
ragge
e9a34e1482
Moved from ../dec/qbus/dlreg.h,v
1999-05-27 16:02:04 +00:00
ragge
fecbb5dd59
Moved to dlreg.h,v
1999-05-27 16:02:03 +00:00
ragge
1506452890
Moved from ../dec/qbus/dl.c,v
1999-05-27 16:00:45 +00:00
ragge
547475d08e
Moved to dl.c,v
1999-05-27 16:00:44 +00:00
pk
61e5d73035
Fix bus_size_t/size_t/int confusion.
1999-05-27 14:22:28 +00:00
pk
0953844306
Casts to match `%d' in printf format.
1999-05-27 14:20:10 +00:00
pk
69b216aefe
`xmit' & `recv' return `ssize_t'
1999-05-27 14:04:25 +00:00
pk
bd84136493
copyinst() takes a `size_t *'.
1999-05-27 14:03:05 +00:00
tron
c0567a6bc7
Add support for SETALL and GETALL to the Linux emulation of semctl()
...
and improve handling of SETVAL. Patches supplied by YAMAMOTO Jiro in
PR kern/7621.
1999-05-27 13:30:40 +00:00
bouyer
b87dbb8918
in cdclose(), ignore "media change" when calling scsipi_prevent(), after
...
a 'eject -l' some ATAPI drives report this instead of illegal request.
1999-05-27 11:19:04 +00:00
bouyer
cc46db1ba6
For the PIIX, make sure the PIO_mode and DMA_mode get reset to the values used
...
by the controller for all drives.
1999-05-27 09:45:50 +00:00
leo
88efdc6951
Add support for the memory on the CT2 board. Info from Thomas Goirand.
1999-05-27 09:08:25 +00:00
mark
ccb5b09c4f
Grr. Nuke the remaining allocsys() prototypes.
1999-05-27 09:08:09 +00:00
mark
99804cc3e7
Nuke old prototype of allocsys().
1999-05-27 09:04:11 +00:00
nisimura
9b5cf7b4de
- Save MIPS1 only configuration for 3min, pointed by Erik Bertelsen
...
<erik@mediator.uni-c.dk>
1999-05-27 06:43:50 +00:00
ragge
f558ec11e2
Directory called qbus instead of uba, per request from Matt/Jason/...
...
(More describing name actually)
1999-05-27 03:45:21 +00:00
mrg
c346b0ace0
regen.
1999-05-27 03:05:32 +00:00
mrg
8c83c41668
add the UltraSPARC IIi PCI interface
1999-05-27 02:51:19 +00:00
nisimura
58cf81db34
- Change a symbolic name of TLB entrylo from 'PG_M' to 'PG_D' to reflect
...
processor design. MIPS 'dirty bit' is not the same as i386 'dirty bit'.
There is a growing concern of misuse in NetBSD/mips.
1999-05-27 01:56:32 +00:00
thorpej
80de1e9903
Upon further investigation, in uvm_map_pageable(), entry->protection is the
...
right access_type to pass to uvm_fault_wire(). This way, if the entry has
VM_PROT_WRITE, and the entry is marked COW, the copy will happen immediately
in uvm_fault(), as if the access were performed.
1999-05-26 23:53:48 +00:00
thorpej
beb8d06638
Generally update the comment above vunmapbuf().
1999-05-26 22:19:33 +00:00
thorpej
a2d06a4721
Generally update the comment above the vmapbuf() implementations.
1999-05-26 22:07:36 +00:00
thorpej
6b655611b1
Wired kernel mappings are wired; pass VM_PROT_READ|VM_PROT_WRITE for
...
access_type to pmap_enter() to ensure that when these mappings are accessed,
possibly in interrupt context, that they won't cause mod/ref emulation
page faults.
1999-05-26 19:27:49 +00:00
thorpej
985f839e63
Add a comment explaining why INTRSAFE isn't needed here.
1999-05-26 19:23:13 +00:00
thorpej
2580d306ab
Change the vm_map's "entries_pageable" member to a r/o flags member, which
...
has PAGEABLE and INTRSAFE flags. PAGEABLE now really means "pageable",
not "allocate vm_map_entry's from non-static pool", so update all map
creations to reflect that. INTRSAFE maps are maps that are used in
interrupt context (e.g. kmem_map, mb_map), and thus use the static
map entry pool (XXX as does kernel_map, for now). This will eventually
change now these maps are locked, as well.
1999-05-26 19:16:28 +00:00
leo
48627f3c5d
Make this compile again. I assumed that the use of 'format_memory()' was
...
an error? Made it use format_bytes()....
1999-05-26 14:29:34 +00:00
thorpej
00a1f75cf6
In uvm_pagermapin(), pass VM_PROT_READ|VM_PROT_WRITE as access_type, to
...
ensure we don't take mod/ref emulation faults in an interrupt context
(e.g. during the i/o operation). This is safe because:
- For a pageout operation, the page is already known to be
modified, and the pagedaemon will pmap_clear_modify() after
the pageout has completed.
- For a pagein operation, pagers must already pmap_clear_modify()
after the pagein operation is complete, because the i/o may have
been done with e.g. programmed i/o.
XXX It would be nice to know the i/o direction so that we can call
XXX pmap_enter() with only the protection and access_type necessary.
1999-05-26 06:42:57 +00:00
cgd
5dd4815be9
uh, get the port name consistently correct (NetBSD/alpha, not NetBSD/Alpha)
1999-05-26 06:22:03 +00:00
nisimura
1922144399
- Remove now obsolete function declaration.
1999-05-26 04:27:27 +00:00
nisimura
d7a56fd7fa
- Continue on branch merge, incrementally.
...
- Catch up filename changes escaped to be fixed.
1999-05-26 04:23:58 +00:00
ragge
12b6c6d04f
DL-11 driver bus'ified. UNTESTED.
1999-05-26 02:01:49 +00:00
ragge
e805bfec25
DZ-11 routines bus'ified. Small fixes to uba routines.
1999-05-26 01:26:17 +00:00
thorpej
88214f79d2
Pass the appropriate access type for uvm_vslock() based on the FP operation:
...
fpread == VM_PROT_READ|VM_PROT_WRITE, fpwrite == VM_PROT_READ.
1999-05-26 01:09:02 +00:00
thorpej
701868a6c8
Pass the appropriate access_type to uvm_vslock() for the given physio
...
operation: B_READ == VM_PROT_READ|VM_PROT_WRITE, B_WRITE == VM_PROT_READ.
1999-05-26 01:08:03 +00:00
thorpej
497248ca55
XXX Pass VM_PROT_NONE to uvm_vslock() as access_type. Why are we even
...
vslocking here?! copyout() on its own seems to suffice just about everwhere
else, and it's not like the process is going to exit; it's in a system
call!
1999-05-26 01:07:06 +00:00
thorpej
b2e9c635ec
Pass an access_type to uvm_vslock().
1999-05-26 01:05:24 +00:00
thorpej
40aacb6eb5
No longer need to pmap_modified_emulation() in cpu_swapin(), since
...
uvm_fault_wire() does the right thing with access_type.
XXX Was there a bug here? pmap_modified_emulation() *wasn't* done in
XXX cpu_fork()!!
1999-05-26 00:40:20 +00:00
thorpej
32de988d29
No longer need to pmap_emulate_reference() in cpu_fork() or cpu_swapin(),
...
since uvm_fault_wire() does the right thing with access_type.
1999-05-26 00:37:40 +00:00
thorpej
7b4db806b6
In uvm_map_pageable(), pass VM_PROT_NONE as access type to uvm_fault_wire()
...
for now. XXX This needs to be reexamined.
1999-05-26 00:36:53 +00:00
thorpej
9d0ea0969e
- uvm_fork()/uvm_swapin(): pass VM_PROT_READ|VM_PROT_WRITE access_type
...
to uvm_fault_wire(), to guarantee that the kernel stacks will not
cause even a mod/ref emulation fault.
- uvm_vslock(): pass VM_PROT_NONE until this function is updated.
1999-05-26 00:33:52 +00:00
thorpej
195c1a2741
Pass an access_type to uvm_fault_wire(), which it forwards on to
...
uvm_fault().
1999-05-26 00:32:42 +00:00
thorpej
5b897f96c5
msgbuf doesn't need VM_PROT_EXEC.
1999-05-25 23:31:14 +00:00
thorpej
ed0aee1190
When mapping bus space, we can use pmap_kenter_pa(), since the pages
...
are never managed.
1999-05-25 23:30:27 +00:00
thorpej
774ceea703
msgbuf doesn't need VM_PROT_EXEC, biostramp does.
1999-05-25 23:19:00 +00:00
thorpej
5832084eaf
bus_dmamem_map() maps DMA safe memory, which is usually one or more
...
managed pages, into KVA space. Since the pages are managed, we should
use pmap_enter(), not pmap_kenter_pa().
Also, when entering the mappings, enter with an access_type of
VM_PROT_READ | VM_PROT_WRITE. We do this for a couple of reasons:
(1) On systems that have H/W mod/ref attributes, the hardware
may not be able to track mod/ref done by a bus master.
(2) On systems that have to do mod/ref emulation, this prevents
a mod/ref page fault from potentially happening while in an
interrupt context, which can be problematic.
This latter change is fairly important if we ever want to be able to
transfer DMA-safe memory pages to anonymous memory objects; we will need
to know that the pages are modified, or else data could be lost!
Note that while the pages are unowned (i.e. "just DMA-safe memory pages"),
they won't consume any swap resources, as the mappings are wired, and
the pages aren't on the active or inactive queues.
1999-05-25 23:14:03 +00:00
thorpej
f197609d93
Add some DIAGNOSTIC checks for inconsistent use of pmap_enter/pmap_kremove.
1999-05-25 20:33:33 +00:00
thorpej
986c3eca39
Fix some major locking protocol issues related to pmap_kremove() having
...
to deal with PG_PVLIST mappings; it no longer has to. Add some DIAGNOSTIC
checks for inconsistent use of pmap_enter/pmap_kremove.
1999-05-25 20:32:29 +00:00
thorpej
0ff8d3ac1a
Define a new kernel object type, "intrsafe", which are used for objects
...
which can be used in an interrupt context. Use pmap_kenter*() and
pmap_kremove() only for mappings owned by these objects.
Fixes some locking protocol issues related to MP support, and eliminates
all of the pmap_enter vs. pmap_kremove inconsistencies.
1999-05-25 20:30:08 +00:00
nisimura
fec53c08d6
- Use dev_name2blk[] array prepared by config(8) instead of handcrafting
...
local data.
1999-05-25 09:32:27 +00:00
nisimura
058f5a1517
- Continue to import a development branch.
...
- Minor formatting fix.
1999-05-25 07:37:08 +00:00
nisimura
014ba724c0
- Rework spl(9) implementation. Use _spl*() processor mask manipulating
...
routines now reside in locore.S. No functional difference is expected.
- Replace abused splx() abuse with _splset() to change MIPS processor
interrupt mask bit. 'mips/trap.c' side will be fixed soon.
1999-05-25 04:17:57 +00:00
thorpej
789c9e7c48
Add a comment explaining why using pmap_kenter_pa() is safe here.
1999-05-25 01:34:13 +00:00
tron
bb5689beb3
Only attempt to remove symbol table from DDB's lists of symbol tables
...
if we really loaded one.
1999-05-25 00:16:08 +00:00
thorpej
85f8d1343c
Macro'ize the test for "object is a kernel object".
1999-05-25 00:09:00 +00:00
thorpej
9b731fd45c
Remove a comment in uvm_pager_dropcluster() about PMAP_NEW and mod/ref
...
attributes for the page; it no longer applies, since we don't use
pmap_kenter_pgs() anymore.
1999-05-24 23:36:23 +00:00
thorpej
7becac6b9a
Don't use pmap_kenter_pgs() for entering pager_map mappings. The pages
...
are still owned by the object which is paging, and so the test for a kernel
object in uvm_unmap_remove() will cause pmap_remove() to be used instead
of pmap_kremove().
This was a MAJOR source of pmap_remove() vs pmap_kremove() inconsistency
(which caused the busted kernel pmap statistics, and a cause of much
locking hair on MP systems).
1999-05-24 23:30:44 +00:00
tron
a602deb000
Silently ignore attributes modifications on directories. Fixes
...
PR kern/7630 by Markus Kurek.
1999-05-24 23:01:13 +00:00
thorpej
cba22525ce
Fix some broken packet length checks. Really (no, I mean really) works now
...
after the ether_input() changes -- tested on my Quadra 650.
1999-05-24 21:53:42 +00:00
ragge
7fb0d17b38
First step towards MI Unibus/Q22 bus code.
1999-05-24 20:12:57 +00:00
tron
770a66b9a8
Fix kernel builds if ppp interface but no bpf filters are configured.
...
Patch supplied by Takahiro Kambe in PR kern/7639, also fixes PR kern/7632
by Bjoern Labitzke.
1999-05-24 20:12:10 +00:00
thorpej
5dec34efed
The kernel pmap can be accessed (and locked!) while in an interrupt
...
context, so we must block interrupts which may cause memory allocation
before asserting the kernel pmap's lock. Put this all in PMAP_LOCK()
and PMAP_UNLOCK() macros to make it easier.
1999-05-24 20:11:58 +00:00
ragge
ad1db202f7
bus.h'ify more of the vax code.
1999-05-24 20:10:30 +00:00
thorpej
6eb9ee7cd8
- Change uvm_{lock,unlock}_fpageq() to return/take the previous interrupt
...
level directly, instead of making the caller wrap the calls in
splimp()/splx().
- Add a comment documenting that interrupts that cause memory allocation
must be blocked while the free page queue is locked.
Since interrupts must be blocked while this lock is asserted, tying them
together like this helps to prevent mistakes.
1999-05-24 19:10:57 +00:00
thorpej
e8beb9bbe8
Make this compile again.
1999-05-24 18:40:48 +00:00
christos
61d84403a8
Regen
1999-05-24 13:05:40 +00:00
christos
cf715aec57
Fix PR/7634 properly, by adding the card to pcmciadevs
1999-05-24 13:05:12 +00:00
augustss
8fb4b44439
SMC 8022 PCMCIA ethercard entry for if_ne_pcmcia.c
...
From Zdenek Salvet <salvet@ics.muni.cz> in PR 7634.
1999-05-24 10:17:49 +00:00
thorpej
8c2d5c6fd3
Let the caller decide what to do if pmap_physpage_alloc() fails.
1999-05-24 01:35:54 +00:00
mrg
1bd01d4677
pull struct strbuf + defines into iommureg.h. properly merge previous commit.
1999-05-24 00:25:31 +00:00
ragge
0354feab8e
Make this file compile again.
1999-05-23 23:06:24 +00:00
ragge
373e7cc828
Rewrite the "emulate page reference bits" code to avoid a bunch of
...
pv_lists traversal and unneccessary page faults.
1999-05-23 23:03:44 +00:00
ragge
539f825799
Better and more understandable way to find out CPU type.
1999-05-23 22:56:53 +00:00
thorpej
c1eb28c237
Make the list of all pmaps LRU-ordered, and update a comment regarding
...
locking.
1999-05-23 22:37:02 +00:00
ragge
6c98e1bae7
Routine to figure out which system type is booted.
1999-05-23 22:00:43 +00:00
ragge
f1fc4934a3
Use common routines to identify cpu type.
...
Set up a SCB to be able to handle clock interrupts in the boot program.
Now timer countdown should work on all types of vaxen.
1999-05-23 21:58:19 +00:00
veego
e21201e114
Regen.
1999-05-23 21:28:03 +00:00
veego
a674692065
Add several entries.
1999-05-23 21:26:54 +00:00
ad
ccc7e59e1f
Add new sysctl (net.inet.tcp.log_refused) that when set, causes refused TCP
...
connections to be logged.
1999-05-23 20:33:50 +00:00
ad
bdf1938edd
For completeness sake, allow this to compile with no loopback interfaces
...
configured.
1999-05-23 20:21:51 +00:00
ad
080560c8c6
- Setting initial position of cursor is up to caller.
...
- Set cursor position properly for SPARC. From Juergen Hannken-Illjes.
1999-05-23 17:59:39 +00:00
thorpej
2102d5a17e
Save ourselves some work in some pv list traversal functions; keep a pointer
...
to the PTE that maps the page in the pv_entry so that we don't have to
compute it from the pmap/va.
1999-05-23 17:49:07 +00:00
thorpej
5d48eed96a
Implement pv_entry stealing for the case when a pool page cannot be
...
allocated for one.
1999-05-23 16:54:43 +00:00
augustss
eca0bbe20e
Update doc URL.
1999-05-23 16:07:04 +00:00
mrg
09619f1942
KNF nit.
1999-05-23 11:41:39 +00:00
mrg
b2934b386d
UVM is not an option these days.
1999-05-23 11:08:01 +00:00
mrg
ae1a84a61f
place iommu definitions in iommureg.h
1999-05-23 07:24:02 +00:00
mrg
f1f95c374b
implement madvice() for MADV_{NORMAL,RANDOM,SEQUENTIAL}, others are not yet done.
1999-05-23 06:27:13 +00:00
eeh
193cc31772
Separate out the generic console handling from zs.c
1999-05-23 02:46:35 +00:00
eeh
92ad9c4080
Start putting in hooks for non-zs console devices.
1999-05-23 02:45:19 +00:00
christos
544c14bcf6
KNF!
1999-05-23 00:48:46 +00:00
eeh
f1066c97ad
If the zs has not yet attached use the PROM for console input.
1999-05-22 20:34:56 +00:00
eeh
60b89ebf96
Well, looks like the MI allocsys() broke the dvmamap, so instead of using a
...
single map move it to the bus controller driver so each bus can handle its own
IOMMU without conflicts.
1999-05-22 20:33:55 +00:00
eeh
bb0f8ef559
Fix OF_stdin() to return "stdin" not "stdout" so we really can get console input.
1999-05-22 20:30:54 +00:00
eeh
35d96171e7
Fix bus_type_t properly and enable ASI accesses for bus_space_{read,write}*()
1999-05-22 20:28:22 +00:00
eeh
56b080bed6
Fixup argument confusion to __asm() statements. long long is two registers
...
wide in 32-bit mode. Doh!.
1999-05-22 20:25:49 +00:00
scw
7c6d40745a
Double the value for NKMEMCLUSTERS, to allow more KVA for LFS et al.
1999-05-22 16:37:03 +00:00
nisimura
10d1acd4ea
- Backout the last code change. I found it broke pmax kernel. It's
...
retained for future use of pmap.new.c, though.
> New codes always use current ASID holded in EntryHi register.
1999-05-22 02:35:35 +00:00
thorpej
66324de865
Use the pool allocator for pv_entry structures. Set a (patchable/config'able)
...
low water mark on the pool, so we have some chance of crawling along in
extreme memory shortages.
1999-05-21 23:07:59 +00:00
thorpej
ed4224c64e
Fix a couple of problems from the ether_input() change:
...
- Make it compile again, with BPF.
- Don't subtract the Ethernet header length from the total packet length.
- Copy the alignment fix from sys/dev/ic/i82586.c (though the m68k shouldn't
really be affected).
1999-05-21 21:48:28 +00:00
thorpej
a79a728c6c
Copy alignment fix from dev/ic/i82586.c (Um, this extra copy should die,
...
too, but at least it's not as bad as the podulebus ie driver).
1999-05-21 21:33:59 +00:00
thorpej
87a9ee7804
Copy alignment fix from dev/ic/i82586.c (Um, this copy of the driver
...
needs to die, pretty please.)
1999-05-21 21:31:37 +00:00
minoura
f4316c1145
Tribial optimizations.
1999-05-21 15:32:38 +00:00
minoura
1567b0074d
Sync GENERIC.
1999-05-21 15:15:33 +00:00
minoura
fcb74cccfa
Remove experimental/buggy options.
1999-05-21 15:08:27 +00:00
pk
6f9ad5b61d
Since we're now prepending the ethernet header to mbuf on incoming
...
packets, make sure to align the data after the ethernet header.
1999-05-21 13:08:50 +00:00
augustss
ac197c5354
Update documentation URLs.
1999-05-21 10:15:23 +00:00
nisimura
fd243bd393
- Redefine symbols and parameters to represent CPU design with MIPS
...
nomenclature, retaining the old heritage.
- Remove API-related definitions for now obsolete utiltity routines.
1999-05-21 06:37:39 +00:00
nisimura
e5ecc1bc87
- Typos, I made...
1999-05-21 06:36:37 +00:00
nisimura
28c74563b6
- Make sure ASID PARANOIADIAG work with MIPS3.
1999-05-21 06:19:55 +00:00
nisimura
1b332b28e2
- Now completing MIPS1 side change. Introduce MIPS_TBIS and MIPS_TBDATA
...
(correct name, vax?) replacing mips1_TLBFlushAddr and mips1_TLBUpdate,
respectively. New codes always use current ASID holded in EntryHi
register. In most occations, the register already contains a necessary
value before (re-)written, ugh. 'sva | asid' ops for their arguments are
now verbose, to be removed when MIPS3 side changes are done.
1999-05-21 06:01:14 +00:00
nisimura
634cb79411
- Rename '#ifdef DIAGNOSTIC' to '#ifdef PARANOIADIAG' to detect
...
catastrophic events to break VM machinary. Add some more diags to
track ASID.
1999-05-21 05:28:31 +00:00
nisimura
9cfc8d7736
- Track filename changes.
1999-05-21 01:10:49 +00:00
nisimura
04aeaae250
- Rename file names;
...
dec_3max_subr.c -> memc_3max.c, dec_kn02_subr.c -> memc_3min.c
1999-05-21 01:09:48 +00:00
augustss
b1800a623c
Make this file syntactically correct again.
1999-05-21 00:25:48 +00:00
thorpej
a07ba7d1c1
Update the calls to allocsys().
1999-05-21 00:09:09 +00:00
thorpej
d7ffa508b1
Provide an mdallocsys() that clips bufpages if necessary (on the Sun4c).
...
This will be (and needs to be) done before nbuf is computed.
1999-05-21 00:08:14 +00:00
thorpej
ba2bc023f7
Call the mdcallback immediately after computing bufpages; bufpages may
...
need to be clipped, and this needs to be done before computing nbuf.
1999-05-21 00:05:12 +00:00
thorpej
96993ef749
Make a slight modification of pmap_growkernel() -- it now returns the
...
end of the mappable kernel virtual address space. Previously, it would
get called more often than necessary, because the caller only new what
was requested.
Also, export uvm_maxkaddr so that uvm_pageboot_alloc() can grow the
kernel pmap if necessary, as well. Note that pmap_growkernel() must
now be able to handle being called before pmap_init().
1999-05-20 23:25:42 +00:00
thorpej
f311a1c308
Make a slight modification of pmap_growkernel() -- it now returns the
...
end of the mappable kernel virtual address space. Previously, it would
get called more often than necessary, because the caller only new what
was requested.
Also, export uvm_maxkaddr so that uvm_pageboot_alloc() can grow the
kernel pmap if necessary, as well. Note that pmap_growkernel() must
now be able to handle being called before pmap_init().
1999-05-20 23:03:23 +00:00
ragge
b337d4d3c7
Don't detect glass tty if the machine is a workstation.
...
Hint from Thomas Seidmann.
1999-05-20 23:00:58 +00:00
ad
5bb340fef9
This file is superceded by rcons.h.
1999-05-20 21:16:57 +00:00
tsarna
25e3ee0ff2
Add a *bunch* of types (file went from ~4K to ~16K!)
1999-05-20 21:02:43 +00:00
thorpej
88c7cff619
Make this compile again.
1999-05-20 20:15:27 +00:00
thorpej
1d197b8e7b
If we run out of virtual space in uvm_pageboot_alloc(), fail gracefully
...
rather than unpredictably.
1999-05-20 20:07:55 +00:00
thorpej
3aa41b1b36
Make this actually work if the BUFCACHE option is not specified, by falling
...
back on the traditional BSD formula of 10% of first 2MB and 5% of remaining.
1999-05-20 20:01:28 +00:00
thorpej
332dd60029
Fix broken prototype.
1999-05-20 19:56:49 +00:00
thorpej
3da4443954
Oops, commit here slipped through the cracks.
1999-05-20 18:07:27 +00:00
nisimura
c0c79283f3
Moved from dec_kn02_subr.c
1999-05-20 14:15:57 +00:00
nisimura
a5b668be64
Moved from dec_3max_subr.c
1999-05-20 14:14:39 +00:00
nisimura
90d9a14b01
- Avoid recomputations inside inner-most loop which produce identical
...
values evreytime.
1999-05-20 10:50:08 +00:00
pk
fea10fb499
Operate Hypersparc cache in write-back mode again.
...
Remove `hypersparc under construction' message.
1999-05-20 10:06:39 +00:00
pk
1040b9e209
If TLB entries need to be flushed, make sure to do this after any necessary
...
cache flushes, since on VIPT machines the cache flush may induce a TLB load.
1999-05-20 10:03:12 +00:00
augustss
4655ae1230
Keep track of vendor id and make sure the vendor string is NUL terminated.
1999-05-20 09:52:35 +00:00
augustss
3d6c3b5c03
Update for TI vendor id.
1999-05-20 09:51:13 +00:00
augustss
5d6176a144
Regen.
1999-05-20 09:50:39 +00:00
augustss
d25385e28e
Change vendor of id 0x0451 to Texas Instruments.
1999-05-20 09:50:09 +00:00
augustss
b9f32af4e5
Regen.
1999-05-20 09:23:33 +00:00
augustss
10713ae5ad
Change vendor id 0x11c1 to Lucent since that seems to be what it is now.
...
Add a Lucent USB controller.
1999-05-20 09:23:08 +00:00
lukem
e4a87aa1a9
* convert to using MI allocsys(). most ports were using an MD allocsys(),
...
although a couple still used the old pre-4.4-lite (?) mechanism.
* use format_bytes() to format the various printf()s that print out memory sizes
1999-05-20 08:21:42 +00:00
lukem
5ef2870d85
remove nbuf, nswbuf. cleanup def of AUTONICE(TIME|VAL)
1999-05-20 06:03:01 +00:00
lukem
dbbe159e68
- add kern_allocsys.c
...
- move a comment around
1999-05-20 06:01:16 +00:00
lukem
091ffad669
MI implementation of allocsys()
1999-05-20 05:59:52 +00:00
lukem
03b1725220
rework format_bytes() into a more generic humanize_number().
...
implement the former with the latter.
1999-05-20 05:58:19 +00:00
lukem
52ebdaa0d6
* add humanize_number() (a more generic version of format_bytes(),
...
which the latter uses)
* add allocsys() - MI version of the MD function of the same name,
and ALLOCSYS() - a vamped up VALLOC().
1999-05-20 05:53:34 +00:00
cgd
36e7791991
g.c. now-unneeded variable declarations (cfree, swbuf, utsname
1999-05-20 05:35:28 +00:00
nisimura
a784d093ea
- Change pmap_alloc_asid() and pmap_activate() to make sure that
...
'pm_asid' member of 'pmap' structure is assigned a new value after
uvmspace_alloc() provides afresh pmap.
- ASID generation number 0 is not a reserved value anymore.
1999-05-20 05:32:06 +00:00
nisimura
7d44b47145
- Make tlb dump DDB command have 'D' indication for TLB 'dirty bit'. MIPS
...
processor is one of processors with no 'referenced bit' nor 'modified bit'
processor machinary. Those functions are implemented combining two
hardware bits, 'dirty bit' and 'valid bit', with TLBmod exception handler.
1999-05-20 03:34:06 +00:00
ad
a4f0570f7d
SPARC console is black on white, and is centered by default.
1999-05-19 21:05:59 +00:00
ad
02bc362e3e
Add arg to rcons_init() that when set causes screen to be cleared.
1999-05-19 20:34:19 +00:00
ad
39db587e6f
Cleanup.
1999-05-19 20:14:46 +00:00
ad
4bebd3ff7c
Don't clear screen upon startup unless we're running on a pmax (remedies
...
quirky behaviour of px boards). Shuffle come code in rcons_init_ops() in
order to be more clear.
1999-05-19 20:07:34 +00:00
ad
218af6a342
Insert missing code that defines screen metrics for rcons. This fixes the
...
more blatant rcons brokenness (ie no panics).
1999-05-19 19:59:04 +00:00
thorpej
2bf52583ef
Bump version; (*if_input)() changes.
1999-05-19 16:32:40 +00:00
bouyer
cbd39e5f67
Document the 'wdc at isa' flags.
1999-05-19 14:41:54 +00:00
bouyer
ba2e85e711
32 bits I/O ocasionally fails on some hardware, so the test succeed but
...
the kernel can get a 'protection fault trap' later. Enable the 32 bits I/O
test conditionally on a config flag, disabled by default (problem
reported by kurt.schreiner@uni-mainz.de ).
1999-05-19 14:41:25 +00:00
minoura
6e67e063ff
Disable on-chip cache for PT and ST pages for '060 stability.
1999-05-19 14:06:59 +00:00
pk
ae6d12926c
Turn on the video timing which is not always done by the PROM (e.g. if we're
...
not the console).
1999-05-19 08:31:42 +00:00
scw
07daebdd99
Fix copyin() with zero length. (Arguments to 'moveq' were swapped).
...
CVo: ----------------------------------------------------------------------
1999-05-19 07:50:06 +00:00
nisimura
a5a47c3772
- Implement MIPS_TBIAP() which invalidates all TLB entries belong to
...
per process user spaces, replacing mips1_TBLFlush(). This reserves
kernel space TLB entries when TLBPID generation number about to wrap.
- Correct comments a bit, nuke unused routines.
1999-05-19 07:08:43 +00:00
chs
a5d3e8dae9
when wiring swap-backed pages, clear the PG_CLEAN flag before
...
releasing any swap resources. if we don't do this, we can
end up with a clean, swap-backed page, which is illegal.
tracked down by Bill Sommerfeld, fixes PR 7578.
1999-05-19 06:14:15 +00:00
thorpej
f98d358a1f
Rework layer 2 protocol input routines. Instead of calling e.g. ether_input()
...
directly, call the function pointer (*if_input)(ifp, m). The input routine
expects the packet header to be at the head of the packet, and will adjust
as necessary. Privatize the layer 2 input and output routines, allowing
*_ifattach() to set them up as appropriate.
1999-05-18 23:52:51 +00:00
thorpej
29184c350f
Add a few more Communication Interface Class subclasses (including Ethernet
...
and *shudder* ATM).
1999-05-18 23:42:56 +00:00
tron
ce798896e4
Compile all VFS LKMs on all ports.
1999-05-18 23:06:02 +00:00
ad
bb3a510fa2
Assign ownership & copyright to TNF. There is probably a procedure for this
...
that I am unaware of. Also some KNF.
1999-05-18 21:51:57 +00:00
ad
3d5a1b1eea
Sync with last two changes made to sys/arch/sparc/dev/fb.c (don't clear
...
screen, typo).
1999-05-18 21:38:07 +00:00
ad
7efb86f6b8
Fix typo that broke rasops operation.
1999-05-18 21:36:21 +00:00
thorpej
0ff6aaf4c2
Don't clear the screen when we connect rasops; the SPARC doesn't connect
...
the rasops console until autoconfiguration, and it kinda sucks to have
the boot messages suddenly disappear from the screen.
1999-05-18 18:13:39 +00:00
augustss
8d38841260
Make it possible for this driver tp work again.
...
From Thomas Klausner - wiz@danbala.tuwien.ac.at
1999-05-18 16:41:07 +00:00
nisimura
523983b88b
- Forgot to change 'tlbpid' to 'asid'. But, why does the MIPS TLBmod
...
handler touch the value anyway?
1999-05-18 03:13:37 +00:00
nisimura
c99765853f
- Move MachSetPID(1) call to pmap_bootstrap() adajacent to kernel pmap
...
initialization code.
- Abandon mips_init_proc0() and do the 4 lines straightly in MD mach_init().
- Restore a block of code accidentally lost in prevous commit.
- Change the term 'tlbpid' to a MIPS3 nomenclature 'asid'.
- Hide PTE size exposures by symbolic names in locore.S
1999-05-18 01:36:51 +00:00
thorpej
dbdf646ecf
Fix compilation problems on the Alpha.
1999-05-18 00:22:41 +00:00
wrstuden
96321000fc
Remove explicit references to null_bypass (used in umap_lock() and
...
umap_unlock()) so as to not explicitly depend on nullfs being compiled
into the kernel.
umap_bypass won't be too slow as there are no credentials in these two ops
to need mapping.
1999-05-17 20:29:05 +00:00
is
c5c2942a73
allow more than one ed, es or qn
1999-05-17 20:08:22 +00:00
is
5964e71dc7
Allow for more than 1 of ed, es or qn
1999-05-17 19:42:56 +00:00
thorpej
a2dc12021c
Oops, completely forgot to translate the exit signal in clone(2).
1999-05-17 19:26:33 +00:00
drochner
d2fe8176fd
regen
1999-05-17 17:08:08 +00:00
drochner
2187089e80
add NeoMagic 256AV Video/Audio chip
1999-05-17 17:07:00 +00:00
drochner
9c0c171c30
add some #ifdefs to make it link w/o wskbd
...
(especially for vax)
1999-05-17 16:53:43 +00:00
kleink
2239a48b22
Install ntfs headers.
1999-05-17 16:41:48 +00:00
thorpej
9410ed17c1
Count new resident and wired pages in pmap_kenter*().
1999-05-17 16:22:57 +00:00
nisimura
f2119ffdfb
- Nuke one unused global variable 'mem_size'.
...
- Kernel pmap is now dectected by "if (pmap = pmap_kernel())" clause.
1999-05-17 11:12:44 +00:00
nisimura
b7876c4182
- Minor code and comment adjustments for pmap_alloc_tlbpid() and
...
pmap_activate(), no functional change.
1999-05-17 01:10:51 +00:00
thorpej
7e68ddd393
Update the comments above vmapbuf() and vunmapbuf() to reflect reality.
1999-05-16 22:24:16 +00:00
ad
20be6a2a2a
Fix typo on my behalf. From Juergen Hannken-Illjes.
1999-05-16 21:19:33 +00:00