Commit Graph

23289 Commits

Author SHA1 Message Date
hm
0755fde449 Bugfix: enable interrupt sharing for ELSA Microlink ISDN PCI 2000-12-03 16:20:33 +00:00
dwmalone
ec806a1972 Use M_ZERO.
Submitted by:	josh@zipperup.org
Submitted by:	Robert Drehmel <robd@gmx.net>
Approved by:	mark_salyzyn@adaptec.com
2000-12-03 13:21:55 +00:00
dwmalone
f2af31fc63 Check return value of malloc correctly and use M_ZERO. 2000-12-03 13:18:49 +00:00
msmith
0767ccf15b - add support for crashdumps (courtesy of ps and Y!)
- standardise error reporting for commands
 - simplify the driver-to-controller bio transfer
 - add bio in/out accounting
 - correctly preserve the command ID in twe_ioctl (thanks to joel@3ware)
2000-12-03 02:11:35 +00:00
jhb
5870e2e9f0 Fix up a whitespace glitch in PHOLD() and fix it to use do { ... } while(0)
instead of { ... }.
2000-12-03 02:09:47 +00:00
marcel
134e569eff Include machine/cpu.h for cpu_getstack().
Spotted by: jake
2000-12-03 01:56:15 +00:00
dg
bf7a8acc8f Changed second argument in a call to sf_buf_free() to be NULL instead of
PAGE_SIZE to match the prototype better. The argument is ignored, so this
is just to silence the compile-time warning.

Pointed out by:	jhb
2000-12-03 01:35:46 +00:00
marcel
5611047489 Don't auto-generate the syscalls. 2000-12-03 01:30:31 +00:00
marcel
ccdb84bb6b Don't auto-generate syscalls. 2000-12-03 01:28:51 +00:00
jhb
fb0ab4bf94 - Add a mutex to the proc structure p_mtx that will be used to lock accesses
to each individual proc.
- Initialize the lock during fork1(), and destroy it in wait1().
2000-12-03 01:22:34 +00:00
jake
d33c1d168c Change cpu_switch to explicitly popl the callers program counter and
pushl that of the new process, rather than doing a movl (%esp) and
assuming that the stack has been setup right.  This make the initial
stack setup slightly more sane, and will make it easier to stick
an interrupted process onto the run queue without its knowing.
2000-12-03 01:09:59 +00:00
marcel
4289ffee6c Fix dependency for auto-generated files. This commit is
for archiving purposes only; auto-generation is going to
be reverted.

requested by: obrien
submitted: gallatin
2000-12-02 23:47:41 +00:00
gallatin
397a29f117 Correct int/long type mismatch in the proper place this time. freevnodes
and numvnodes are longs in the kernel.  They should remain longs in systat,
what really needs to change is that they should be using SYSCTL_LONG rather
than SYSCTL_INT.   I also changed wantfreevnodes to SYSCTL_LONG because I
happened to notice it.

I wish there was a way to find all of these automatically..

Pointed out by: bde
2000-12-02 20:08:33 +00:00
markm
d04b66b7bc Major speedup to /dev/random and the kernel thread that reseeds it.
There is no more TAILQ fifo to harvest the entropy; instead, there
is a circular buffer of constant size (changeable by macro) that
pretty dramatically improves the speed and fixes potential slowdowns-
by-locking.

Also gone are a slew of malloc(9) and free(9) calls; all harvesting
buffers are static.

All-in-all, this is a good performance improvement.

