Commit Graph

31287 Commits

Author SHA1 Message Date
thorpej
8548b384f5 Add some Initio SCSI controller IDs. 1999-07-29 20:56:55 +00:00
augustss
f641c4b3b6 Make two wsmux pseudo devices and add mux locators. 1999-07-29 19:36:58 +00:00
augustss
3652732791 Add wsmux device.
(Also add lots of missing chrtoblktbl[] entries.)
1999-07-29 19:14:35 +00:00
augustss
265b6769d5 Add mux locator to wsmouse and wskbd. 1999-07-29 18:25:53 +00:00
augustss
3d3f77c49e Add the wsmux pseudo device. 1999-07-29 18:20:02 +00:00
thorpej
d7f9efdafc In nfs_create(), make sure error is reset to 0 if we restart the operation. 1999-07-29 17:01:21 +00:00
sommerfeld
3267e5e87d Probable fix for PR7943: lookups fail spuriously over NFS.
The problem was due to an interaction between the doomed unmounts done by
amd and getnewvnode.
I convinced myself that it's ok for getnewvnode() to do a sleeping vfs_busy().

Tested with multiple builds running while another process attempted to unmount
/usr once a second.
1999-07-29 13:31:45 +00:00
augustss
a7cd454b1d It's time to be COMPAT_14. 1999-07-29 10:37:12 +00:00
bouyer
a81c366fed Bump MAX_START to 256, so that the ncr driver can work with more than 5
devices on the same bus. See PR kern/6347 for details.
1999-07-29 10:00:34 +00:00
itohy
5d4686cb63 Fix typo in comment. 1999-07-29 08:19:55 +00:00
jdolecek
053ce167b6 ntfs_statfs(): correct previous: only use mp->mnt_op->vfs_name on NetBSD,
FreeBSD does it differently
1999-07-29 07:55:23 +00:00
thorpej
0f0a99bb48 Make sure that pmap == pmap_kernel() when skipping pager mappings. 1999-07-28 23:23:46 +00:00
soren
7220690fb8 Regen. 1999-07-28 22:38:00 +00:00
soren
4341d92cb3 Correct Acard device names.
Add and update a few IBM devices.
Add Toshiba and NEC devices in Portege 3K's.
1999-07-28 22:36:10 +00:00
jdolecek
251052b682 ntfs_statfs(): don't forget to copy the fs name into struct statfs buffer
on NetBSD
ntfs_vgetex(): make compilable with NTFS_DEBUG defined (should be ok
	for both Free&NetBSD)
