Commit Graph

31374 Commits

Author SHA1 Message Date
ad e6216650d8 Use unsigned integer to hold font bits in putchar(). [This looks like the
source of glyph corruption].
1999-07-25 17:36:40 +00:00
darrenr 8b165c84f7 don't log an error for ktrace if it's EPIPE - an error that should be
expected with fktrace/ktruss (i.e the error is `noise').
1999-07-25 13:59:08 +00:00
rh cfa2c0bd79 Remove superfluous NULL argument from proclist_lock_read() call. 1999-07-25 08:55:46 +00:00
thorpej 2fd5daf2d1 1.4H -- struct lock changed. 1999-07-25 06:39:53 +00:00
thorpej ea8fb3e04a Turn the proclist lock into a read/write spinlock. Update proclist locking
calls to reflect this.  Also, block statclock rather than softclock during
in the proclist locking functions, to address a problem reported on
current-users by Sean Doran.
1999-07-25 06:30:33 +00:00
thorpej 50f9f26fe1 Add a spin lock mode to the lock manager. Provides a read/write
spin lock facility.  Some code and ideas from Ross Harvey.
1999-07-25 06:24:22 +00:00
tron d5442d74c5 Fix NULL pointer access. Patch supplied by Dave Huang in PR kern/8055. 1999-07-24 15:10:02 +00:00
augustss 4047458551 More DIAGNOSTIC messages. 1999-07-24 01:40:19 +00:00
explorer 4cbf118032 add a SHARK.v6, so the shark specific kernel can get v6, too 1999-07-23 22:45:23 +00:00
itojun 42c5caafe7 do not include unnecessary include files. 1999-07-23 15:21:17 +00:00
thorpej 014078a731 Garbage collect. 1999-07-22 23:31:07 +00:00
thorpej 2860ae9b30 Add proclist locking where appropriate (forgot to commit this file previously). 1999-07-22 23:00:27 +00:00
thorpej 3f176180d5 Garbage collect thread_sleep()/thread_wakeup() left over from the old
Mach VM code.  Also nuke iprintf(), which was no longer used anywhere.

Add proclist locking where appropriate.
1999-07-22 22:58:38 +00:00
thorpej 2c668fb0d4 0 -> FALSE in a few places. 1999-07-22 21:27:32 +00:00
thorpej 40c08923a8 XXX LOCKING XXX of allproc; DDB runs with interrupts blocked, and MD
code should suspend other processors, so this probably isn't a problem,
but the comment is added anyhow.
1999-07-22 21:11:26 +00:00
thorpej 01a8cffe77 Add a read/write lock to the proclists and PID hash table. Use the
write lock when doing PID allocation, and during the process exit path.
Use a read lock every where else, including within schedcpu() (interrupt
context).  Note that holding the write lock implies blocking schedcpu()
from running (blocks softclock).

PID allocation is now MP-safe.

Note this actually fixes a bug on single processor systems that was probably
extremely difficult to tickle; it was possible that schedcpu() would run
off a bad pointer if the right clock interrupt happened to come in the
middle of a LIST_INSERT_HEAD() or LIST_REMOVE() to/from allproc.
1999-07-22 21:08:30 +00:00
hwr f6bf685b94 Regen. 1999-07-22 20:58:18 +00:00
hwr baf7e04902 Insert a space in New Media Corporation. Fixes kern/7817 by Lloyd Parkes. 1999-07-22 20:56:38 +00:00
thorpej e8485145c1 Rearrange some code slightly. 1999-07-22 18:28:30 +00:00
thorpej 2715b812d1 Rework the process exit path, in preparation for making process exit
and PID allocation MP-safe.  A new process state is added: SDEAD.  This
state indicates that a process is dead, but not yet a zombie (has not
yet been processed by the process reaper).

SDEAD processes exist on both the zombproc list (via p_list) and deadproc
(via p_hash; the proc has been removed from the pidhash earlier in the exit
path).  When the reaper deals with a process, it changes the state to
SZOMB, so that wait4 can process it.

Add a P_ZOMBIE() macro, which treats a proc in SZOMB or SDEAD as a zombie,
and update various parts of the kernel to reflect the new state.
1999-07-22 18:13:36 +00:00
thorpej 40d9e23179 Define the Volume Tag format. 1999-07-22 17:43:53 +00:00
itojun 86ef461e35 avoid u_long and hardcoded numbers. 1999-07-22 15:46:13 +00:00
itojun 7fee35f579 - implement IPv6 pmtud, which is necessary for TCP6.
- fix memory leak on SO_DEBUG over TCP.
1999-07-22 12:56:56 +00:00
augustss 9e89bd8c34 The configuration and interface locators are pointless for the generic
USB device.
1999-07-22 09:35:06 +00:00
leo 416221c95b Do the mesgbuf initialisation a bit earlier in the boot process. This
makes debugging the console somewhat easier.
1999-07-22 09:20:38 +00:00
itojun 76fc599a8d change unnecessary u_long/long into u_int32_t or something relevant.
more fixes should follow.
1999-07-22 03:59:42 +00:00
tron f808646713 Use wsmouse protocol for PS/2, Logitech bus and Microsoft InPort mice
by default. The X11 distribution included in our last release already
supports it and the wsmouse protocol can be used for any of the above
and for USB mice.
1999-07-21 20:28:45 +00:00
tsubai 07bc0e694d media-bay CD support. 1999-07-21 19:20:04 +00:00
ad a41907cbf8 - Style nits
- Kill some of the dainbramage in variable-depth copycols()
1999-07-21 19:19:03 +00:00
mrg f484530816 do not "quote" SAMISCMAKEFLAGS values, it causes pain and suffering. 1999-07-21 13:34:34 +00:00
briggs a33d38257c Declare struct pmap kernel_pmap_store extern. 1999-07-21 03:18:21 +00:00
oster 5cef006d40 Need to splbio()/splx() protect some of the reconstruction stuff.
Without this, we have potentially bad interatctions with the pool
code.
1999-07-21 03:15:26 +00:00
thorpej befbb301fd Use the lock manager to lock the GDT, rather than a non-MP-safe homegrown
method.
1999-07-20 23:07:12 +00:00
thorpej eff41cf3b1 Implement cpu_wait(), and move the call to tss_free() from switch_exit()
to cpu_wait(); tss_free() may block, and thus requires a valid context.
1999-07-20 22:25:18 +00:00
thorpej 32e1fd0d03 Move the call of cpu_wait() out of the wait4() functions, and into the
body of reaper(), right before the call to uvm_exit().  cpu_wait() must
be done before uvm_exit() because the resources it frees might be located
in the PCB.
1999-07-20 21:54:05 +00:00
drochner 963921febe regen 1999-07-20 20:59:03 +00:00
drochner 62adeef8f6 add TI TVP4020 Permedia 2 1999-07-20 20:58:20 +00:00
bouyer 29664a379a The options actually used are RASTERCONSOLE_{FG,BG}COL, not
RASTERCONS_{FG,BG}COL. defopt the rigth ones.
1999-07-20 18:05:15 +00:00
tsubai bfba58c1e1 grackle uses different I/O address. 1999-07-20 17:31:59 +00:00
dbj 15c0ebc780 fixed TAGS target for emacs style tags 1999-07-20 08:55:30 +00:00
christos 41cc9a0eb8 enable PPP_BSDCOMP, PPP_DEFLATE, PPP_FILTER, PFIL_HOOKS, IPFILTER_LOG
on the GENERIC kernels that had them commented out.
XXX: Please note, that not all the kernels have all the options defined!
1999-07-20 07:40:34 +00:00
simonb 988906cf52 Put tc_machdep.h back - the X server needs it to build. 1999-07-19 23:35:29 +00:00
thorpej 7f53187a85 From Bill Studenmund: unlock the fdescfs "/dev/tty" vnode before calling
cttyread()/cttywrite(), and lock it again when it returns.

Squashes the somewhat bizarre lossage I was observing w/ more(1), sudo(1),
etc.
1999-07-19 23:00:47 +00:00
cgd 4eb46531af make sure 'wide' fault handling is actually done only once per fault.
('narrow' was mistakenly set to FALSE instead of TRUE.)  Committed after
discussion with chuq.
1999-07-19 19:02:22 +00:00
itojun 869f140395 fix IPV6_CHECKSUM socket option (length computation was wrong). 1999-07-19 18:37:19 +00:00
thorpej 5310e69363 Fix PR #8023 from Bernd Ernesti: when MADV_FREE'ing a region which spanned
more than one VM map entry, a typo caused amap_unadd() to attempt to
remove anons from the wrong amap.  Fix that typo.
1999-07-19 17:45:23 +00:00
scottr ba0669d0b6 The Quadra 605 and LC 47x apparently share the same logic board,
and hence need the same video hack.  From Ken'ichi Ishizaka.
1999-07-19 05:20:15 +00:00
chs fce05250f9 more cleanup:
remove simplelockrecurse, lockpausetime and PAUSE():
none of these serve any purpose anymore.
in the LOCKDEBUG functions, expand the splhigh() region to
cover the entire function.  without this there can still be races.
1999-07-19 03:21:11 +00:00
chs 327e64d87b remove simplelockrecurse, it's no longer needed. 1999-07-19 03:17:42 +00:00
oster ce7cb7114d rf_UnconfigureVnodes() needs to be called in the DO_RAID_FAIL macro. 1999-07-19 01:36:07 +00:00
oster 0c7600ca4e sectorsPerStripeUnit should be larger than 0. If it isn't, simply fail.
(Thanks to Thor Lancelot Simon for noting the problem).
1999-07-19 01:35:19 +00:00
eeh 5e22318a8d More fun with pmap. 1999-07-18 23:55:57 +00:00
eeh c6a358d0a8 Lower spl for softints. 1999-07-18 23:54:20 +00:00
eeh 27bc6dd353 Switch to NetBSD/sparc ELF for 32-bit userland. 1999-07-18 23:52:58 +00:00
eeh 01474710ca Switch over to NetBSD/sparc ELF for 32-bit userland. 1999-07-18 23:51:08 +00:00
chs a8f10f9e37 allow uvm_km_alloc_poolpage1() to use kernel-reserve pages. 1999-07-18 22:55:30 +00:00
chs 47602880d7 KNF. 1999-07-18 21:33:20 +00:00
tsubai 035071b460 Add VM_MAX_KERNEL_BUF definition. 1999-07-18 17:54:19 +00:00
tsubai e9f1ccdcd1 Decrease default NKMEMCLUSTERS. (128MB -> 8MB) 1999-07-18 17:53:18 +00:00
abs 2ceba51630 Work with obj dirs (It seems that ${.CURDIR}/... is your friend).
If I _had_ to pick an arch on which to learn how this stuff works, it probably
would not have been vax... unless of course I was experimenting with time
compressing drugs.  If we have a 1.4.2, this is definitely a candidate.
1999-07-18 05:55:45 +00:00
thorpej 5ee6f3960d Rework uvm_map_protect():
- Fix some locking bugs; a couple of places would return an error condition
  without unlocking the map.
- Deal with maps marked WIREFUTURE; if making an entry VM_PROT_NONE ->
  anything else, and it is not already marked as wired, wire it.
1999-07-18 00:41:56 +00:00
jtk 92bf84ec68 implement emulation of SIOCGIFHWADDR, PR 7997 1999-07-17 22:03:55 +00:00
jtk c13299119a add LINUX_SIOCGIFHWADDR 1999-07-17 21:46:28 +00:00
thorpej b6f435026c Add a set of "lockflags", which can control the locking behavior
of some functions.  Use these flags in uvm_map_pageable() to determine
if the map is locked on entry (replaces an already present boolean_t
argument `islocked'), and if the function should return with the map
still locked.
1999-07-17 21:35:49 +00:00
itojun b479094c45 no need to include faith.h on non-IPv6 build, so wrap by #ifdef.
(dunno if it's better to always include it or not)
1999-07-17 12:53:05 +00:00
itojun c74f79d16f fix faith interface support. need testing.
(i understand this is a dirty hack, of course)
1999-07-17 07:07:08 +00:00
thorpej fcc55e7687 Garbage-collect uvm_km_get(); nothing actually uses it. 1999-07-17 06:41:36 +00:00
thorpej a448b59581 Implement uao_flush(). This is pretty much identical to the "amap flush"
code in uvm_map_clean().
1999-07-17 06:06:36 +00:00
wrstuden 976aedb7ac Adjust mountroot routines to vrele rootvp in case of mount error. Closes
PR 7977 by Neil Carson, <neil@brini.com>.
1999-07-17 01:08:28 +00:00
tron a868069601 Add a few more CPU models as suggested by Scott Telford in PR i386/7048. 1999-07-17 00:42:20 +00:00
wrstuden 2f1cf7a7f1 Oops. Got a little too agressive with changing 06->07. 1999-07-16 20:49:34 +00:00
ad fe6a4d8ffd Remove 'already the console' check, which will be handled by fballoc(),
fbattach() and fbconnect() shortly.
1999-07-16 14:23:47 +00:00
thorpej c581bf97c5 A few things to make the Linux clone(2) emulation work a bit better:
- When the exit signal is specified to be 0, don't just assume they
  meant SIGCHLD.  In the Linux world, this appears to mean "don't deliver
  an exit signal at all".
- Simplify P_EXITSIG(); don't check against initproc here, just change
  the exit signal to SIGCHLD if reparenting to initproc.

A very simple clone(2) test program now works, and the MpegTV package
starts, but doesn't run properly yet (I believe there is a separate
bug which keeps it from working properly).
1999-07-15 23:18:41 +00:00
wrstuden e4cffe98ac We're now at 1.4G due to changes in vnode flags. 1999-07-15 22:00:40 +00:00
wrstuden a0f2937049 Define VLAYER and make layered fs's set this flag when creating their vnodes.
getnewvnode now checks this bit, and it if's set makes sure a vnode's not
locked before removing it from the free list.

Closes PR 7954 by Alan Barrett <apb@iafrica.com>.
1999-07-15 21:30:31 +00:00
ross 5122ae5f44 Recognize 3c905C. 1999-07-15 18:10:29 +00:00
ross 4dae830922 Regen. 1999-07-15 18:06:39 +00:00
ross 4495d8362a product 3COM 3C905CTX 0x9200 1999-07-15 18:02:08 +00:00
drochner 7dab8cef61 fix logics in device recognition 1999-07-15 18:00:27 +00:00
augustss 50eef750e4 Regen. 1999-07-15 14:53:13 +00:00
augustss 8a5bb754c7 Add Cinemaster C 3.0 DVD Decoder. 1999-07-15 14:52:48 +00:00
sommerfeld 5d94c1dc69 Clarify that the empty string, not the string ANY, as the network name means
pick any access point
1999-07-15 14:31:52 +00:00
leo cf85212453 Make this compile again. 1999-07-15 10:46:58 +00:00
thorpej e314d1d844 Correct the sense of the PCR_FLINK100 bit. From Dave Sainty, PR #7832. 1999-07-14 23:57:36 +00:00
thorpej f9b0db3013 Fix a paste-o in procfs_lookup() introduced with the vnode locking changes.
Fixes PR #7961, Mario Kemper <magick@bundy.lip.owl.de>.
1999-07-14 23:52:22 +00:00
sommerfeld 48f2389776 Add shutdown hook to turn off card.
Fix BPF tap code.
1999-07-14 23:07:29 +00:00
fvdl 76b2d00f39 Regen. 1999-07-14 23:03:09 +00:00
fvdl a641b41593 Add/change a few Adaptec controller IDs. 1999-07-14 23:02:01 +00:00
itojun 685747d56c Use proper ip protocol # field and tcp hdr on sending RST against SYN,
when ip header and tcp header are not adjacent to each other
(i.e. when ip6 options are attached).

To test this, try
	telnet @::1@::1 port
toward a port without responding server.  Prior to the fix, the kernel will
generate broken RST packet.
1999-07-14 22:37:13 +00:00
tron 62af9404e6 Skip LUN check for all versions of the UMAX Astra 1220S as suggested
by Dan McMahill in PR kern/7991.
1999-07-14 22:34:18 +00:00
sommerfeld 5d33b8fc14 Install a header needed by userspace wiconfig program 1999-07-14 22:32:05 +00:00
sommerfeld 52faa3e2d7 Blitz port of the FreeBSD wi* driver for the Lucent WaveLan IEEE
PCMCIA wireless LAN.
Original driver written by Bill Paul <wpaul@ctr.columbia.edu>
1999-07-14 22:24:07 +00:00
sommerfeld 313081da93 Add a few 802.11 cards 1999-07-14 22:13:27 +00:00
drochner 46f90cb053 make sending of keepalive messages work again:
-remove bogus sanity check involving an uninitialized variable
-correct mbuf cluster allocation
-(non-critical) remove redundant check in cleanup after error
1999-07-14 22:08:52 +00:00
thorpej 8e06a75bcb Fix an operator precedence error which caused msync(2) to fail to pass
the PGO_CLEANIT flag to the object pagers.  Fixes PR #7978, from
Matthias Pfaller.
1999-07-14 21:06:30 +00:00
augustss 021319d9b3 Avoid crashing if we are forced to close() before teh open() completed
(can happen on disconnect, probably due do dubious logic in vdevgone()).
1999-07-14 19:12:07 +00:00
drochner 8137f06eac recognize SIS 85C503 as PCI-ISA bridge, from Gregory McGarry per PR
port-i386/7972
1999-07-14 09:18:20 +00:00
scw 801242dfdc From patch supplied in PR-7951 by Joachim Kuebart:
Add support for Microsoft Joliet long filename extensions to the
cd9660 filesystem.
1999-07-13 11:12:05 +00:00
thorpej 5fdbf26214 Regen. 1999-07-12 23:01:47 +00:00
thorpej bee019244f Remove two lines that were apparently added by accident. 1999-07-12 23:01:27 +00:00
kleink dfa5aad003 Regen. 1999-07-12 22:04:00 +00:00
kleink e79a283e47 XSH5: change function signature to `void *sbrk(intptr_t)'. 1999-07-12 21:55:19 +00:00
kleink 07a43a7c2e Also make available <sys/inttypes.h>. 1999-07-12 20:55:32 +00:00
ragge e859716a79 Unused in MI code. 1999-07-12 19:47:40 +00:00
thorpej c08800739a Back out previous. I was getting bitten by a bug in make(1), which is
now fixed.
1999-07-12 18:15:09 +00:00
tsubai 4aec314394 Add PowerBook LCD brightness and speaker volume button device.
Only brightness works for now.
1999-07-12 17:48:26 +00:00
wrstuden b7f5310486 Fix tyop pointed out by Chuck Silvers <chuq@chuq.com>. 1999-07-12 16:37:03 +00:00
tsubai b7fc95a188 Add read/set LCD brightness and eject PCMCIA card function. 1999-07-12 15:54:55 +00:00
kleink a963797502 Add eso(4) and the devices attached to it. 1999-07-12 15:16:23 +00:00
kleink cf917747a1 Add a driver for the ESS Technology Solo-1 PCI AudioDrive line of chips. 1999-07-12 15:13:30 +00:00
kleink 7d8abaa49e Regen. 1999-07-12 15:04:41 +00:00
bouyer fdb68cb866 Needs cpu.h for netisr (compile breaks on sun3). 1999-07-12 15:03:26 +00:00
kleink ecbc7c6afd Change the ESS Solo-1 description string to match the data sheet. 1999-07-12 15:02:46 +00:00
bouyer 0612a1ddef Fix typo in a printf, from Soren S. Jorvan. 1999-07-12 13:49:38 +00:00
ragge 497378ce6d Copied from ../../arch/vax/bi/uba_bi.c,v 1999-07-12 13:43:40 +00:00
ragge af86c7da93 Copied from ../../arch/vax/bi/kdbreg.h,v 1999-07-12 13:43:24 +00:00
ragge f5e891549d Copied from ../../arch/vax/bi/kdb.c,v 1999-07-12 13:43:11 +00:00
ragge fa113488d5 Copied from ../../arch/vax/bi/bivar.h,v 1999-07-12 13:42:55 +00:00
ragge 3b01a5972f Copied from ../../arch/vax/bi/bireg.h,v 1999-07-12 13:42:42 +00:00
ragge f6e8b1b918 Copied from ../../arch/vax/bi/bi.c,v 1999-07-12 13:42:24 +00:00
drochner 756fbc1ee8 fix damage in error handling crept in in 1.4 1999-07-12 12:34:57 +00:00
ross 4d11d63612 Fix off-by-one comparison. 1999-07-12 07:37:14 +00:00
augustss 361422bc96 Apply some bulk transfer bug fixes from FreeBSD. 1999-07-12 05:22:50 +00:00
ross a8000e244c New signature for console_restart(). 1999-07-11 22:39:21 +00:00
ross 0f9e004fe3 Rewrite of console_restart() with constructed trapframe.
Extract various state elements from the per-cpu-slot in hwrpb.
1999-07-11 22:37:12 +00:00
ross f9e083d969 * Set up a trapframe before calling console_restart(), and just pass it the
frame instead of a selection from the saved state.
* new macros:   bfalse reg, dst		/* "beq" */
		btrue reg, dst		/* "bne" */
1999-07-11 22:35:28 +00:00
ross 6eb6441a68 * Big rototill: cleanup, reorganize, redo some things...
* New features:
	+ traceback for threads (i.e., pids):  db>trace/t 0t<pid>
	+ traceback over console restart (halt and SRM continue)
	+ print ipl in trapframes when it's known and it changed
	+ print emulation and system call entry name (!) if proc is known
	   --- syscall (240, netbsd.sys_nanosleep) ---
1999-07-11 22:28:15 +00:00
thorpej 74b592231c Only include opt_*.h if we're building a kernel. 1999-07-11 21:28:08 +00:00
tsubai a9cb7eabb2 One more pmap_extract() fix. 1999-07-11 17:47:21 +00:00
thorpej ff05773b4a Back out the change I made yesterday. It seems to cause some trouble
for some folks.
1999-07-11 17:47:12 +00:00
itojun 4502752019 fix compilation/runtime problem on alpha.
PR: 7952, 7953
From: Dave Huang <khym@bga.com>
1999-07-11 17:45:11 +00:00
tsubai 183ef12cd5 Adapt pmap_extract() change. 1999-07-11 17:44:08 +00:00
tsubai a192e5bd20 Enable soft poweroff on PowerBook. 1999-07-11 16:59:31 +00:00
tsubai f2d2ad6b17 Cleanup. 1999-07-11 12:44:04 +00:00
sommerfeld c4fe7934c5 Fix kern/7944: getcwd permission checking was overly restrictive.
(Don't require start directory to have read permission).
1999-07-11 09:27:23 +00:00
kim 0dc60ae78c Build bootblocks to always use COM0 for console. 1999-07-11 01:23:53 +00:00
kim f93a90f888 Use same Makefile for biosboot_com0 too. 1999-07-11 01:22:45 +00:00
bad 54b747eb16 In pcmcia_pars_cis_tuple(): in the PCMCIA_TPCE_FS_MEMSPACE_TABLE case
there is one more memspace in the table then the PCMCIA_TPCE_MS_COUNT
mask produces.
1999-07-11 00:34:37 +00:00
bad c95ed3d2e5 In pcmcia_print_cis(): When printing io and mem spaces don't append trailing
0s if length or hostaddr are zero, instead DTRT.
1999-07-11 00:26:29 +00:00
christos 0c2a15c04a we don't need no-fpu; anyway this has been renamed in new version of egcs 1999-07-10 22:18:34 +00:00
ragge 73d339e9e8 Rewrite the page table entry routines. Don't take a pte invalid fault for
missing pte's, instead map in pte entries in pmap_enter(). The user ptes
is no more handled by the VM system. All this made swapping start working
on VAX again.
Still to do:
- Keep refcount per pte page, so that those pages get free'd when the
  process is swapped out. Right now they are only free'd when the pmap
  is destroyed.

Many thanks to Chuck Silvers for all help finding the deadlock problems.
1999-07-10 22:04:59 +00:00
ragge e2a9d46897 After swapin of a process, restore the red zone in kernel stack at the
correct place.
1999-07-10 21:55:17 +00:00
thorpej a0555db3e0 Simplify uvm_fault_unwire_locked() a little. 1999-07-10 21:46:56 +00:00
thorpej c0389be5da Make a comment reflect reality. 1999-07-10 20:40:23 +00:00
thorpej d75fb0f6b0 Slightly better test for "object with no real pages". Test for NULL
pgo_releasepg rather than if the pager is the device pager.
1999-07-10 20:29:24 +00:00
thorpej 011b02e348 Clean up some printfs(), and mark a few for possible later nuking,
since they appear to be for debugging purposes only.
1999-07-10 19:46:10 +00:00
kleink 2422638ad5 Fix a buglet in the driver's DMA buffer list ipmlementation, causing the next-
in-list (wrong) descriptor structure of the buffer in question to be freed.
1999-07-10 16:46:19 +00:00
thorpej 267920eb1a defopt INET6, and put it in opt_inet.h (most places already include this
file, which is why the file list is so short).
1999-07-09 23:41:16 +00:00
thorpej f9a7668b3f defopt IPSEC and IPSEC_ESP (both into opt_ipsec.h). 1999-07-09 22:57:15 +00:00
itojun f7bf9de42a remove duplicated "files.crypto-intl" inclusion. 1999-07-09 20:14:26 +00:00
thorpej 72e0621cc8 Fix a typo. 1999-07-09 19:43:40 +00:00
thorpej 0945bf58b0 Add examples for including the kernel crypto bits from either crypto-us
or crypto-intl, commented out, with instructions to use only one, and
adjust the prefix as necessary.
1999-07-09 18:55:33 +00:00
mrg ecdad0ec33 clean up a bit after jason :)
- fix emitrules() like emitfiles() to deal with the prefix (otherwise it
  would attempt to find the file in the normal base for the NORMAL_C rule).
- add emitincludes() which adds include directives for each prefix to the
  $INCLUDES variable in the makefile.
- add %INCLUDES to each Makefile.arch to deal with the above.

this makes "prefix" actually work in a usable manner, and now i can move
on to fixing compiler warnings (errors) in the ESP code. :)
1999-07-09 09:52:55 +00:00
thorpej d3568efde2 Remove the IPSec ESP related file specs from here; they're now handled
in config spec fragments in the various crypto trees.
1999-07-09 06:51:47 +00:00
thorpej b2781586c4 Normalize include paths. 1999-07-09 02:32:28 +00:00
thorpej b0ea1d45ec Fix a type problem. 1999-07-08 23:44:57 +00:00
wrstuden 5e77d9fec1 Teach nfs_lookup to clear PDIRUNLOCK. 1999-07-08 22:53:08 +00:00
thorpej 34a0f20633 Fix typo in previous. 1999-07-08 21:14:26 +00:00
thorpej 120a156ee4 Fix typos in previous. 1999-07-08 21:10:12 +00:00
thorpej faa6862b38 NetBSD 1.4F; pmap_extract() API changed. 1999-07-08 18:12:14 +00:00
thorpej 3ebbe095e0 Change the pmap_extract() interface to:
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
drochner 6211cd566c fix creation of DOS / ROM images from ELF executables: use "objcopy" 1999-07-08 14:32:28 +00:00
bouyer e5d15c0dc6 Add another CD to the quirk table. 1999-07-08 14:24:42 +00:00
tsubai 1f5ca17f49 Add one more bootdev check. 1999-07-08 12:28:06 +00:00
tsubai ceed81ce5f Forgot to add this... 1999-07-08 12:13:18 +00:00
tsubai fcd9edb548 Don't make ECOFF kernel. 1999-07-08 11:53:35 +00:00
tsubai 7f688e8252 Add stand to SUBDIR. 1999-07-08 11:48:47 +00:00
tsubai 95faaaec9d Add NetBSD/newsmips native boot loader. 1999-07-08 11:48:03 +00:00
tsubai e1ef4ddcb5 Define ROM monitor interfaces. 1999-07-08 11:40:24 +00:00
wrstuden f8ea65369c Make nullfs's lkm right. 1999-07-08 01:51:57 +00:00
wrstuden aae49442c3 We're 1.4E now. 1999-07-08 01:28:32 +00:00
wrstuden 9fc36d6807 Bump osrelease to 1.4E. Add layerfs files, remove null_subr.c.
Update coda to new struct lock in struct vnode.

make fdescfs, kernfs, portalfs, and procfs actually lock their vnodes.
It's not that hard.

Make unionfs set v_vnlock = NULL so any overlayed fs will call its
VOP_LOCK.
1999-07-08 01:26:21 +00:00
wrstuden 9866514df5 Introduce layer library in genfs. This set of files abstracts most of
the functionality of nullfs. The latter is now just a mount & unmount
routine, and a few tables. umapfs borrow most of this infrastructure.

Both fs's are now nfs-exportable.

All layered fs's share a common format to private mount & private
vnode structs (which a particular fs can extend).

Also add genfs_noerr_rele(), a vnode op which will vrele/vput
operand vnodes appropriately.
1999-07-08 01:18:59 +00:00
wrstuden 379a26972f Modify file systems to deal with struct lock in struct vnode. All leaf
fs's other than nfs use genfs_lock() for locking.

Modify lookup routines to set PDIRUNLOCK when they unlock the parrent.
1999-07-08 01:05:58 +00:00
thorpej 6885fbe3d1 Teeny bit of style policing. 1999-07-08 01:02:44 +00:00
thorpej ec74ea9486 Correct a comment. 1999-07-08 00:52:45 +00:00
oster 324c76b3d9 Once upon a time, long long ago, there was a "fix" added to the
RAIDframe driver to stop it from eating too much kernel memory when
writing data.  But that fix had a nasty side-affect of hurting write
performance (*much* more than I thought it would).  These changes nuke
that "fix", and instead put in a more reasonable mechanism for limiting
the number of simultaneous IO's which can be happening for each RAID device.
The result is a noticeable improvement in write throughput.  The End.
1999-07-08 00:45:23 +00:00
wrstuden 332bef3064 Regen to reflect WILLPUT & WILLUNLOCK syntax. 1999-07-07 23:33:50 +00:00
wrstuden 99a1c75bcb Update syntax to support WILLUNLOCK and WILLPUT syntax. Change calls which
really vput to indicate that rather than just WILLRELE.
1999-07-07 23:32:50 +00:00
wrstuden e808c37d88 Add struct lock to struct vnode as first step in having vnodes export a
struct lock. Will permit layered fs's to share locks with underlying
vnodes.

Also reduce the max # of vnodes passable in a VOP from 16 to 8. As the
most we pass is 4, this shoudn't be a problem. In addition to WILLRELE
flags, add WILLUNLOCK flags to indicate that the VOP will unlock the
vnode. Add WILLPUT flags (WILLUNLOCK | WILLRELE) to indicate that the
vop will vput the passed-in vnode.
1999-07-07 23:30:03 +00:00
wrstuden 773654d7dc Add PDIRUNLOCKED which will be set by a leaf fs when it returns an error
and has unlocked the parrent vnode. Should only actually be returned if
the fs needs to unlock the parrent and has difficulty re-locking the
parrent. Needed so that layered fs's can keep track of locking.
1999-07-07 22:58:45 +00:00
thorpej 4ef1f3670d Fix a thinko which could cause a NULL pointer deref, in the PGO_FREE
case.
1999-07-07 21:51:35 +00:00
drochner c867601f9f mount diskless root with "NFSMNT_NOCONN" (which is default in "mount_nfs"
for quite a while) to allow certain servers (multihomed, as our DEC NSE
cluster) to be used as root filesystem without special tweaks
1999-07-07 21:29:29 +00:00
thorpej 62dcdc109b In the PGO_FREE case of uvm_map_clean()'s amap cleaning, skip wired
pages.

XXX This should be handled better in the future, probably by marking the
XXX page as released, and making uvm_pageunwire() free the page when
XXX the wire count on a released page reaches zero.
1999-07-07 21:04:22 +00:00
ws 974de8f7f8 Handle misalignment in vmcmd_map_readvn and vmcmd_map_zero correctly. 1999-07-07 20:23:45 +00:00
thorpej 4e398a6ded Add some more meat to madvise(2):
* Implement MADV_DONTNEED: deactivate pages in the specified range,
  semantics similar to Solaris's MADV_DONTNEED.
* Add MADV_FREE: free pages and swap resources associated with the
  specified range, causing the range to be reloaded from backing
  store (vnodes) or zero-fill (anonymous), semantics like FreeBSD's
  MADV_FREE and like Digital UNIX's MADV_DONTNEED (isn't it SO GREAT
  that madvise(2) isn't standardized!?)

As part of this, move the non-map-modifying advice handling out of
uvm_map_advise(), and into sys_madvise().

As another part, implement general amap cleaning in uvm_map_clean(), and
change uvm_map_clean() to only push dirty pages to disk if PGO_CLEANIT
is set in its flags (and update sys___msync13() accordingly).  XXX Add
a patchable global "amap_clean_works", defaulting to 1, which can disable
the amap cleaning code, just in case problems are unearthed; this gives
a developer/user a quick way to recover and send a bug report (e.g. boot
into DDB and change the value).

XXX Still need to implement a real uao_flush().

XXX Need to update the manual page.

With these changes, rebuilding libc will automatically cause the new
malloc(3) to use MADV_FREE to actually release pages and swap resources
when it decides that can be done.
1999-07-07 06:02:21 +00:00
thorpej ad1a5ef5cf Add a macro to modify flags in a VM map, which handles the locking
for you.
1999-07-07 05:33:33 +00:00
thorpej f631c1adae Update a comment in uao_flush(). 1999-07-07 05:32:26 +00:00
thorpej 121fe0bc26 Don't bother returning the "slot" number from amap_add():
* Nothing currently uses this return value.
* It's arguably an abstraction violation.

Fix amap_unadd()'s API to be consistent w/ amap_add()'s: rather than
take a vm_amap * and a slot number, take a vm_aref * and an offset.

It's now actually possible to use amap_unadd() to remove an anon from
an amap.
1999-07-07 05:31:40 +00:00
danw 9d4f4eebdb reorder the fp_rnd constants to match the values used by the
powerpc fpu
1999-07-07 01:52:26 +00:00
thorpej c4d8d19db9 pseudo-device -> defpseudo, per grammar change in config(8). 1999-07-07 00:05:28 +00:00
thorpej 5f1ede624f Make the kthread API a bit friendlier to loadable kernel modules. 1999-07-06 21:51:22 +00:00
thorpej 7b3258b6a7 Make the kthread API a bit more friendly to loadable kernel modules. 1999-07-06 21:44:09 +00:00
drochner 2df8761fac for incoming broadcasts, strip IP/UDP header correctly
wrap a line
1999-07-06 14:37:47 +00:00
christos 2f1646ea98 Remove -DDEBUG 1999-07-06 14:37:05 +00:00
itojun dcc13cdd33 sync with KAME/NetBSD 1.4, SNAP kit 19990705.
key changes are:
- icmp6 redirect fix (dst check)
- revised ip6 multicast check for loopback i/f
- several RCS ID cleanups
1999-07-06 12:23:19 +00:00
itojun 6ea6ccf105 checked build on alpha and i386, with GENERIC.v6.
fixed several sizeof(void *) and sizeof(size_t) issues on alpha.

Thanks to: Dave Huang and Tim Rightnour
1999-07-06 08:55:56 +00:00
augustss 7875415701 Add the detach and activate entry points to the cfattach struct. 1999-07-06 07:42:23 +00:00
augustss 319c42848d Add some sanity checks. 1999-07-06 07:12:03 +00:00
mjacob c9d36d5b4c add in (controlled by option) 2200 Expanded Lun F/W 1999-07-06 05:43:51 +00:00
itojun f3c72d8503 fix IPSEC (but not INET6) build.
PR: 7921, 7922, 7924
From: rafal@mediaone.net
1999-07-06 05:09:22 +00:00
cgd c1b7b40399 from the comment added to the code:
> XXX (in)sanity check.  We don't do proper datasize checking
> XXX for anonymous (or private writable) mmap().  However,
> XXX know that if we're trying to allocate more than the amount
> XXX remaining under our current data size limit, _that_ should
> XXX be disallowed.
This is one link on the chain of lossage known as PR#7897.  It's
definitely not the right fix, but it's better than nothing.
1999-07-06 02:31:05 +00:00
cgd 5cc6a54251 fix allocation handling bugs in amap_alloc1(). if the first or second
sub-structure malloc() failed, it was quite likely that the function
would return success incorrectly.  This is this direct cause of the bug
reported in PR#7897.  (Thanks to chs for helping to track it down.)
1999-07-06 02:15:53 +00:00
fvdl a32341998c Add COMPAT_AOUT to GENERIC 1999-07-05 22:40:34 +00:00
mjacob 8fc3744ddd Upgrade 2100 F/W and add 2200 f/w. 1999-07-05 20:33:58 +00:00
mjacob f428cf36fa Change to approved NASA/Ames copyright. Add Fabric support. Fix SCCLUN support.
Add code that tries to track LoopID shifting.
1999-07-05 20:31:35 +00:00
mjacob 3bb408eb05 Change to approved NASA/Ames copyright. Add in Qlogic 2200 support. 1999-07-05 20:28:11 +00:00
mjacob fb44b37fd0 add some default options for the ISP (for fabric/scclun eanbles) 1999-07-05 11:38:35 +00:00
fvdl b82e1a8b93 EXEC_ELF32 is standard now. 1999-07-05 09:14:09 +00:00
cjs 5108aad9a8 ntohl() doesn't return long, so cast it. 1999-07-05 08:15:39 +00:00
darrenr a47ffec442 Call icmp_error() at the bottom of rip_input IFF rip_input is the handler
for the protocol in the specified packet.
Fix statistic gathering to not make bogus increments of ips_delivered and
ips_noproto for cases where rip_input() is called by a protocol handler
(such as icmp_input or igmp_input) which has already processed the packet.
1999-07-05 07:24:38 +00:00
sommerfeld 140b1ee075 Housecleaning time:
Fix and document naming convention for vnode variables (always use
lvp/lvpp and uvp/uvpp instead of a hash of cvp, vpp, dvpp, pvp, pvpp).

Delete old stale #if 0'ed code at the end.

Change error path code in getcwd_getcache() slightly (merge common
cleanup code; shouldn't affect behavior any).
1999-07-04 20:16:57 +00:00
sommerfeld c1ecf66965 kern/5591: Fix race in the NFS socket code during umount -f and system
shutdown:

During an unmount, wake up all the processes which are waiting to lock
the socket for receive, and wait for them (and the process blocked in
soreceive, if any) to go away before blowing away the socket and the
mount structure.
1999-07-04 19:56:00 +00:00
sommerfeld e303e2ee8b Fix kern/7906: race between unmount and getnewvnode()
mp->mnt_flags & MNT_MWAIT is replaced by mp->mnt_wcnt, and a new mount
flag MNT_GONE is created (reusing the same bit).

In insmntque(), add DIAGNOSTIC check to fail if the filesystem vnode
is being moved to is in the process of being unmounted.

getnewvnode() now protects the list of vnodes active on mp with
vfs_busy()/vfs_unbusy().

To avoid generating spurious errors during a doomed unmount, change
the "wait for unmount to finish" protocol between dounmount() and
vfs_busy().  In vfs_busy(), instead of only sleeping once, sleep until
either MNT_UNMOUNT is clear or MNT_GONE is set; also, maintain a count
of waiters in mp->mnt_wcnt so that dounmount() knows when it's safe to
free mp.

tested by running a "while :; do mount /d1; umount -f /d1; done" loop
against multiple find(1) processes.
1999-07-04 16:20:12 +00:00
chs eb770c7b7c add "trace/t <pid>". 1999-07-04 06:45:26 +00:00
sommerfeld 6f57fc7820 fix typo in previous 1999-07-04 06:17:52 +00:00
sommerfeld c7e5c39191 Don't permanently lose the async bit on an failed unmount 1999-07-04 06:16:29 +00:00
minoura 15a60b5359 Enable mboot. 1999-07-04 04:39:12 +00:00
minoura 208ba460f2 SCSI primary boot program and its installer. 1999-07-04 04:38:54 +00:00
itojun 9b74747370 s/splnet/splsoftnet/ in IPv6/IPsec part.
hope I made no mistake (the kernel works fine but I need a regress test)

Suggested by: thorpej
1999-07-04 02:01:15 +00:00
thorpej cd3a345ea0 RCS ID police. 1999-07-03 21:24:45 +00:00
kleink 1821bd1d5d Bump f_flag to a full int in order to provide sufficient space to hold all
currently defined flag bits; thanks go to Bill Studenmund for noticing this.
1999-07-03 20:04:10 +00:00
thorpej c7855f5009 Nuke unneeded include file. 1999-07-03 18:40:32 +00:00
kleink dd24133620 Take a stab at namespace protection. For now, only the obvious problems are
addressed, the culprit being the lack of a namespace definition for an IPv6-
extended <netinet/in.h> in XNS5.2 D2.0; I'll try to work something out and
submit it to the review WG.
1999-07-03 14:04:57 +00:00
kleink 92bd36d9a9 Add namespace protection, using XNS5.2 D2.0 as a reference (which effectively
boils down to not making anything but the if_nameindex(3) interfaces available
to _XOPEN_SOURCE).
1999-07-03 13:52:29 +00:00
kleink b9c8b2a151 Modify the previous change to:
* not declare struct sockaddr_storage in pre-XNS5.2 D2.0 environments, and
* not use __{BEGIN,END}_DECLS in a _KERNEL environment, which is not necessary.
1999-07-03 13:37:34 +00:00
tron d2b6a2c28b Optical cleanup in WSCONS configuration section. 1999-07-03 12:09:52 +00:00
dbj fdba65aa8c renamed splscc to splserial to match spl(9) man page
changed most of the spl* to use _splraise to match current usage
this fixes an observed bug where zstty_attach was calling splzs causing
interrupts to be turned on prematurely.
1999-07-03 08:22:53 +00:00
cgd 636e8f4688 'Dolphin' -> 'Dolphin Peripherals' where appropriate 1999-07-03 05:55:23 +00:00
cgd 111e8a47c4 Add support for 36 more SIIG PCI serial/parallel cards (for a total of 37).
This means that all SIIG PCI serial/parallel cards (described on their
web site as "I/O boards" as of July 2, 1999) should now be supported.
1999-07-03 05:38:05 +00:00
lukem bd99d900df spell Association correctly 1999-07-03 04:45:53 +00:00
thorpej 3c83723113 Bring in additional uvmexp members from chs-ubc2, so that VM stats can
be read no matter which kernel you're running.
1999-07-02 23:20:58 +00:00
fvdl e3fa5cc725 Fix for -Wunitialized warnings broke compiles without INET6, refix. 1999-07-02 21:02:05 +00:00
tv 80c284f9bb -Wuninitialized is not used in the NetBSD tree, explicitly. 1999-07-02 20:55:19 +00:00
itojun 144233e2d4 align a bit better. 1999-07-02 19:59:09 +00:00
itojun e208c5c64a enable IPSEC_ESP build (still needs manual symlink).
commit to cryptosrc-intl will follow.
1999-07-02 19:58:27 +00:00
itojun af58d5709d try to get a non-conflicting port # when bind(2) to port number 0
is called.
1999-07-02 19:57:05 +00:00
sakamoto 0ef2d3f6e2 MD defines for the MI loadfile. 1999-07-02 15:36:51 +00:00
sakamoto f789d4809c Fix arg of delay. int -> unsigned int 1999-07-02 15:33:36 +00:00
itojun 4b961b81e3 avoid "variable not initialized" warnings on some of the platforms. 1999-07-02 12:45:32 +00:00
itojun 243585320c expand insque/remque (quick hack). fundamental fix should be done
while clarifying relationship between inpcb and in6pcb.

PR: 7891
1999-07-02 12:43:42 +00:00
itojun f8346292af move ipsec sysctl index to IPPROTO_AH (instead of IPPROTO_ESP),
so that you can perform sysctl operation when ESP is not compiled in.
1999-07-02 08:46:47 +00:00
itojun 932ab72aee remove TIME_WAIT issue, it was false. 1999-07-02 07:36:33 +00:00
itojun 8ebf9f7039 add tcp6 port # oddity.
add splnet/splsoftnet issue.
1999-07-02 07:16:29 +00:00
thorpej 8328f07bda Fix printf format on LP64. 1999-07-01 22:47:56 +00:00
thorpej 14a2fa8169 Fix IPv6 software interrupt vector label. 1999-07-01 22:03:38 +00:00
thorpej 30f651d5b0 Const poison local printf prototype. 1999-07-01 20:46:42 +00:00
is 136b788b3d Better align memory segment table. 1999-07-01 20:14:42 +00:00
thorpej 43e7ebad4c Const poison local printf() prototype. 1999-07-01 20:11:39 +00:00
itojun afb0d8e6e1 less warning on userland compilation. 1999-07-01 20:10:27 +00:00