Commit Graph

24515 Commits

Author SHA1 Message Date
mjacob
0a03d96091 Move linux to i386 only until it gets fixed for alpha (again). 2001-02-19 21:20:33 +00:00
peter
5dff847ace Back out rev 1.92 2001-02-19 18:27:42 +00:00
n_hibma
abff0078a1 Change default devfs permissions to the ones in MAKEDEV.
Suggested by:	rwatson
2001-02-19 18:14:49 +00:00
bde
97e52ec00f Removed all traces of T_ASTFLT (except for gaps where it was). It became
unused except in dead code when ast() was split off from trap().
2001-02-19 15:47:38 +00:00
bde
3941e24095 Fixed a longstanding latency bug in signal delivery. When a signal
is sent to a process, psignal() needs to schedule an AST for the
process if the process is runnable, not just if it is current, so that
pending signals get checked for on the next return of the process to
user mode.  This wasn't practical until recently because the AST flag
was per-cpu so setting it for a non-current process would usually just
cause a bogus AST for the current process.

For non-current processes looping in user mode, it took accidental
(?) magic to deliver signals at all.  Signals were usually delivered
late as a side effect of rescheduling (need_resched() sets astpending,
etc.).  In pre-SMPng, delivery was delayed by at most 1 quantum (the
need_resched() call in roundrobin() is certain to occur within 1
quantum for looping processes).  In -current, things are complicated
by normal interrupt handlers being threads.  Missing handling of the
complications makes roundrobin() a bogus no-op, but preemptive
scheduling sort of works anyway due to even larger bogons elsewhere.
2001-02-19 09:40:58 +00:00
peter
4d1a3bb86f Use ttymalloc() instead of roll-our-own. 2001-02-19 04:53:55 +00:00
bde
49ef1aaa13 Changed the aston() family to operate on a specified process instead of
always on curproc.  This is needed to implement signal delivery properly
(see a future log message for kern_sig.c).

Debogotified the definition of aston().  aston() was defined in terms
of signotify() (perhaps because only the latter already operated on
a specified process), but aston() is the primitive.

Similar changes are needed in the ia64 versions of cpu.h and trap.c.
I didn't make them because the ia64 is missing the prerequisite changes
to make astpending and need_resched per-process and those changes are
too large to make without testing.
2001-02-19 04:15:59 +00:00
bde
405108c6cd Fixed style bugs in clock.c rev.1.164 and cpu.h rev.1.52-1.53 -- declare
tsc_present in the right places (together with other variables of the
same linkage), and don't use messy ifdefs just to avoid exporting it in
some cases.
2001-02-19 03:00:34 +00:00
peter
0d7f774a55 "Fix" the machine/lock.h problem in modules depend with a sledge hammer.
This forces bsd.dep.mk to rebuild the .depend file.
2001-02-18 20:23:22 +00:00
markm
899b5e1ead Set the interrupt-harvesting bit for those hardware items that I
can actually test.

Nothing will happen until the sysadmin turns on intr-harvesting
on her computer.
2001-02-18 18:02:15 +00:00
markm
3f5cb3707a Insert entropy harvesting calls for network traffic. By
default, no entropy will be harvested.
2001-02-18 17:54:52 +00:00
markm
23c92dbfc2 Allow the superuser to prefent all interrupt harvesting on
her system.
2001-02-18 17:47:55 +00:00
markm
886c7bc57d Provide the infrastructure for sysadmins to select the broad class
of entropy harvesting they wish to perform: "ethernet" (LAN),
point-to-point and interrupt.
2001-02-18 17:40:47 +00:00
tanimura
548e16646a Encapselate midi_info, nmidi and nsynth into midi.c. 2001-02-18 15:58:56 +00:00
green
18d474781f Switch to using a struct xucred instead of a struct xucred when not
actually in the kernel.  This structure is a different size than
what is currently in -CURRENT, but should hopefully be the last time
any application breakage is caused there.  As soon as any major
inconveniences are removed, the definition of the in-kernel struct
ucred should be conditionalized upon defined(_KERNEL).