Thanks-to:	msmith for the circular buffer concept-code.
2000-12-02 18:40:16 +00:00
mjacob
b60dc7dc10 Add USEC_SLEEP macro support. Change the location at which we define
ISP_LOCK/ISP_UNLOCK macros.
2000-12-02 18:33:29 +00:00
markm
14f55e3a6c Default the /dev/random loadable module to blocking-on-bootup,
but leave a commented-out macro to change this.
2000-12-02 18:29:18 +00:00
mjacob
c1744a5f77 Make the Not RESPONSE in RESPONSE QUEUE message have a bit more info
(specifically, how many entries we've looked at so far). Maintain
interrupt instrumentation. Use USEC_SLEEP instead of USEC_DELAY in
a number of places (this allows us to drop locks and sleep instead
of spin). Track changes to configuration options for topology preference.
Fix botched order of printout for Channel, Target, Lun.
2000-12-02 18:08:35 +00:00
mjacob
c17af18f47 Add interrupt instrumentation. Change ISP_CFG_NPORT config option to
a set of options that allows specific loop, loop-only, nport, nport-only
topology settings. Define a required macro for all platforms (USEC_SLEEP).
2000-12-02 18:06:03 +00:00
markm
f0aab59cdd Namespace cleanup. Remove some #includes in favour of an explicit
declaration.

Asked for by:	bde
2000-12-02 17:59:41 +00:00
markm
5a9b5f7c13 Recouple arc4random(9) to the entropy device. This works whether the
entropy device is loaded or not.

If the entropy device is NOT loaded, the the quality of perturbations
supplied by this will suffer.
2000-12-02 16:23:54 +00:00
julian
0bade0c230 Add splhigh()s to protect against a race condition
that shows up when running with ethernet bridging
at high speed.

Submitted by: Chris Csanady <ccsanady@iastate.edu>
(and extended by me)
2000-12-02 13:27:58 +00:00
bde
2f9fb1a43d Backed out previous commit. Don't depend on namespace pollution in
<sys/buf.h>.
2000-12-02 12:03:58 +00:00
jhb
967c93e448 Protect p_stat with sched_lock. 2000-12-02 06:09:44 +00:00
jake
11d57dad0a Regen. 2000-12-02 05:45:32 +00:00
jake
c0513a881e Forgot this file in previous commit to remove file kern_threads.c 2000-12-02 05:42:30 +00:00
jake
7cd1ca1cdc Remove thr_sleep and thr_wakeup. Remove fields p_nthread and p_wakeup
from struct proc, which are now unused (p_nthread already was).
Remove process flag P_KTHREADP which was untested and only set
in vfs_aio.c (it should use kthread_create).  Move the yield
system call to kern_synch.c as kern_threads.c has been removed
completely.

moral support from:	alfred, jhb
2000-12-02 05:41:30 +00:00
gallatin
8fe9172d64 introduce support for static compilation of the osf/1 module via the
COMPAT_OSF1 option
2000-12-02 04:17:19 +00:00
gallatin
14c37370d1 exec_osf1_imgact() should return -1 for non OSF1/ECOFF binaries, it should
not return ENOEXEC.  This is because image activators should return -1 if they
don't claim an image. They should return ENOEXEC if they do claim it,
but cannot load it due to sime problem with the image.   This bug was
preventing static compilation of the osf/1 module.  I'm surprised it
did not cause more problems.
2000-12-02 04:15:17 +00:00
jhb
b8b5877ce7 Protect p_stat with sched_lock. 2000-12-02 03:29:33 +00:00
gallatin
e72e697e0d cleanup: remove redundant mp_machdep.c and non-existent simplelock.s.
Ironically enough, simple locks are implemented in mp_machdep.c..
2000-12-02 02:09:28 +00:00
jhb
ad7f89f777 Protect p_stat with the sched_lock.
Reviewed by:	jake
2000-12-02 01:58:15 +00:00
jhb
6dfe475f40 Protect p_stat with sched_lock. 2000-12-02 01:32:51 +00:00
scottl
53f8c633d9 Revert attach() back to the old behaviour of calling bus_generic_attach().
The new way doesn't seem to work reliably and was causing devices to not
be seen.

Approved by:	msmith
2000-12-02 01:14:14 +00:00
bmilekic
e91e9907ef Make sure to free the sf_buf if we've allocated it but fail to allocate
an mbuf (ENOBUFS) before returning so that we don't leak sf_bufs in
the case where we're out of mbufs.

Submitted by: David Greenman (dg)
2000-12-02 00:40:57 +00:00
jhb
6a64e36210 Protect p_stat with sched_lock. 2000-12-01 23:43:15 +00:00
gallatin
537bde557a Alter isa interrupt behaviour on alpha. Rather than send a non-specific
EOI after the ithread runs, send the EOI when we get the interrupt and
disable the source.  After the ithread is run, the source is renabled.
Also, add isa_handle_fast_intr() which handles fast interrupts by sending
an EOI after the handler is run.

This fixes the chronic missing interrupt problems under heavy NFS load
on my UP1000 and should result in greater stability for alphas which
route all irqs through an isa pic.

Discussed with: jhb, bde (sending non-specific EOIs early was bde's idea)
2000-12-01 22:28:04 +00:00
phk
fe5dbadbbc Make labels mandatory for vn(4). 2000-12-01 22:27:40 +00:00
alfred
9e0ca1c338 Revert disconnect of sysvipc now that there's a makefile available 2000-12-01 21:13:06 +00:00
imp
5dcf582711 Add device ID for the 3c565C card. I followed exactly the 3c575c, but
further tweaks may be necessary down the road.  This does nothing with
the serial side of the card.
2000-12-01 19:41:14 +00:00
gallatin
d874e25bc3 acquire/release Giant in vm_page_zero_idle(), like on i386
Discused with: jhb
2000-12-01 18:55:58 +00:00
alfred
47bc202c6d Forgotten makefile. 2000-12-01 17:49:16 +00:00
jlemon
485b00da04 Add identifier for Compaq HotPlug host->pci bridge.
Submitted by: Steve Harrington <sgh@home.com>
2000-12-01 17:34:55 +00:00
jhb
a9bb340be2 Protect p_stat with sched_lock. 2000-12-01 16:59:02 +00:00
gallatin
f3693740f3 Convert the pcib_{read,write}_config args from signed to unsigned,
like the args to the config space accessors these functions replaced.

This reduces the likelyhood of overflow when the args are used in
macros on the alpha.  This prevents memory management faults when
probing the pci bus on sables, multias and nonames.

Approved by: dfr
Tested by: Bernd Walter <ticso@cicely8.cicely.de>
2000-12-01 15:27:48 +00:00
jlemon
700fece2f3 Add PCI id for the RAID LC2 controller.
Pick up correct location for the DEC version of the chip, this
got broken in a previous commit.
2000-12-01 15:26:11 +00:00
des
7329590233 Disconnect sysvipc, since it doesn't build. 2000-12-01 12:26:39 +00:00
msmith
85cd920774 Remove duplicate definition. 2000-12-01 12:10:06 +00:00
msmith
9ec0ffdb78 Update local changes for new hardware register interface. 2000-12-01 12:09:18 +00:00
msmith
c4c211fc90 AcpiOsMem primitives as required by the new ACPI CA snapshot 2000-12-01 10:19:28 +00:00
msmith
bee39eb0e0 Update to work with the new ACPI CA snapshot.
- Use ACPI_PHYSICAL_ADDRESS
 - RSDT -> XSDT
 - FACP -> FADT
 - No APIC table support
 - Don't install a global EC handler; this has bad side-effects
   (it invokes _REG in *all* EC spaces in the namespace!)
 - Check for PCI bus instances already existing before adding them
2000-12-01 10:18:57 +00:00