1999-07-28 20:42:54 +00:00
jdolecek
6ec5efc535 ntfs_strategy(): make compilable with NTFS_DEBUG 1999-07-28 20:36:46 +00:00
thorpej
cb41412726 Fix a thinko in draining of spin locks: bump waitcount in the spin case,
too.  Remove some needless code duplication by adding a "drain" argument
to the ACQUIRE() macro (compiler can [and does] optimize the constant
conditional).
1999-07-28 19:29:39 +00:00
ad
3d71693ea7 In fbconnect(), append ' (console)' to printed message if called for
the console framebuffer at attach time.
1999-07-28 17:13:54 +00:00
drochner
36e00c28de fix the previous fix 1999-07-28 10:03:02 +00:00
drochner
b513c9a6ad update comments for mi VME 1999-07-28 09:48:36 +00:00
drochner
6922e1976e adapt to mi VME attachment (sorry for being late) 1999-07-28 09:45:08 +00:00
drochner
f6fddabf3f back out previous - there is really a "vmebus" attribute 1999-07-28 09:39:48 +00:00
thorpej
51d09124f9 Fix another locking error: if freeing a PV entry, don't attempt to
free a PV page if the PV entry was associated with the kernel pmap,
since the kernel pmap is locked, and freeing the page will execute
a code path which will attempt to lock it again, resulting in deadlock.
No real loss, since the next time a PV entry is freed, the page will
be freed, too.
1999-07-28 06:54:41 +00:00
christos
fb4ecab492 make these compile again s/#endif/#else/
again, it is impossible for me to make sure that they work.
1999-07-28 06:35:06 +00:00
is
b0cd4e82f1 regenerate: no gvpbus on DRACO 1999-07-28 05:56:07 +00:00
is
d2cd47b6b2 no gvpbus on DRACO 1999-07-28 05:55:19 +00:00
christos
223cc34183 make the vme stuff compile again; I am not sure this is correct as I don't
have the hardware to test, but it has been broken for 3+ weeks now. Hi
Mr. Drochner!
1999-07-28 05:45:50 +00:00
thorpej
eced87ad87 Fix a locking error: When allocating a PV page for the kernel pmap,
the pmap would be locked, and we would deadlock when mapping the
newly allocate PV page.
1999-07-28 05:37:54 +00:00
mellon
a976011fcf - Correct the definition of the COUNT macro so that it takes the same
number of arguments when compiled without DIAGNOSTIC as with.
1999-07-28 01:59:46 +00:00
mellon
6d03d79b64 - compat_aout requires compat_13_machdep.c for definition of sigreturn. 1999-07-28 01:57:05 +00:00
thorpej
9d4524778d Slight adjustment to last; move pmap_kenter_pa() to where the other
pmap_k* functions are.
1999-07-28 01:17:01 +00:00
thorpej
31fa5c6f78 Don't inline pmap_kenter_pa(). It doesn't buy us much to do so, and
it's nice to have it show up in stack traces.
1999-07-28 01:07:52 +00:00
thorpej
6ec1ededf1 Make a slight rearrangement in how <machine/lock.h> is included. 1999-07-27 23:45:13 +00:00
thorpej
cc668e410f Define apporpriate an value for SIMPLELOCK_LOCKED, based on the
semantics of ldstub.
1999-07-27 22:22:33 +00:00
thorpej
0b1b32b6ff Make sure the kprintf_slock is initialized, and use the low-level atomic
locking primitive directly to lock it, since those will never attempt
to call printf() to display debugging information (and thus deadlock
on recursion into the kprintf_slock).
1999-07-27 21:50:37 +00:00
thorpej
c1ee8f0a8c Prepend `cpu_' to the machine-dependent atomic locking primitivies. 1999-07-27 21:45:39 +00:00
thorpej
d17dfae658 1.4I - simplelock changed 1999-07-27 21:33:57 +00:00
thorpej
cd992b17df In _pool_put(), call simple_lock_freecheck() if we're LOCKDEBUG before
we put the item on the free list.
1999-07-27 21:31:17 +00:00
thorpej
6390046137 Improve the LOCKDEBUG code:
- Now compatible with MULTIPROCESSOR (requires other changes not yet
  committed, but which will be later today).
- In addition to tracking simple locks, track exclusive spin locks.
- Count spin locks like we do sleep locks (in the cpu_info for this
  CPU).
- Lock debug lists are now TAILQs, so as to make the locking order
  more obvious when dumping the list.

Also, some suggestions from Bill Sommerfeld:
- SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED constants, which may be
  defined in <machine/lock.h> (default to 1 and 0, respectively).  This
  makes it easier to support architectures which use test-and-clear
  rather than test-and-set.
- Add __attribute__((__aligned__)) to the `lock_data' member of the
  simplelock structure.  This makes it easier to support architectures
  which can only perform atomic operations on very-well-aligned memory
  locations.  NOTE: This changes the size of struct simplelock, and
  will cause a version bump.
1999-07-27 21:29:15 +00:00
castor
0a1820a4e7 regen 1999-07-27 17:55:00 +00:00
castor
424a28aa79 Add vendor ID for Geocast 1999-07-27 17:52:59 +00:00
explorer
ed3b6d5791 Fix a problem where tcp_slowtimo was called twice, once for ipv4 tcp and
once for ipv6.  This patch makes the ipv6 case pass NULLs in for fast
and slow timeouts iff defined(INET) and passes in the right function
if !defined(INET).

