mycroft
91668a26c1
Regen.
1998-01-22 17:34:15 +00:00
mycroft
95745ffc95
This doesn't actually use COMPAT_10.
1998-01-22 17:33:49 +00:00
mycroft
0a4f0e60de
Regen.
1998-01-22 17:33:03 +00:00
mycroft
e8283b7944
This doesn't actually use COMPAT_10.
1998-01-22 17:32:25 +00:00
mycroft
b77637a440
Fix an old typo that caused shmdt() to fail.
1998-01-22 17:22:52 +00:00
mycroft
769c9d4707
Clean this up a bit.
1998-01-22 16:33:57 +00:00
mycroft
c79bc94b0e
Regen.
1998-01-22 16:32:40 +00:00
mycroft
1e948ee1c3
Put a local copy of the SysV IPC compatibility from compat/common in here, so
...
it's not dependent on COMPAT_10. Also, fix translation of shmctl(), since
FreeBSD's is a little different.
1998-01-22 16:31:33 +00:00
drochner
9219f22775
strchr.c disappeared from libkern, use index.c instead
...
(we can't control the libkern build as we want, but it works...)
1998-01-22 15:48:02 +00:00
drochner
8968860bab
add prototype for index()
1998-01-22 15:42:24 +00:00
thorpej
201cba44d4
Sync w/ FreeBSD-current-980122:
...
- Rearrange softc for better cache line behavior.
1998-01-22 08:32:35 +00:00
thorpej
0916ab379b
Sync w/ FreeBSD-current-980122:
...
- Rewrite fxp_start() for better clarity and efficiency.
- Remove unused #includes.
1998-01-22 08:31:33 +00:00
thorpej
ed13bba51f
Fix two register mapping problems:
...
- Fall back on i/o space if mem space isn't available.
- Card reports mem space as prefetchable, but mapping the card into dense
space fails in nasty ways on the Alpha. Force mapping into sparse
space by clearing the BUS_SPACE_MAP_CACHEABLE bit (XXX!).
1998-01-22 08:04:56 +00:00
cgd
ff65e57285
fix typo: s/max-address/mac-address/
1998-01-22 01:47:43 +00:00
thorpej
2ee3e0153d
Generate dependencies on the exec format options EXEC_AOUT, EXEC_ECOFF,
...
EXEC_ELF32, EXEC_ELF64, and EXEC_SCRIPT.
1998-01-22 01:32:14 +00:00
thorpej
ea9ade0496
Generate dependencies on the INSECURE option.
1998-01-22 01:18:30 +00:00
thorpej
dd4cb910db
Generate dependenices on the XSERVER option.
1998-01-22 01:16:23 +00:00
cgd
a014b499f1
add definitions for the mask registers. fix I/O size definitions.
1998-01-22 00:57:10 +00:00
fvdl
dba168ad94
Refuse to create entries in the dir cache for offset 0. This is a special
...
case anyway, and amd(8) erroneously returns some entries with cookie 0.
Fixes PR 4844
1998-01-22 00:53:59 +00:00
thorpej
122364206a
Generate dependencies on the DUMMY_NOPS option.
1998-01-22 00:44:06 +00:00
thorpej
54a35a6019
Generate dependencies on the USER_LDT option.
1998-01-22 00:39:16 +00:00
mark
09be9c026e
Only update the intrcnt array if IRQSTATS is defined.
1998-01-22 00:04:10 +00:00
thorpej
9ba18e2255
Generate dependencies on the MATH_EMULATE option.
1998-01-21 23:29:08 +00:00
mark
2b66ad2b89
Implement severl missing prototypes.
1998-01-21 22:55:19 +00:00
mark
330df4c754
Added missing prototypes.
1998-01-21 22:51:38 +00:00
thorpej
9c3ef8899b
Don't conditionally define the sgmap_log_entry structure, and turn off
...
SGMAP logging by default.
1998-01-21 22:36:10 +00:00
mark
b0e99b3251
Cleanup various debugging printf format strings.
1998-01-21 22:34:39 +00:00
thorpej
3d9cd8a05a
Extent names are const.
1998-01-21 22:34:38 +00:00
mark
dfbf823cea
Cleanup various debugging printf format strings.
1998-01-21 22:34:38 +00:00
thorpej
6428828e64
Const'ify the extent name.
1998-01-21 22:33:49 +00:00
mark
a108da3f00
Cleanup function prototyping in disasm_interface structure.
1998-01-21 22:33:10 +00:00
mark
ce1e283415
Axe some unused variables.
1998-01-21 22:28:12 +00:00
mark
74ff2dac9d
Cleaned up various debugging printf format strings.
1998-01-21 22:25:37 +00:00
thorpej
66abe4217c
Implement an activity log for malloc() and free(), useful for tracking
...
down "Data modified on freelist" and "muliple free" problems.
The log is activated by the MALLOCLOG option, and the size of the
event ring buffer is controlable via the MALLOGLOGSIZE option (default
is 100000 entries).
From Chris Demetriou, cleaned up a little by me per suggestions in the
e-mail from Chris that contained the code.
1998-01-21 22:24:32 +00:00
mark
52adaefc18
Include sys/systm.h for various prototypes.
1998-01-21 22:20:02 +00:00
cgd
4369378a6c
add rules like those in libc to build strchr() and strrchr() (the latter
...
is being added to libkern by this commit). remove strchr.c from
archs' Makefile.inc files to go along with this. (If an arch has
a .S version, it should be copied down and added to the apropriate
Makefile.inc.)
1998-01-21 21:23:18 +00:00
cgd
61a021f836
sync with libc
1998-01-21 21:17:08 +00:00
cgd
0bc1621f94
add strrchr
1998-01-21 21:16:52 +00:00
cgd
40894919ec
sync with libc version. (just rcs id changes.)
1998-01-21 19:43:23 +00:00
leo
8d5fa0c992
Fix a bug in the colormap handling. (Thomas Gerner)
1998-01-21 09:07:46 +00:00
mikel
cbddf94bc4
add NOLUNS quirk for UMAX S-12; from Andreas Wrede in PR kern/4849
1998-01-21 08:41:28 +00:00
mrg
c71457ab4a
KNF, and use splzs over splhigh in one place.
1998-01-21 05:54:39 +00:00
jonathan
ac937aafed
Fix clock attachment to match (pseudo) ioasic attachment in 5000/200 kernel.
1998-01-21 02:38:26 +00:00
mellon
babb710a0b
Never free the mbuf that we give to tcp_respond(). The previous change corrected an inconsistency but in exactly the wrong way.
1998-01-21 01:21:22 +00:00
pk
ab37013309
Put back `le0 at lebuffer0' for backwards compatibility.
1998-01-20 22:12:51 +00:00
drochner
66e093ada9
remove unused and misleading KERNSIZE definition
1998-01-20 13:11:25 +00:00
drochner
f874e95e8a
make compile without BROKEN_INDIRECT_CONFIG,
...
fix obvious brokeness in port offset calculation
(untested)
1998-01-20 13:08:33 +00:00
drochner
ae5f11c8d7
fix typo in DEBUG code
1998-01-20 12:48:05 +00:00
drochner
c0d5e99849
fix overflow of the vm_physmem[] array
1998-01-20 12:34:35 +00:00
mark
0c0da40168
Removed a load of unused variables.
1998-01-20 05:01:14 +00:00
mark
75b044ab61
Prefix the SPL macros to avoid clashes with userland macros (e.g. ipf).
1998-01-20 01:18:18 +00:00
mark
20323bb58c
Enable disassembly of ldc and stc instructions.
...
Fix a couple of prototypes.
1998-01-20 00:51:24 +00:00
mark
6924ceb598
Declare arm8_clock_config() to return an int rather than void.
1998-01-19 23:51:01 +00:00
augustss
59d2219410
Split out the ISA part of the WSS driver to allow PnP attachment.
...
Make the AD1848 driver a little more readable with some macros.
1998-01-19 22:18:23 +00:00
matt
aa7bb65b1c
Initial support for Digital Mobile Media Adapter.
1998-01-19 19:49:03 +00:00
drochner
6e2af98681
adapt to changed <dev/ic/i8253reg.h>
1998-01-19 11:39:57 +00:00
drochner
94343e637a
define offsets into "register window" instead of absolute ISA addresses
...
for better use in a bus-ified environment
1998-01-19 11:38:00 +00:00
sakamoto
39d4125cc3
add com0,com1,com2,com3
...
comment out wdc0, wd*(temporary)
1998-01-19 03:58:35 +00:00
sakamoto
9c3c5ad478
Support bootinfo like i386-port.
...
-define a buffer for information passed by the bootloader
-add a function ("lookup_bootinfo") to extract data
-use passed console information, for console attachment (VGA or SERIAL)
-use passed clock information, for timebase, decremente register
1998-01-19 03:47:41 +00:00
thorpej
12809e3434
If mapping only one segment of DMA memory into KVA space, use K0SEG.
1998-01-19 03:12:20 +00:00
sakamoto
5f78a36791
Add findcpuspeed for delay() and to pass to the kernel(BUS FREQ information).
...
some bug fix.
1998-01-19 03:00:55 +00:00
thorpej
c6d1f2e018
G/c LANCE DMA allocation goop.
1998-01-19 02:57:28 +00:00
thorpej
e5e8573d5c
Allocate the LANCE DMA area and set it up here. This is still not
...
optimal (really should be done further down the food chain), but we
can't really do that in a nice way right now, and this is much better
than what we had before (which was to steal memory pages before the
VM system was bootstrapped).
1998-01-19 02:56:05 +00:00
thorpej
bf92ae27ef
Pass a pointer to the "get this slot's DMA tag" function pointer to
...
the tc instance just like we do with the interrupt functions.
1998-01-19 02:54:24 +00:00
thorpej
806e953f2c
Get the per-slot DMA tag a bit differently.
1998-01-19 02:53:29 +00:00
thorpej
70da5cdba9
G/c an unused function pointer.
1998-01-19 02:53:03 +00:00
sakamoto
7bffb69b4c
Add btinfo_clock for BUS FREQ information.
...
some fix.
1998-01-19 02:52:02 +00:00
thorpej
8454673f87
Add "get this slot's DMA tag" function pointer on the Alpha.
1998-01-19 02:51:40 +00:00
thorpej
b5d3e43553
On the Alpha, pass down per-slot DMA tags to children.
1998-01-19 02:50:58 +00:00
thorpej
0546538aa8
Don't prototype ioasic_lance_dma_setup() on the Alpha.
1998-01-19 02:50:19 +00:00
thorpej
e1fed5afa0
Make sure the LANCE DMA area has been allocated, and don't call
...
ioasic_lance_dma_setup() on the Alpha; the DMA area is allocated differently
on that platform now.
1998-01-19 02:49:48 +00:00
sakamoto
9b5302f3da
eliminate unnecessary declaration.
1998-01-19 02:47:33 +00:00
sakamoto
5a1a1979bb
eliminate unnecessary code.
...
include dev/ic/i8253reg.h instead of timerreg.h
1998-01-19 02:20:55 +00:00
sakamoto
0075503ee7
Sync with arch/i386/isa/pccons.c
1998-01-19 01:49:43 +00:00
ragge
01eb1bb746
Make kernel compile & run again after latest config changes.
1998-01-18 22:09:13 +00:00
ragge
afb1a37379
Fix page size initialisation.
1998-01-18 22:07:50 +00:00
ragge
37f6125fdd
Garbage-collect unnecessary functions. Don't have blkcpy/blkclr
...
as inline.
1998-01-18 22:06:01 +00:00
drochner
32d94859ea
adapt to changed <dev/ic/i8042reg.h>
1998-01-18 14:45:10 +00:00
drochner
2562f77567
Don't define absolute ISA addresses here but offsets into the
...
"controller window".
1998-01-18 14:41:37 +00:00
mellon
ac489008ad
In syn_cache_get(), don't free incoming packet before jumping to resetandabort, but do free it after sending the reset.
1998-01-18 05:56:15 +00:00
gwr
2628e0df8a
Add the sif_macaddr member to struct saif, which can be used
...
in version 3.X PROMs (gets our Ethernet address).
1998-01-18 05:24:38 +00:00
mark
3f9be879af
Removed unused variables and prototypes.
...
Added missing prototypes.
1998-01-18 04:55:20 +00:00
mark
ce9284e134
Make sure halt() is prototyped.
1998-01-18 04:16:06 +00:00
mark
057522ef3f
Remove unused variables for the benefit of gcc -Wall -Werror.
1998-01-18 04:13:53 +00:00
mark
3a8b7284b0
Include sys/buf.h for the minphys() prototype.
...
Fix several printf() format strings.
1998-01-18 04:11:41 +00:00
mark
3224f7c301
Removed unused variables for the benefit of gcc -Wall -Werror.
1998-01-18 04:09:46 +00:00
mark
bb12eeb85a
Resync with podules file.
1998-01-18 04:02:53 +00:00
mark
0970bb601c
Add IDs for Lingenuity and Castle SCSI cards.
1998-01-18 04:01:42 +00:00
mark
921d5339df
Prototype kbdreset().
1998-01-18 03:51:13 +00:00
mark
773c2f9abb
Removed unused variables for the benefit of -Wall -Werror.
1998-01-18 03:48:37 +00:00
mark
56bac34cae
Declare a prototype for arm8_clock_config().
1998-01-18 03:43:46 +00:00
mark
a89dd06bf2
Removed unused variables and prototypes for the benefit of -Wall -Werror.
1998-01-18 03:42:58 +00:00
mark
56fc27b288
Removed unused variables for the benefit of -Wall -Werror.
1998-01-18 03:39:23 +00:00
thorpej
e62d894d7a
Implement a prefetch spill page for SGMAP DMA. This works around a slight
...
annoyance on systems that prefetch the next page during memory -> device
DMA if the DMA comes within a certain distance of the end of the current
page. This could cause machine checks since the PTE after the last page
would not have the valid bit set.
(I'm not going to complain about this slight kludge too much, since prefetch
makes DMA much faster...)
1998-01-18 00:05:33 +00:00
scottr
35e9372060
Add entries to the intvid_info table that are equivalent to
...
the (in)famous MADHATTER patch. The only one that has been
tested is the Q700, however, so the rest are conditionalized
on the MADHATTER option until they can be verified.
1998-01-17 23:10:22 +00:00
thorpej
8df306036a
Initialize s/g DMA registers in the same order as the CIA chipset's:
...
(1) window base
(2) window mask
(3) translation base
1998-01-17 22:46:55 +00:00
thorpej
3366b987d0
Put SGMAP-related stuff in the DMA map structure directly, rather than
...
indirecting through a pointer.
1998-01-17 21:53:52 +00:00
mark
405e360fa4
Include dev/scsipi/atapi_all.h
1998-01-17 20:00:59 +00:00
scottr
8df1b7a0f8
Now, correct the problem the correct way: s/cfattach/cfdriver/
1998-01-17 17:32:07 +00:00
scottr
696871f9e3
Back out previous change.
1998-01-17 17:28:35 +00:00
pk
23d53501bd
A small optimization.
1998-01-17 15:02:17 +00:00
mycroft
65d21cb64e
Change to the new 12-12-8 device number format.
1998-01-17 12:04:49 +00:00
scottr
5f3c1d48e0
We haven't needed a driver-specific minphys() for quite some time now.
1998-01-17 09:27:03 +00:00
mark
f62b027476
Include sys/user.h for the benefit of pmap_activate().
1998-01-17 07:14:11 +00:00
mark
1c08f38f54
Fix cfdriver declaration broken in recent config change.
1998-01-17 07:06:45 +00:00
thorpej
63db8935a6
Fix initialization of DMA window 0:
...
- Make sure the page table is aligned to at least 32k.
- Don't consider the MEMCS signal when checking for a window hit.
1998-01-17 03:43:59 +00:00
thorpej
9554b5a243
Update for "minptalign" argument to alpha_sgmap_init().
1998-01-17 03:40:32 +00:00
thorpej
399f3639cf
Don't assume that we'll be using direct-mapped DMA for PCI.
1998-01-17 03:39:51 +00:00
thorpej
361179df26
Make debugging decisions at run-time, and place a handy DDB breakpoint
...
after a transfer has been mapped in the page table.
1998-01-17 03:38:51 +00:00
thorpej
2981fec2f0
Allow specification of a minimum page table alignment to alpha_sgmap_init().
...
This is to work around an apparent hardware bug in some 2117x chipsets
where the page table must be aligned to at least 32k.
1998-01-17 03:37:22 +00:00
cgd
9d3aef5632
Put each of two labels one line to early. That could cause a panic,
...
if the wdc space couldn't be mapped. Pointed out by fvdl@netbsd.org .
1998-01-17 00:40:45 +00:00
cgd
4293c20761
return an error if given an ioctl which isn't recognized. (Fixes
...
ifconfig media warning with GENERIC kernels, as well as simply being
more correct.)
1998-01-16 18:54:10 +00:00
leo
123d97732f
Be more accurate with errors on read(2) (as suggested by Ted Lemon).
1998-01-16 09:19:37 +00:00
leo
bb4f2f4ebe
Add: bus_space_{read,write}_region_N() and bus_space_set_{multi,region}_N()
...
functions.
1998-01-16 09:17:48 +00:00
sakamoto
b1bde3fc9e
initial import of bebox kernel loader.
1998-01-16 04:17:36 +00:00
sakamoto
538f1fec20
initial import of bebox kernel loader.
1998-01-16 04:07:35 +00:00
sakamoto
ea7c4f2cab
Data structures passed from the boot loader to the kernel
1998-01-16 04:04:14 +00:00
thorpej
cf591e644b
Generate dependencies on the VM86 option.
1998-01-15 22:25:52 +00:00
thorpej
6254765e6a
Make this compile again after recent config changes.
1998-01-15 22:22:09 +00:00
thorpej
032c433933
Just commit to using MACHINE_NEW_NONCONTIG.
1998-01-15 22:20:15 +00:00
is
632b1123ba
struct cfdrivers are emitted by config(8) into ioconf.c, nowadays. Delete
...
mainbus_cd here.
1998-01-15 21:55:51 +00:00
cgd
10f936ff29
move the 'cd_cd' declaration back up to where it was before
...
the config changes were made. Though the nature of the declaration
had to change, there wasn't a reason to change its location.
1998-01-15 19:56:03 +00:00
thorpej
1484fa567d
Generate dependencies on the CPU type options (I386_CPU, I486_CPU, ...)
1998-01-15 19:47:36 +00:00
cgd
ed81982205
#if some bug workaround code which only needs to be compiled if
...
ATAPI 'sd's are present.
1998-01-15 18:59:03 +00:00
pk
94072e56f6
Move "async command" state in here.
1998-01-15 16:08:32 +00:00
pk
47505a3b6f
Elaborate on "receiver not ready" conditions; we don't need a full reset
...
in most cases.
Move "async command" state into the softc structure.
1998-01-15 16:07:34 +00:00
kleink
e800994db9
Per X/Open CAE Specification, Issue 5, change the type of the member ss_sp of
...
struct sigstack from `char *' to `void *'.
1998-01-15 14:58:13 +00:00
christos
05d3f8a2e9
PR/4794: Urban Boquist: Linux cdrom ioctls are missing
1998-01-15 14:52:11 +00:00
leo
dc8f785187
Make this compile again after the latest config changes.
1998-01-15 13:06:27 +00:00
thorpej
2cfef7a0ec
Oops, something snuck in there that shouldn't have...
1998-01-15 07:40:06 +00:00
thorpej
86adfd8033
Switch to MI IDE drivers, add ATAPI devices.
1998-01-15 07:17:19 +00:00
thorpej
c60855e116
Switch to the MI IDE drivers.
1998-01-15 07:09:24 +00:00
thorpej
f127dfb6f0
Undo the wdc -> awdc mapping kludge.
1998-01-15 07:02:21 +00:00
thorpej
76e4297b91
No longer needed; we use the MI IDE driver now.
1998-01-15 07:01:51 +00:00
thorpej
525b092c2e
Get include file paths correct.
1998-01-15 06:15:08 +00:00
thorpej
1f93872e5c
Kludge around i/o port overlap w/ the "wdc" driver.
1998-01-15 06:11:55 +00:00
thorpej
28fa7254b3
Define the O_SYNC flag to open(2) per XPG4.2, using the same value as the
...
historic O_FSYNC flag (the semantics are identical). Hide the historic
O_FSYNC flag if _POSIX_SOURCE or _XOPEN_SOURCE are defined, and define it to
be O_SYNC.
1998-01-15 02:33:12 +00:00
cgd
d6e5187749
add 'sd* at atapibus? drive ?' to all kernel configs already containing
...
an analogous line for 'cd'.
1998-01-15 02:26:26 +00:00
cgd
24972c51a4
#include a just-added scsipi header.
1998-01-15 02:23:43 +00:00
cgd
3b207eaf83
add support for an ATAPI attachment for 'sd'.
...
fix 'cd' driver's NCD_SCSI bogosity (was using testing wrong macro!)
clean up in various ways:
* make common atapi_mode_{sense,select}() functions.
* put ATAPI data structures in more sensible headers, split up by
device type.
* include headers a bit more carefully.
* pass flags to attachment-specific cd functions, and use them.
* get rid of SCSI bits in scsipi_base.h's scsipi_make_xs(), move
them into the correct place in scsi_base.c.
* fix minor typo in struct name in scsipiconf.h (which was apparently
never used except in a #define later in the same file).
* use __attribute__ to force 4-byte alignment for xs command store,
so that architectures trying to bus_space_write_multi_N() (where
N > 1) that data to a controller won't lose.
* clean up a few comments in typos, and make a few #defines easier to
understand/maintain.
* rename cd_link.h to cdvar.h (via repository copy). This is exactly
what a 'var' file is supposed to be.
1998-01-15 02:21:27 +00:00
cgd
8540a31ee3
kill a couple of unnecessary #ifs
1998-01-15 01:26:13 +00:00
cgd
aa872229e1
fix typo in comment that i just added
1998-01-15 00:35:38 +00:00
cgd
4fdd07b4c5
remove 'ata' interface attribute. it now is define in the MI conf/files.
1998-01-14 23:56:23 +00:00
cgd
aaede4d8d8
Various cleanups and bug fixes to the wdc/wd code:
...
* Fix bug in wdc that would overflow ATAPI transfer length.
* Improve wdc probe code so that 'wdc' is probed in if present
even if there are no drives attached, and so that it works
properly even if the only device is an ATAPI slave.
* bus_space-ify.
* split the ISA attachment from the wdc driver, and remove
ISA dependencies from non-ISA files.
* claim that wd and wdc are now machine-independent (probably not
completely true, but mostly so; they at least work on arm32 and
i386).
* Various other minor fixups and cleanups, some of which were pointed
out by Kazuki Sakamoto.
1998-01-14 23:41:59 +00:00
cgd
ad141a69a7
Shuffle wd/wdc driver files around (via repository copies). wdc
...
now lives in dev/ic, wd now lives in dev/ata. there's now a 'ata'
interface attribute defined in conf/files, but wdc can't go there
yet because some ports still use private versions based on the old
ISA version.
1998-01-14 23:36:30 +00:00
thorpej
561056f2e2
Grab a fix from 4.4BSD-Lite2: open(2) with O_FSYNC and MNT_SYNCHRONOUS
...
had not effect. Fix: check for either of these flags in vn_write(),
and pass IO_SYNC down if they're set.
1998-01-14 22:08:44 +00:00
thorpej
de0a03db2e
As pointed out by Chris Demetriou, I forgot to bump the NetBSD constant
...
when going to 1.3B. Let's hope we don't go to 1.3C in Februrary...
1998-01-14 22:05:52 +00:00
drochner
09354842c5
from Dave Burgess per PR4620:
...
-base address 0x308 is supported by more Wangtek QIC tapes than 0x300
-Ultrastor ISA SCSI adapters can't be set to base address 0x334
(changed to 0x340)
1998-01-14 15:27:43 +00:00
pk
866632416e
Fix a border case when committing physical pages to the VM system;
...
rename some variables in the process for clarity.
1998-01-14 14:49:29 +00:00
drochner
6dbf9b31d3
"device" structure is not used in probe anymore
1998-01-14 12:17:14 +00:00
drochner
4429cca488
make it compile without BROKEN_INDIRECT_CONFIG
1998-01-14 12:14:41 +00:00
cjs
61826c3946
Make INSTALL a fully-loaded kernel (for booting from network or CD), and
...
INSTALL-FLOPPY a stripped-down version to fit on a floppy.
1998-01-13 23:49:31 +00:00
pk
1842a317c3
Fix parenthesis inbalance.
1998-01-13 20:53:38 +00:00
pk
1195f3d8a9
Add fkbyte(), which is like fubyte() but for kernel addresses.
...
Only used at this moment to work around unexplained transient bus
errors when reading the VME interrupt vector in bus control space.
1998-01-13 20:51:01 +00:00
drochner
13463145fe
make it compile without BROKEN_INDIRECT_CONFIG
1998-01-13 19:33:28 +00:00
scottr
4c69a8b2ea
Update for bus.h changes.
1998-01-13 19:15:32 +00:00
scottr
5b4a54759d
Conform to spec, and make bus_space_copy() handle overlapping copies.
...
From Jason Thorpe.
1998-01-13 18:32:15 +00:00
mrg
057795048f
this is the i386 MD portion of the MACHINE_NEW_NONCONTIG code, as
...
written by chuck cranor. thanks to mycroft for helping me find the
one little line of code i accidentally deleted while merging it.
this is not enabled by default. `options MACHINE_NEW_NONCONTIG'
will use this code. eventually, this should go into <machine/vmparam.h>
insteaed of MACHINE_NONCONTIG.
1998-01-13 12:52:16 +00:00
thorpej
ebb84c5792
Fix a typo in previous.
1998-01-13 06:13:29 +00:00
sakamoto
7b093957d3
interrupt name change "softtty" -> "softserial"
1998-01-13 03:52:49 +00:00
enami
99a9d7a632
Don't include <machine/pio.h>. Include <machine/bus.h> explicitly.
1998-01-13 03:34:32 +00:00
enami
4b62270f85
Don't include <machine/pio.h> and <dev/isa/isavar.h>. Instead,
...
include <machine/bus.h> directly.
1998-01-13 03:31:42 +00:00
thorpej
df7ad322f2
Nuke spurious semicolon, from Konrad Schroder <perseant@hhhh.org>.
1998-01-13 03:30:39 +00:00
thorpej
1e2c4ea425
Update for changes to config.
1998-01-13 02:26:06 +00:00
thorpej
687449a900
Update for changes to config.
1998-01-13 02:09:58 +00:00
pk
a8dda8092d
Commit to MACHINE_NEW_NONCONFIG.
1998-01-13 00:58:56 +00:00
pk
418fd96bd5
Turn NEW_NONCONTIG page upload code into a routine shared by sun4/4c
...
and sun4m pmap_bootstrap()s, simplify it, and make it not loose the
couple of slack pages we painstakingly remembered in pmap_bootstrap.
1998-01-13 00:55:15 +00:00
scottr
3b7ef50f8e
Missed a change for the updated config(8).
1998-01-12 23:56:26 +00:00
scottr
ecc55fb707
Consolidate NFS_BOOT_* options into opt_nfs_boot.h
1998-01-12 21:27:09 +00:00
thorpej
c4c8934a37
Revert last change.
1998-01-12 21:21:45 +00:00
thorpej
8d1f838fd3
Significant kernel interface change: bump to 1.3B.
1998-01-12 21:16:23 +00:00
thorpej
f32f947061
Update for changes to config.
1998-01-12 20:52:29 +00:00
drochner
72852bbaec
make it compile without BROKEN_INDIRECT_CONFIG
1998-01-12 20:48:17 +00:00
thorpej
2565ff444a
Update for config changes.
1998-01-12 20:35:04 +00:00
thorpej
1adb4489a6
Update for changes to config.
1998-01-12 20:23:38 +00:00
thorpej
0475e09198
Update for changes to config.
1998-01-12 20:04:24 +00:00
thorpej
ac71bb86e2
This file was apparently accidentally ressurected.
1998-01-12 19:59:00 +00:00
thorpej
2d53e59a47
Update for changes to config.
1998-01-12 19:51:03 +00:00
thorpej
36760d9d94
Update for changes to config.
1998-01-12 18:59:04 +00:00
thorpej
871cf5e7ce
Update for changes to config.
1998-01-12 18:30:41 +00:00
thorpej
1ac3d5db35
Put SPU options in opt_spuconf.h, add device classes.
1998-01-12 18:29:48 +00:00
thorpej
cfdba7eac6
Update for changes to config.
1998-01-12 18:18:01 +00:00
thorpej
2d73f5ea18
Update for changes to config.
1998-01-12 18:03:58 +00:00
thorpej
0b6e56ec02
Adjust for changes to config.
1998-01-12 10:39:01 +00:00
thorpej
5419debcb7
Adjust for config changes.
1998-01-12 10:21:02 +00:00
thorpej
8742b48c3f
Adjust for changes to config.
1998-01-12 09:54:57 +00:00
thorpej
19feaef2b4
Adjust for changes in config.
1998-01-12 09:51:28 +00:00
thorpej
93f26b5f40
Adjust for changes to config.
1998-01-12 09:49:10 +00:00
thorpej
06ce220790
Update for config changes.
1998-01-12 09:39:57 +00:00
thorpej
1934051221
Update for changes to config.
1998-01-12 09:36:53 +00:00
thorpej
d02585cf36
Update for config changes.
1998-01-12 09:33:30 +00:00
thorpej
925ce7706e
ast, boca, and rtfps are not ttys, but rather "busses". Similarly,
...
the lpt doesn't export a tty-like interface, so it's dull, too.
1998-01-12 09:29:37 +00:00
thorpej
095c4c092d
Adjust for config changes.
1998-01-12 09:23:08 +00:00
thorpej
9c183e53cb
Slight change to previous.
1998-01-12 08:57:20 +00:00
thorpej
b731c12641
Adjust for config changes.
1998-01-12 08:51:09 +00:00
thorpej
c574630ead
Add device classes.
1998-01-12 08:48:28 +00:00
thorpej
43ba4e27bd
Adjust for config changes.
1998-01-12 08:44:08 +00:00
thorpej
2ceadba464
Add device classes.
1998-01-12 08:21:30 +00:00
thorpej
d58acb2a64
Pull in ioconf.h if _KERNEL and ! _LKM.
1998-01-12 08:04:55 +00:00
thorpej
c5f6a2dbb3
Add (commented out) COMPAT_13
1998-01-12 07:09:24 +00:00
thorpej
83c4c24058
Add "non-volatile" memory cluster usage bit.
1998-01-12 07:07:19 +00:00
sakamoto
1f703bce45
Sync w/ dev/isa/wdc.c
1998-01-12 06:08:41 +00:00
sakamoto
38efb3ac5f
add The Be interrupt controller setmask function(bebox_intr_mask).
...
change SINT_TTY to SINT_SERIAL
splsofttty to splsoftserial, and so on.
1998-01-12 04:57:10 +00:00
scottr
54ea074777
Use option header file for MROUTING
1998-01-12 03:02:48 +00:00
scottr
3cdcd5e1c7
Use option header file for TCP_COMPAT_42
1998-01-12 03:00:42 +00:00
scottr
243db3d614
defopt MROUTING and TCP_COMPAT_42
1998-01-12 02:58:58 +00:00
pk
54719a53a3
More comments and general re-organization (group by device class) provided
...
by Todd Vierling.
1998-01-11 23:32:55 +00:00
thorpej
1ef77e68aa
Oops, fix a printf format.
1998-01-11 23:16:04 +00:00
marc
4a03c84731
change the initial loop condition not to round up if the iobase starts
...
<= 0x70
1998-01-11 22:22:12 +00:00
thorpej
f522bda243
Convert the hp300 LANCE driver to use bus.h
1998-01-11 21:57:02 +00:00
thorpej
5021043b13
ia->ia_addr is of type `bus_addr_t'.
1998-01-11 21:56:13 +00:00
thorpej
582d47fcf0
ia->ia_addr is a physical address, not a kernel virtual address.
1998-01-11 21:55:08 +00:00
thorpej
1687835b3e
Pass down bus space tags to children, and use types appropriate for
...
bus.h.
1998-01-11 21:53:04 +00:00
thorpej
774d66001e
Add bus_space.c
1998-01-11 21:42:44 +00:00
thorpej
77706becd7
Initial implementation of bus_space functions for hp300. Some cleanup
...
of this will be possible once some pmap changes are made.
1998-01-11 21:40:52 +00:00
thorpej
b69358e4ca
bus.h for the hp300 port. Only supports bus_space for now.
1998-01-11 21:26:04 +00:00
scottr
448859f0c9
Add NFS_BOOT_DHCP option, and compile nfs_bootdhcp.c if either
...
NFS_BOOT_BOOTP or NFS_BOOT_DHCP are specified.
1998-01-11 05:57:45 +00:00
scottr
afc2a8933a
Make NFS_BOOT_DHCP work as expected.
1998-01-11 05:55:40 +00:00
tv
24ca7df4ba
don't run minor() macro twice in ISDEV...() macro definitions
1998-01-10 14:07:25 +00:00
thorpej
e76d5a2fe1
Oops, don't need vm_page_physget() if PMAP_STEAL_MEMORY.
1998-01-10 03:02:58 +00:00
pk
69487f1532
* Fix a train-load of bugs, mostly present in one of these categories:
...
- "out of resource" errors cause receive buffer chain corruption
- resets can confuse the interrupt handler
- multi-cast setup causes receive buffer chain corruption
- shared memory setup incomplete
* Enhance effiency by avoiding unnecessary shared memory access,
improved handling of receive frame & buffer descriptors, and
introducing an `asynchronous' option when issuing 82586 commands.
* Exclusively use offsets relative to the bus handle representing the shared
memory area to formulate accesses to the chip's data-structures. The
front-ends provide glue functions that cater to the chip's endian-
sensitivity, to perform the actual device access (note: single-byte
accesses are done here using `bus_space_{read,write}_1()').
This concludes the transformation into a bus-independent driver module.
1998-01-10 02:35:31 +00:00
pk
f041e52c7e
* Rename a bunch of chip definitions for consistency.
...
* Abolish C structures to access chip data-structures; instead use macros
that take indices and offsets relative to the bus handle representing
the chip's resources.
* Include the old version of this file wholesale, until all drivers
have been updated to use the MI 82586 code.
1998-01-10 01:46:32 +00:00
perry
aceff90d16
add yet another PCI brige -- from pr 4780 from Nathan J. Williams
1998-01-10 01:15:14 +00:00
fvdl
83ef3d4928
Switch off CPU-PCI write posting for the Saturn chipset; it is known
...
to cause problems with PCI busmasters.
1998-01-09 22:34:58 +00:00
perry
6f57e5c573
multiple include protect machine/limits.h, fixes pr 4473 (from Mika Nystrom)
1998-01-09 22:23:44 +00:00
thorpej
1256fac296
Rearrange alpha_init() somewhat, setting the page size much earlier, and
...
keeping track of where the kernel lives in K0SEG. Place early data
structure allocation into an allocsys() function, like other ports, so
that it can be used to first calculate the amount of memory needed
for those data structures.
1998-01-09 21:34:47 +00:00
mycroft
59ea23516a
Increase delays to the required 7us.
1998-01-09 21:28:32 +00:00
mycroft
b0cf8e166d
Update copyright.
1998-01-09 21:16:36 +00:00
mycroft
1434d2e50d
Map the I/O region correctly, but reading its address from the EISA config
...
space.
1998-01-09 20:55:17 +00:00
thorpej
bb4988dca2
If MACHINE_NEW_NONCONTIG is defined, activate the pmap_steal_memory()
...
interface.
1998-01-09 19:13:09 +00:00
thorpej
8947029c63
Make this compile in light of recent socket queue data structure change.
...
Pointed out by Matthias Drochner.
1998-01-09 18:31:50 +00:00
drochner
408be2261c
Compile in BOOTP support for diskless boot.
1998-01-09 17:25:30 +00:00
drochner
35718a7622
Use of BOOTP or BOOTPARAM can be conntrolled by config option now.
1998-01-09 17:21:10 +00:00
drochner
9c3e23d351
Compile in BOOTP support for diskless boot.
1998-01-09 17:10:16 +00:00
drochner
874db3d0e0
Selection of network configuration method for diskless boot can be
...
controlled by config options now. Remove setting of nfs_boot_rfc951,
it is set by default if "option NFS_BOOT_BOOTP" is defined.
1998-01-09 17:06:35 +00:00
drochner
6757ab1b65
Remove conditional setting of "nfs_boot_rfc951" (introduced in previous
...
change). It's not needed anymore.
1998-01-09 16:01:27 +00:00
drochner
5b055c9032
enable diskless boot with BOOTP and BOOTPARAM configuration
1998-01-09 15:18:50 +00:00
drochner
b5bcdb1107
Conditionalize call to RARP, check interface type.
...
(This file can now be included even if no ARP capable interfaces are
defined.)
1998-01-09 15:16:55 +00:00
drochner
2179b6488a
Use interface type to select "hardware type" in bootp header.
1998-01-09 15:13:44 +00:00
drochner
9e7604474f
Use new options "NFS_BOOT_BOOTP" and "NFS_BOOT_BOOTPARAM" for parts
...
conditional on a particular configuration method.
The global flags "nfs_boot_rfc951" and "nfs_boot_bootparam" control
independantly if the functions are actually called. (Previous meaning
of "nfs_boot_rfc951" was "either-or".)
1998-01-09 15:10:37 +00:00
drochner
dfc3f18cd2
cleanup of diskless NFS boot code:
...
2 new options, "NFS_BOOT_BOOTP" and "NFS_BOOT_BOOTPARAM", control whether
the corresponding code is included.
1998-01-09 15:03:52 +00:00
thorpej
51902c1094
In vm_page_physload(), check page_shift not cnt.v_page_size for
...
having been initialized.
1998-01-09 08:50:00 +00:00
thorpej
e47378c640
- pmap_collect_pv() is broken; #ifdef it out (it's not currently ever
...
called anyway, but now at least the reason is documented).
- rearrange a few things to make it easier to add support for non-contigous
physical memory.
1998-01-09 08:27:09 +00:00
thorpej
b115c27722
Get rid of some old cruft.
1998-01-09 08:18:22 +00:00
perry
3fe138c146
RCS Id Police.
1998-01-09 08:03:16 +00:00
scottr
867cdfc734
Another update from John: if we're polling, e.g. in ddb, pass the
...
keystroke to the upper half directly.
1998-01-09 06:59:29 +00:00
thorpej
4deb927ee6
Regen.
1998-01-09 06:59:27 +00:00
thorpej
2f3e61a54a
Put RCS IDs into generated files, in the correct place.
1998-01-09 06:59:10 +00:00
thorpej
e41a79ff38
Regen.
1998-01-09 06:58:04 +00:00
thorpej
bd5df8e610
Put RCS IDs into generated files, in the correct place.
1998-01-09 06:57:44 +00:00
thorpej
884cc096ca
Regen.
1998-01-09 06:56:47 +00:00
thorpej
8735ce36ca
Put RCS IDs into generated files, in the correct place.
1998-01-09 06:56:23 +00:00
thorpej
e21b3a4cdb
Regen.
1998-01-09 06:54:56 +00:00
thorpej
d41a505027
Regen.
1998-01-09 06:54:54 +00:00
thorpej
d1ad0bc624
Put RCS IDs into generated files, in the correct place.
1998-01-09 06:54:25 +00:00
thorpej
5170264d4e
Gather pv_table and pmap_attributes things togther, and macro'ize
...
access to them a little better.
Also, improve the performance of pmap_is_{referenced,modified}() and
pmap_clear_{reference,modify}() somewhat.
1998-01-09 06:54:17 +00:00
thorpej
12b9ab0fd5
Regen.
1998-01-09 06:46:47 +00:00
thorpej
9b7afe221e
Put RCS IDs into the generated files, in the correct place.
1998-01-09 06:46:26 +00:00
thorpej
15ed345b3b
Regen.
1998-01-09 06:43:27 +00:00
thorpej
c5a2e825a0
Regen.
1998-01-09 06:41:17 +00:00
thorpej
b59d427988
Add RCS IDs to generated files, in correct place.
1998-01-09 06:40:43 +00:00
thorpej
14807c2914
Use avail_start/avail_end.
1998-01-09 06:37:04 +00:00
thorpej
f9b6954f55
Call vm_set_page_size() after initializing PAGE_SIZE.
1998-01-09 06:35:17 +00:00
thorpej
80fff795f9
Regen.
1998-01-09 06:19:02 +00:00
thorpej
95b0f526ca
Oops, thinko
1998-01-09 06:17:51 +00:00
thorpej
9a4eec1ed1
Regen.
1998-01-09 06:14:57 +00:00
thorpej
d92ba4e07c
Regen.
1998-01-09 06:10:55 +00:00
thorpej
355cc817cb
Regen.
1998-01-09 06:09:55 +00:00
thorpej
1bc72bcfa6
Regen.
1998-01-09 06:09:54 +00:00
thorpej
1a49aac581
Regen.
1998-01-09 06:09:17 +00:00
thorpej
f35d097c86
Put RCS IDs in generated files, in the right place.
1998-01-09 06:07:26 +00:00
thorpej
4001cf8069
In vm_mem_init(), don't test for cnt.v_page_size being == 0. It is perfectly
...
legitimate for this to be set if vm_set_page_size() hasn't been called (it's
how the page size is communicated to vm_set_page_size()). Instead, test
for page_shift == 0; this is one of the values that vm_set_page_size()
initializes.
1998-01-09 06:00:50 +00:00
mrg
aa39c43bc9
call vm_set_page_size().
1998-01-09 04:37:56 +00:00
thorpej
85d56961e5
Update a comment relative to the vm_bootstrap_steal_memory() change, and
...
don't include pmap_free_pages() or pmap_next_page() in the new non-contig
case.
1998-01-08 23:48:16 +00:00
thorpej
4cb36c3346
Update a comment to reflect the vm_bootstrap_steal_memory() change, and
...
while I'm here, note which two functions will no longer exist when
new non-contig code is done for this pmap.
1998-01-08 23:47:07 +00:00
thorpej
54f8b4bf57
In the new non-contig case, redefine pmap_steal_memory() as an alternative
...
to vm_bootstrap_steal_memory(), since we may need to steal memory from
a direct-mapped segment at this early stage of the game (on e.g. MIPS
and Alpha).
This interface is activated by defining PMAP_STEAL_MEMORY in <machine/pmap.h>.
Otherwise, the pmap_virtual_space() prototype is in-scope for use by
vm_bootstrap_steal_memory().
1998-01-08 23:28:04 +00:00
thorpej
15efce41a3
Zorch pmap_startup() prototype. It was never implemented in machine-dependent
...
code, and is inlined in the MACHINE_NONCONTIG case of vm_page_bootstrap() now.
1998-01-08 23:13:05 +00:00
thorpej
589a1e440e
Clean up and consolidate the old non-contig bootstrap functions, and
...
rename pmap_steal_memory() to vm_bootstrap_steal_memory().
1998-01-08 23:03:24 +00:00
lukem
c0e8ee54e9
* start from the top of the given ephemeral range and work down;
...
results in reserved ephemeral ports starting at the top (as per
current practice), and shouldn't have a negative effect on normal
ephemeral ports...
* initialise inpt_lastlow in in_pcbinit
1998-01-08 11:56:50 +00:00
mrg
c599e7d439
add new version of non contiguous memory code, written by chuck cranor,
...
called "MACHINE_NEW_NONCONGIG". this is required for UVM, the new VM
system (also written by chuck) that is coming soon. adds new functions:
vm_page_physload() -- tell the VM system about an area of memory.
vm_physseg_find() -- returns index in vm_physmem array that this
address is in.
and several new versions of old functions/macros defined in vm_page.h.
this is the sparc portion.
1998-01-08 11:39:30 +00:00
mrg
a20d56e92e
add new version of non contiguous memory code, written by chuck cranor,
...
called "MACHINE_NEW_NONCONGIG". this is required for UVM, the new VM
system (also written by chuck) that is coming soon. adds new functions:
vm_page_physload() -- tell the VM system about an area of memory.
vm_physseg_find() -- returns index in vm_physmem array that this
address is in.
and several new versions of old functions/macros defined in vm_page.h.
this is the MI portion. sparc, and then later i386 portions to come.
all other ports need to change to this ASAP! (alpha is already being
worked on)
1998-01-08 11:36:16 +00:00
mrg
0876a69653
some KNF.
1998-01-08 11:03:13 +00:00
mrg
7069ab9961
don't call fb_unblank if NFB < 0
1998-01-08 10:56:36 +00:00
mrg
002fbe8721
do not use fb_unblank unless NFB > 0
1998-01-08 01:13:58 +00:00
thorpej
655a55141c
Regen: Back out RCS ID related changes.
1998-01-08 01:07:24 +00:00
thorpej
5713d318b8
Back out RCS ID related changes.
1998-01-08 01:06:50 +00:00
thorpej
db8d7d755a
Regen: Back out RCS ID related changes.
1998-01-08 01:05:10 +00:00
thorpej
af0fb8a65a
Back out RCS ID related changes.
1998-01-08 01:04:44 +00:00
thorpej
c4a3ed1697
Regen: Back out RCS ID related changes.
1998-01-08 01:02:05 +00:00
thorpej
ddb3a0e478
Back out RCS ID related changes.
1998-01-08 01:01:27 +00:00
thorpej
22aef93dcd
Regen: back out RCS ID related changes.
1998-01-08 00:36:12 +00:00
thorpej
b0a69d357f
Back out RCS ID related changes.
1998-01-08 00:35:35 +00:00
thorpej
106bb71744
Regen: back out RCS ID related changes.
1998-01-08 00:33:49 +00:00
thorpej
eac46118ba
Back out RCS ID related changes.
1998-01-08 00:33:33 +00:00
lukem
1a63d90320
add missing ; ...
1998-01-08 00:32:39 +00:00
thorpej
1b2dbc7a0e
Regen: back out RCS ID related changes.
1998-01-08 00:32:06 +00:00
thorpej
b0ecfb4210
Back out RCD ID related changes.
1998-01-08 00:31:23 +00:00
thorpej
0068dec705
Regen: back out RCD ID related changes.
1998-01-08 00:27:16 +00:00
thorpej
585f0dec73
Regen: back out RCD ID related changes.
1998-01-08 00:17:11 +00:00
thorpej
d76d905b2f
Back out RCS ID related changes.
1998-01-08 00:16:25 +00:00
thorpej
cbf3cc6bb8
Make insertion and removal of sockets from the partial and incoming
...
connections queues O(C) rather than O(N).
1998-01-07 23:47:08 +00:00
thorpej
cc22126721
Implement passing credentials as ancillary data on Unix domain sockets,
...
enabled with the LOCAL_CREDS socket option on the listener. Semantics are
similar to BSD/OS's:
- Creds are available with first data on SOCK_STREAM, and with every datagram
on SOCK_DGRAM.
- It is not possible to forge credentials.
Different in that:
- Different credential data structure (ours does not rely on the format
of internal kernel data structures, and does not pass the login name).
- We can pass creds and file descriptors at the same time (this does not
work in BSD/OS).
Luke Mewburn <lukem@netbsd.org> gets credit for inspiring me to implement
this. :-)
1998-01-07 22:57:09 +00:00
lukem
c80b4400e5
add the following, derived from FreeBSD:
...
* IP_PORTRANGE socket option, which controls how the ephemeral ports
are allocated. it takes the following settings:
IP_PORTRANGE_DEFAULT use anonportmin (49152) -> anonportmax (65535)
IP_PORTRANGE_HIGH as IP_PORTRANGE_DEFAULT (retained for FreeBSD
compat reasons, where these are separate)
IP_PORTRANGE_LOW use 600 -> 1023. only works if uid==0.
* in_pcb flag INP_ANONPORT. set if port was allocated ephmerally
1998-01-07 22:51:22 +00:00
thorpej
cf89ccf13e
Add uipc_ctloutput().
1998-01-07 22:50:42 +00:00
thorpej
ba2c7e8ca0
Add flags to the unpcb, and define the "want credentials" flag.
1998-01-07 22:49:47 +00:00
thorpej
e7a511e0c1
Define the LOCAL_CREDS socket option, and pass a proc * to unp_output().
1998-01-07 22:49:12 +00:00
thorpej
2731959046
Prototype uipc_ctloutput().
1998-01-07 22:47:49 +00:00
thorpej
84741f2538
Add the sockcred structure and related definitions, and the SCM_CREDS
...
control message type.
1998-01-07 22:46:26 +00:00
is
5d5c1cd59e
- avoid system stack underflow when calling sigreturn via trap #0
...
- make sure all sigreturn error conditions are reported to the caller,
instead of the place jumped to.
This is the bugfix part of pr 4628 by ITOH Yasufumi.
The performance optimization part will be handled seperately, after evaluating
its implications.
Testing on 68040 and removing the performance change from the proposed patch
by scottr. Half of the Amiga machdep.c change had to be done manually by me,
as the patchfile didn't apply cleanly.
XXX Yes, Amiga should be changed to use the common sig_machdep.c instead.
XXX Really soon now. I promise.
1998-01-07 22:46:00 +00:00
mikel
c0d8293951
fix some typos in error messages & comments
1998-01-07 08:47:54 +00:00
scottr
4567c69fea
Update from John Wittkoski: the Color Classic and Color Classic II
...
have Cuda hardware, not IIsi-based.
1998-01-07 07:33:36 +00:00
thorpej
b981fc4d34
Fix bug in recvit() that would cause recvmsg() to only receive one
...
control message, even if there were multiple control messages on
the queue. From Jean-Luc Richier <Jean-Luc.Richier@imag.fr>, in
bug report kern/4700.
1998-01-07 05:49:25 +00:00
thorpej
e918c058f1
Fix passing of multiple file descriptors (was broken when code was made
...
64-bit safe).
1998-01-07 04:03:38 +00:00
thorpej
974b59d07c
Happy new year!
1998-01-07 00:41:43 +00:00
thorpej
052b639ac1
Clean up the forking of init and the pagedaemon slightly: call fork1()
...
directly (which provides a pointer to the new process).
1998-01-06 21:18:00 +00:00
thorpej
07216d15fc
Allow retval to be NULL, filling it in only if it was passed.
1998-01-06 21:15:41 +00:00
is
d002f566b3
Support 68060 (and, for the Amiga, even 68040 buserr frames) in the sendsig()
...
and, indirectly, sigreturn() functions.
XXX The Amiga should be switched to using sig_machdep.c instead.
1998-01-06 20:50:22 +00:00
bouyer
d8d77f77d6
Add a few quirk entries from OpenBSD.
1998-01-06 17:03:15 +00:00
thorpej
6ac24f05df
Garbage-collect VM_PMAP.
1998-01-06 08:46:11 +00:00
thorpej
2317f9064e
Garbage-collect pm_stchanged.
1998-01-06 08:40:50 +00:00
thorpej
d8ee45898e
Garbage-collect __VM_PMAP_HACK.
1998-01-06 08:36:23 +00:00
thorpej
0e5cf40b1f
Always include pmap_pinit(), since it is a defined pmap interface
...
function (thought, we might revisit that later). Just call pmap_pinit()
in pmap_create(), instead of inlining what pmap_pinit() does.
Also, g/c a TAILQ_FIRST() macro that is now defined in <sys/queue.h>
1998-01-06 08:27:05 +00:00
thorpej
a26db50632
Don't need __VM_PMAP_HACK anymore.
1998-01-06 08:14:14 +00:00
thorpej
4044eccd3f
Don't use vm_pmap; use vm_map.pmap instead.
1998-01-06 08:13:08 +00:00
thorpej
c2768af3d4
Garbage-collect cpu_set_init_frame(); it hasn't been needed for some time
...
now.
1998-01-06 08:06:45 +00:00
thorpej
07f835de1f
Garbage-collect PMAP_ACTIVATE() call here; it's no longer necessary.
1998-01-06 07:49:36 +00:00
thorpej
3e7eb6c80a
Garbage-collect pm_pdchanged; it's not used by anything.
1998-01-06 07:16:06 +00:00
thorpej
61567b54de
Garbage-collect pm_stchanged; it's not used by anything.
1998-01-06 07:02:58 +00:00
thorpej
d11b109f2b
Garbage-collect use of the PCB's copy of the user segment table pointer.
1998-01-06 06:51:40 +00:00
thorpej
ab9b250a37
The user segment table pointer is no longer kept here. Change it to
...
a spare field.
XXX Should be changed to use generic m68k PCB!
1998-01-06 06:47:04 +00:00
thorpej
8cbc5caabb
The user segment table pointer is no longer kept here. Change it to
...
a spare field.
1998-01-06 06:46:05 +00:00
perry
8a98e23a48
RCSID Police.
1998-01-06 04:55:52 +00:00
perry
2ec6474b31
RCSID Police.
1998-01-06 04:44:59 +00:00
jtk
fe87ac4104
fix for changes in bioscall structure and include files
1998-01-06 00:35:42 +00:00
thorpej
a8f80ad4fd
Fix a bogosity apparently inherited from when the Utah 4.3BSD code base
...
was converted to use Mach VM for Net2/4.4BSD. The user segment table
pointer was originally stored in the PCB. When Mach VM came along,
however, it was also stored in the pmap, and loaded into the PCB in
pmap_activate(). pmap_activate() would then note that the PCB's USTP
was now in sync with the pmap's USTP, and the low-level context switch
code would use the value from the PCB.
However, pmap_activate() would also load the hardware MMU context if
the pmap was the current pmap (or, in the case where pmaps can be shared,
such as in NetBSD, if the proc was the current proc). The low-level
context switch code would then reload the hardware _again_ using the
USTP from the PCB.
However, the optimization of not calling pmap_activate() if "stchanged"
was false ended up causing some processes to use stale USTP values from
the PCB when the low-level context switch code reloaded the hardware!
This was noticed by using a real vfork(2) (which worked for some time
before failing, surprisingly!)
Since I'm hard pressed to find any real optimization here (since the
hardware was always reloaded once, sometimes twice!), the code now always
calls pmap_activate(), which uses the correct USTP value (the one in the
pmap). The PCB's USTP is now ignored, and should eventually be g/c'd.
Another optimization can actually be performed, and I have added a comment
describing what it is, but have not yet implemented it.
Also note that most of the loadustp() functions where actually incomplete.
This has been corrected. These functions should probably be split up into
MMU-specific operations, and called indirectly, rather than doing constant
run-time decision making based on values that will never change during the
course of a boot's lifetime.
1998-01-05 23:16:21 +00:00
perry
3625dbcd48
RCSID Police.
1998-01-05 21:34:56 +00:00
perry
5646f55116
make script insert RCS ids into generated files
1998-01-05 21:28:21 +00:00
perry
086015d681
RCSID Police.
1998-01-05 21:13:51 +00:00
perry
e464358f5f
make script insert RCS ids into generated files
1998-01-05 21:12:34 +00:00
perry
49ad493e50
RCSID Police.
1998-01-05 21:11:15 +00:00
perry
489c2f7e06
make script insert RCS ids into generated files
1998-01-05 21:10:18 +00:00
perry
b46484bb8a
RCSID Police.
1998-01-05 20:51:25 +00:00
perry
24920eefb1
RCSID Police.
1998-01-05 19:40:40 +00:00
perry
736c62507d
regened with RCSIDs in place
1998-01-05 19:38:41 +00:00
perry
e6fe83471e
make script insert RCS ids into generated files
1998-01-05 19:37:08 +00:00
perry
5e35a0595e
regened with RCSIDs in place
1998-01-05 19:30:30 +00:00
perry
5e96ab4c0a
make script insert RCS ids into generated files
1998-01-05 19:28:16 +00:00
perry
c915c7718d
regened with RCSIDs in place
1998-01-05 19:25:06 +00:00
perry
127f6582ff
make script insert RCS ids into generated files
1998-01-05 19:24:28 +00:00
perry
1a80fd799d
RCSID Police.
1998-01-05 19:19:41 +00:00
perry
3a47434df3
regened with RCSIDs in place
1998-01-05 19:14:39 +00:00
perry
02e9346e57
fix RCS ids insertion so it really works
1998-01-05 19:13:04 +00:00
perry
9b0894473d
make script insert RCS ids into generated files
1998-01-05 18:45:02 +00:00
perry
36bd5a5407
regened with RCSIDs in place
1998-01-05 18:23:00 +00:00
perry
8309b37a61
ugh. escape rcs tags so that the script doesn't get messed up.
1998-01-05 18:19:35 +00:00
perry
4dc846816b
put RCS ids in the output files. Not essential, but useful.
1998-01-05 18:09:44 +00:00
perry
a69b5af889
regened with RCSID
1998-01-05 18:06:27 +00:00
perry
3c47900572
RCSID Police.
1998-01-05 17:51:27 +00:00
thorpej
e5e283e02d
Finishing merging 4.4BSD-Lite2 netinet. At this point, the only changes
...
left were SCCS IDs and Copyright dates.
1998-01-05 10:31:44 +00:00
lukem
1f8f74b669
enhance ephemeral port allocation code:
...
* support sysctl net.inet.ip.anonportmin (lowest ephemeral port)
and net.inet.ip.anonportmax (highest ephemeral port).
these can't be set to >65535, < IPPORT_RESERVED (unless IPNOPRIVPORTS
is defined), and anonportmin has to be < anonportmax.
* use a cleaner way of only cycling through the available set once;
this will be useful for when a random allocation scheme is used
* define IPPORT_ANON{MIN,MAX} instead of IPPORT_USER{LOW,HIGH}
1998-01-05 09:52:02 +00:00
thorpej
2e85747e9e
From 4.4BSD-Lite2 (noted by Frank van der Linden):
...
so_linger is used as an argument to tsleep(), so was stuffed with
clockticks for the TCP linger time. However, so_linger is set directly from
l_linger if the linger time is specified, and l_linger is seconds (although
this is not currently documented anywhere). Fix this to set the TCP
linger time in seconds, and multiply so_linger by hz when tsleep() is
called to actually perform the linger.
1998-01-05 09:12:29 +00:00
perry
fff05a68ab
RCSID Police.
1998-01-05 07:31:05 +00:00
perry
015e898c02
RCSID Police.
1998-01-05 07:02:46 +00:00
perry
3e0fad1868
RCSID Police.
1998-01-05 06:28:44 +00:00
thorpej
010625fefd
Implement access methods:
...
lists: LIST_FIRST(), LIST_NEXT()
simple queues: SIMPLEQ_FIRST(), SIMPLEQ_NEXT()
tail queues: TAILQ_FIRST(), TAILQ_NEXT()
circular queues: CIRCLEQ_FIRST(), CIRCLEQ_LAST(), CIRCLEQ_NEXT(),
CIRCLEQ_PREV()
1998-01-05 06:27:42 +00:00
thorpej
ce340c6ca5
Also pass fork1() a struct proc **, in case the caller wants a pointer
...
to the newly created process.
1998-01-05 05:16:26 +00:00
perry
d38a11e380
Fix imported RCS keyword slightly
1998-01-05 05:08:43 +00:00
perry
e13ab577cd
RCSID Police.
1998-01-05 05:05:49 +00:00
thorpej
5703397593
Initialize proc0's file descriptor table with fdinit1().
1998-01-05 04:52:48 +00:00
thorpej
6382d6dd79
Implement file descriptor table sharing. Partially from FreeBSD.
1998-01-05 04:51:15 +00:00
thorpej
fb74151eaf
Fix the stat(2) ABI problem noticed by Curt Sampson and Chris Demetriou.
...
The problem is that the timespec structures now how 7 32-bit values before
them, which causes them to be implicitly padded on the Alpha (because the
timespecs have an alignment of 64 bits). However, the alignment constraints
changed if _POSIX_SOURCE was defined (thus replacing the timespecs with
time_ts and longs). This had no effect on 32-bit architectures, but changed
the offsets of several stat structure members on the Alpha.
XXX The ABI has not changed; explicit padding is added in the _POSIX_SOURCE
XXX case, enabled by an #ifdef __alpha__. This should be changed if the
XXX stat(2) ABI is ever changed again (e.g. if we change time_t to 64 bits).
1998-01-05 02:23:43 +00:00
thorpej
341b8e9b49
Add fork statistics to vmmeter.
1998-01-04 03:53:35 +00:00
thorpej
871be215c8
Define flags passed to fork1(). Currently "block parent" and "share vmspace"
...
are defined.
1998-01-04 03:53:04 +00:00
thorpej
740f872797
New vfork(2) implementation, whith semantics matching those of the original
...
3BSD vfork(2), i.e. share address space w/ parent and block parent.
Keep statistics on the total number of forks, the number of forks that
block the parent, and the number of forks that share the address space
with the parent.
1998-01-04 03:52:02 +00:00
thorpej
43677af399
Regen: add __vfork14() at #282 .
1998-01-04 03:47:05 +00:00
thorpej
d36ffe9822
Add __vfork14() system call at #282 .
1998-01-04 03:45:21 +00:00
thorpej
5739c88a75
Implement address space sharing (by keeping ref counts on the vmspace
...
structure). Many thanks to Chuck Cranor for debugging assistence.
1998-01-03 02:53:00 +00:00
thorpej
e1f13c8c99
Change shmfork() and shmexit() prototypes (vmspace *'s, not proc *'s).
1998-01-03 02:51:32 +00:00
thorpej
36780f9243
Make shmexit() and shmfork() take struct vmspace *'s, not struct proc *'s,
...
and update internal interfaces appropriately.
1998-01-03 02:50:32 +00:00
thorpej
b1cf620cfe
Update for additional argument to vm_fork() ("shared" boolean).
1998-01-03 02:49:30 +00:00
thorpej
bb2d5987ff
Don't call shmexit() if the vmspace ref count is not 1. Update for new
...
argument to shmexit().
1998-01-03 02:48:43 +00:00
thorpej
b9f1b716f3
Now that all ports have pmap_activate(), and it has an identical interface,
...
prototype it in <vm/pmap.h>
1998-01-03 01:12:59 +00:00
thorpej
b73f9750f6
Don't allocate PTEs in cpu_fork(); they were allocated when the new
...
process's pmap was created. Instead, use pmap_activate() to load the
page {0,1} base and length registers into the PCB for the hardware's use.
1998-01-03 00:37:31 +00:00
thorpej
aa58d4ac6b
Adjust for the fact that the page {0,1} base and length registers are now
...
stored in the pmap structure.
1998-01-03 00:35:28 +00:00
thorpej
f267fe868d
- Adjust so that access to the PCB is not required in most pmap functions.
...
Store the page {0,1} base and length registers in the pmap structure,
and implement pmap_activate(), which stores them in the PCB (for the
hardware's use).
- Re-implement pmap_pinit(); allocate the PTEs here, not in cpu_fork().
1998-01-03 00:34:02 +00:00
thorpej
172a9381b6
- Remove the PCB pointer from the pmap structure. Instead, store the
...
page {0,1} base and length registers in the pmap structure. They will
be loaded in to the PCB when the process's address space is activated
by way of pmap_activate().
- Remove pmap_pinit() macro; it's now a real function.
- Prototypes for pmap_pinit(), pmap_activate(), pmap_deactivate().
1998-01-03 00:28:43 +00:00
thorpej
d8076f896b
Grab the PCB directly from the u-area, not by indirecting through VM
...
structures.
1998-01-03 00:23:53 +00:00
thorpej
9ca174a51d
Implement pmap_activate().
1998-01-02 22:57:56 +00:00
thorpej
a6f228e498
Make pmap_activate() take a struct proc *.
1998-01-02 22:36:33 +00:00
thorpej
c162e92a71
Implement pmap_activate().
1998-01-02 22:17:18 +00:00
thorpej
f39e44955b
Make pmap_activate() take a proc *.
1998-01-02 20:37:28 +00:00
thorpej
d14e18faa9
Make pmap_activate() take a proc *.
1998-01-02 20:10:26 +00:00
ragge
5680284286
Fix problem in copy*str() when not emulating locc.
1998-01-02 19:33:27 +00:00
thorpej
dd966fca05
Change an argument name to PMAP_ACTIVATE() to more accurately describe the
...
semantics of the argument.
1998-01-01 20:05:23 +00:00
thorpej
287b63b321
- Make pmap_activate() and pmap_deactivate() take a struct proc *.
...
- Define active_user_pmap() and use it in the appropriate places (from hp300
port).
1998-01-01 19:52:50 +00:00
mikel
733dae35bc
use ${SIZE} instead of "size" (somehow this one got missed)
1998-01-01 08:11:41 +00:00
enami
74a36a05ae
No longer needs to include sys/shm.h.
1998-01-01 02:43:18 +00:00
thorpej
8b5e0b6e06
Remove a couple of unneeded VM-related headers.
1997-12-31 19:32:55 +00:00
cjs
89951259ed
Add kernfs; remove more stuff we don't need.
1997-12-31 16:44:37 +00:00
thorpej
9c20093835
Make pmap_activate() and pmap_deactivate() take a struct proc *.
1997-12-31 10:12:55 +00:00