This also changes struct export_args to remove dependency on the
constantly-changing struct ucred, as well as limiting the bounds
of the size fields to the correct size.  This means: a) mountd and
friends won't break all the time, b) mountd and friends won't crash
the kernel all the time if they don't know what they're doing wrt
actual struct export_args layout.

Reviewed by:	bde
2001-02-18 13:30:20 +00:00
asmodai
3065478332 Preceed/preceeding are not english words. Use precede and preceding. 2001-02-18 10:43:53 +00:00
asmodai
0f00927ea0 Preceed/preceeding are not english words. Use precede or preceding. 2001-02-18 10:25:42 +00:00
phk
e33961c592 Remove unneeded loop increment in src/sys/netinet/in_pcb.c:in_pcbnotify
Add new PRC_UNREACH_ADMIN_PROHIB in sys/sys/protosw.h

Remove condition on TCP in src/sys/netinet/ip_icmp.c:icmp_input

In src/sys/netinet/ip_icmp.c:icmp_input set code = PRC_UNREACH_ADMIN_PROHIB
or PRC_UNREACH_HOST for all unreachables except ICMP_UNREACH_NEEDFRAG

Rename sysctl icmp_admin_prohib_like_rst to icmp_unreach_like_rst
to reflect the fact that we also react on ICMP unreachables that
are not administrative prohibited.  Also update the comments to
reflect this.

In sys/netinet/tcp_subr.c:tcp_ctlinput add code to treat
PRC_UNREACH_ADMIN_PROHIB and PRC_UNREACH_HOST different.

PR:		23986
Submitted by:	Jesper Skriver <jesper@skriver.dk>
2001-02-18 09:34:55 +00:00
phk
15fc7bce14 Remove a debug printf. 2001-02-18 09:16:49 +00:00
luigi
6c741e8297 Add a check in the interrupt service routine to return quickly in
case there is nothing to do. This happens normally when the card shares
the interrupt line with other devices.

This code saves a couple of microseconds per interrupt even on a
fast CPU. You normally would not care, except under heavy tinygram
traffic where you can have some 50-100.000 interrupts per second...

On passing, correct a spelling error.
2001-02-18 07:21:28 +00:00
luigi
e8bf28f429 remove unused data structure definition, and corresponding macro into*() 2001-02-18 07:10:03 +00:00
bde
f50b2608fd Added a dummy lookup vop. Specfs was broken by removing its dummy
lookup vop so that it defaulted to using vop_eopnotsupp for strange
lookups like the ones for open("/dev/null/", ...) and stat("/dev/null/",
...).  This mainly caused the wrong errno to be returned by vfs syscalls
(EOPNOTSUPP is not in POSIX, and is not documented in connection with
specfs in open.2 and is not documented in stat.2 at all).  Also, lookup
vops are apparently required to set *ap->a_vpp to NULL on error, but
vop_eopnotsupp is too broken to do this.
2001-02-18 02:22:58 +00:00
jlemon
2136f987f0 Fix tab breakage from last commit.
Spotted by: bde
2001-02-17 19:40:22 +00:00
ume
e4a288b688 Correct disordering which is corresponding to bde's fix to
i386/include/ansi.h.
2001-02-17 14:51:11 +00:00
marcel
ea2a4b55bc Revert gensetdefs.pl reversal. 2001-02-17 07:26:57 +00:00
bde
4d938ae754 Fixed unsorting of prototypes in previous commit. Is it too much to
ask for 1-line commits to be correctly ordered?
2001-02-17 05:40:52 +00:00
bde
f9fa7576a8 Fixed unsorting of prototypes in previous commit. Fixed older unsorting. 2001-02-17 05:35:56 +00:00
bde
8ed2a3e17a Fixed disordering in previous commit. "Fixed" a null comment in previous
commit by removing it.
2001-02-17 03:57:38 +00:00
bde
995431ad38 Fixed disordering in previous commit. 2001-02-17 03:49:24 +00:00
gibbs
80353cf8bd Limit CHANNEL_B_PRIMARY's effect to twin channel adapters where we can easily
register our sub-busses in the reversed order.  In the future, we may provide
a hint to CAM on how to order the scans for multi-function adapters that also
set this flag, but trying to do it the "twin channel" way will lead to
a panic.
2001-02-17 01:53:22 +00:00
archie
58771d9471 Fix an erroneous comment and two style(9) bugs. 2001-02-16 17:37:31 +00:00
jlemon
21e5f66dd3 Add mutexes to the entire bpf subsystem to make it MPSAFE.
Previously reviewed by: jhb, bde
2001-02-16 17:10:28 +00:00
jlemon
8c0f93bb9b Allow debugging output to be controlled on a per-syscall granularity.
Also clean up debugging output in a slightly more uniform fashion.