Reveiwed by itojun@iijlab.net.
1999-07-27 06:23:57 +00:00
cgd
a0af6a8443 fix msdosfs export problems which occur on LP64 systems, which were
discovered while investigating PR#8037.
1999-07-27 05:39:10 +00:00
cgd
c1a83a09b0 fix LP64 problems which were the cause of PR#8037. 1999-07-27 05:38:02 +00:00
thorpej
d6c9ec0a2e Make this "should work" on big endian systems. 1999-07-27 00:55:34 +00:00
thorpej
b73b84643f Add support for the SMC 83c175. Also, print out the chip rev when
we attach.
1999-07-27 00:37:34 +00:00
thorpej
f48807a678 Regen. 1999-07-27 00:24:06 +00:00
thorpej
b5dc3f5708 Add product ID for the SMC 83c175 Fast Ethernet chip. This is a cousin
of the SMC 83c170 which also supports CardBus.
1999-07-27 00:23:47 +00:00
augustss
43dd17675c Make it compile with -current. I hope I got it right. 1999-07-26 23:26:14 +00:00
thorpej
c0e24db820 Use wakeup_one() for waking up sleep lock sleepers. 1999-07-26 23:02:53 +00:00
thorpej
1bd7bb28ea Implement wakeup_one(), which wakes up the highest priority process
first in line for the specified identifier.  For use in places where
you don't want a Thundering Herd.

While here, add an optimization to wakeup() suggested by Ross Harvey.
1999-07-26 23:00:58 +00:00
explorer
8fa3d8be55 make the JVC 2626 match more than one version, since all seem to be
returning errors on the LUN probe.
1999-07-26 22:43:13 +00:00
wrstuden
f3b3a1b98d If we get into pcclose() without a defined tty, just exit rather than
dereferencing a null pointer.
1999-07-26 19:31:54 +00:00
wrstuden
eeefc02aec Add VLAYER to tests which will cause VOP_REVOKE to be called in sys_revoke(). 1999-07-26 19:20:09 +00:00
jdolecek
89c23c0bb0 ntfs_getattr(): do not use dev2udev() on NetBSD
ntfs_readdir(): remove some junk accidentaly left in when merging the changes
1999-07-26 14:40:34 +00:00
jdolecek
4d71da4939 ntfs_mount(): there is no bdevsw() under NetBSD - to check if passed
block device is valid, just check if it's major is less than nblkdev
ntfs_mountfs(): dev2udev() not needed under NetBSD
1999-07-26 14:35:19 +00:00
jdolecek
afae7d7f3b resolve conflicts 1999-07-26 14:02:30 +00:00
cgd
f886376518 be more efficient when doing the SYSTEM_LD_TAIL for -g kernels: don't
copy them just to strip them, use strip -o.
1999-07-26 05:20:44 +00:00
enami
18a17d4777 Don't use the result of inet_ntoa after calling the another inet_ntoa,
since they share the same static storage.
1999-07-26 02:16:35 +00:00
cgd
16db153ba2 fix MSDOSFS_DEBUG printf arg type 1999-07-26 00:14:27 +00:00
ad
724365fa3e Change the way fb devices are configured and attached:
- 'struct fbsoftc' created, which points to a 'struct fbinfo'
- 'struct fbinfo' for each device is allocated with fballoc()

This means:
- Console device doesn't get different 'struct fbinfo' at attach
- Console device doesn't get initialized twice
- Color rcons now works
- The current Xserver MUST BE REBUILT.
1999-07-25 22:50:28 +00:00
thorpej
fc04cf9982 Add calls to lock the proclist as appropriate. 1999-07-25 18:33:47 +00:00
thorpej
e70f375122 Lock the proclist as appropriate. 1999-07-25 18:05:31 +00:00
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