The default behavior remains the same (all debugging output is turned on)
2001-02-16 16:40:43 +00:00
jlemon
717f1e459e Re-gen auto generated files. 2001-02-16 14:47:24 +00:00
jlemon
fd27a8db25 Remove dummy stub functions. 2001-02-16 14:46:16 +00:00
jlemon
065a73369e Add mount syscall to linux emulation. Also improve emulation of reboot. 2001-02-16 14:42:11 +00:00
jlemon
c7ba1f9694 Introduce copyinfrom and copyinstrfrom, which can copy data from either
user or kernel space.  This will allow layering of os-compat (e.g.: linux)
system calls.  Apply the changes to mount.
2001-02-16 14:31:49 +00:00
nyan
40f4dcb8fc Don't assume bus_space_handle_t == the start address of resource.
Use rman_get_start() instead.
2001-02-16 13:29:41 +00:00
jlemon
d8f8e6f368 Clean up warning. 2001-02-15 22:32:06 +00:00
jlemon
11781a7431 Extend kqueue down to the device layer.
Backwards compatible approach suggested by: peter
2001-02-15 16:34:11 +00:00
bde
9cfa7058be Include <sys/cdefs.h> so that this file is self-sufficient.
Protect hand-formatted comments from indent(1).  Don't bogusly forward-
declare `struct proc'.  Fixed some other style bugs.
2001-02-15 11:35:55 +00:00
ume
bf66c2eda8 Correct 2nd argument of getnameinfo(3) to socklen_t.
Reviewed by:	itojun
2001-02-15 10:35:55 +00:00
asmodai
ec09e340ce Add definitions for IPPROTO numbers 55-57. 2001-02-14 13:51:20 +00:00
asmodai
c01f8042c3 Fix another typo I missed on first reading:
insersion -> insertion
2001-02-14 13:24:01 +00:00
asmodai
83f8be73a9 Fix typo and comma placement. 2001-02-14 13:16:21 +00:00
rwatson
b71405b5bc o Fix spellign in a comment: s/referernce/reference/ 2001-02-14 06:53:57 +00:00
bmilekic
cc2f31e1a4 Implement m_getm() which will perform an "all or nothing" mbuf + cluster
allocation, as required.

If m_getm() receives NULL as a first argument, then it allocates `len'
(second argument) bytes worth of mbufs + clusters and returns the chain
only if it was able to allocate everything.
If the first argument is non-NULL, then it should be an existing mbuf
chain (e.g. pre-allocated mbuf sitting on a ring, on some list, etc.) and
so it will allocate `len' bytes worth of clusters and mbufs, as needed,
and append them to the tail of the passed in chain, only if it was able
to allocate everything requested.

If allocation fails, only what was allocated by the routine will be freed,
and NULL will be returned.

Also, get rid of existing m_getm() in netncp code and replace calls to it
to calls to this new generic code.

Heavily Reviewed by: bp
2001-02-14 05:13:04 +00:00
jlemon
9377320bfd Return ECONNABORTED from accept if connection is closed while on the
listen queue, as well as the current behavior of a zero-length sockaddr.

Obtained from: KAME
Reviewed by: -net
2001-02-14 02:09:11 +00:00
mjacob
7e987d1dff Doug found that doing a W1C on MCPCIA_INT_REQ just around the time you
clear MCPCIA_INT_MASK0 helps things substantially. So, why not indeed?

Rearrange irq and cookie calculation to use shifts/masks instead
of division. Fix things to correctly remember the intpin for that
one in a million non-INTA PCI device.
2001-02-13 22:48:12 +00:00
mjacob
3651ee3457 add defines for EISA, NCR IRQs; add defines for MID and SLOT shift values 2001-02-13 22:46:30 +00:00