Commit Graph

87795 Commits

Author SHA1 Message Date
fvdl
816da6f7fe Revert fs/gs changes until I figure out issues with them. 2007-05-21 08:10:38 +00:00
simonb
643aedadec Fix a tpyo in a comment. 2007-05-21 02:48:00 +00:00
xtraeme
a092715e1b Add missing __KERNEL_RCSID() and missing $NetBSD$ tag. 2007-05-21 02:13:11 +00:00
macallan
6645fde801 fix typo in cpu_idle - the function we want to call is in %01 not %o3 2007-05-20 23:09:13 +00:00
martin
12a2d1610a Simplify tf_tstate setting when leaving for userland initially - I seem
to have confused the if with the else case of the previous C code.
Funny that it worked at all.
2007-05-20 21:51:01 +00:00
martin
b09a59d4a8 cpu_switchto() has to return it's first arg, always. This differs from
my reading of the documentation, but helps in the real world and seems
to be what other ports do.
2007-05-20 20:28:02 +00:00
martin
b52e09dc19 Remove special case handling for userland lwps from cpu_lwp_fork, instead
do it in lwp_trampoline when we first return to userland.
2007-05-20 19:18:15 +00:00
he
e9e5beefa0 Now that curcpu() is defined in terms of curlwp() for mips, we need to
include <sys/lwp.h> where curcpu() is used.
2007-05-20 17:06:25 +00:00
mhitch
7a5f5a8ddf Fix commant: proc_trampoline() -> cpu_lwp_bootstrap(). 2007-05-20 17:04:22 +00:00
mhitch
108936c65e Fix comment: proc_trampoline() -> lwp_trampoline(). 2007-05-20 16:57:57 +00:00
he
7a6dd773d0 Patterned after the changes to atari, restore the luna68k port to a
buildable state after the yamt-idlelwp merge.
Struct cpu_info now must contain ci_want_resched, so get rid of the
global want_resched.
The cpu_need_resched macro now takes two arguments.
We need to declare proc_trampoline() from for the new m68k vm_machdep.c.
The fields l_back and l_forw no longer exists in struct lwp, so excise
their definition from genassym.cf.
Remove the use of the apparently now obsolete m68k/proc_subr.s.
2007-05-20 16:37:53 +00:00
he
2cf15b5c24 Follow the pattern suggested by mhitch for the atari port and
remove inclusion of m68k/m68k/proc_subr.s, restoring the kernel
to a buildable state.
2007-05-20 15:06:40 +00:00
isaki
d7f5331e03 Make it compilable with FDDEBUG. 2007-05-20 10:52:40 +00:00
mlelstv
e9fd5309a1 Retry set_address function for very slow (out of spec) devices, just
like FreeBSD.
2007-05-20 09:24:55 +00:00
yamt
a5e5b20e90 use mutex. 2007-05-20 07:57:03 +00:00
mhitch
63fa6e9922 Forgot cpu.h for amiga - rename proc_trampoline()->lwp_trampoline(). 2007-05-20 06:01:05 +00:00
tsutsui
124af7e7eb Call simple_lock_init(9) with proper zs_chanstate otherwise
LOCKDEBUG kernel fails during console zstty attachment.
2007-05-20 05:50:25 +00:00
dogcow
998934e40c as pointed out by juan RP, uslsa should be in ALL as well. 2007-05-20 05:19:18 +00:00
dogcow
68c5aff916 add uslsa USB-RS232 adapter 2007-05-20 05:13:17 +00:00
dogcow
2d38890bb5 From PR kern/33496 - add uslsa(4), a CP210x USB-RS232 ucom driver.
After minor hacks, it compiles without problems; however, it's not been tested
with an actual device.
2007-05-20 05:08:17 +00:00
dogcow
7103bb1242 Regenerate. 2007-05-20 05:05:32 +00:00
dogcow
534638ad53 add devs for uslsa; data taken from OpenBSD's usbdevs. 2007-05-20 05:05:06 +00:00
mhitch
9385473585 Add missing call to lwp_startup() in lwp_trampoline() (which was renamed
from proc_trampoline to match the other ports).

A DIAGNOSTIC kernel will now boot and run.  LOCKDEBUG still doesn't work yet.
Also, my amiga no longer loses time.
2007-05-20 04:29:47 +00:00
isaki
8bd92b6261 indent fix. 2007-05-20 02:54:11 +00:00
martin
9a8848720e cpu_idle is a leaf function, so we better "return from leaf".
Use return value from cpu_switchto for previous lwp in lwp_trampoline.
Also shamelessly steal a comment from uwe written for sparc that explains
all this.
Thanks to tnn, mrg, and uwe for helping to debug this.
2007-05-19 23:27:42 +00:00
martin
ca7f1b27f4 No need to pass "old lwp" to lwp_trampoline - we'll get it as return
value from cpu_swithchto() once the lwp gets scheduled for the first
time.
2007-05-19 23:25:54 +00:00
uwe
aff9e2d286 Make lwp_trampoline comment explain how things are set up in more details.
While here, fix gimplish in the inline comment too (hi, phone!)
2007-05-19 23:08:48 +00:00
mrg
68843a6372 fix a compile error #ifdef MULTIPROCESSOR. does not boot yet... 2007-05-19 23:04:48 +00:00
mrg
8d92d0d7d8 fix the two problems i introduced with yamt-idlelwp:
- in lwp_trampoline, oldlwp is already in %o0.  don't save or the wrongly
  saved copy from cpu_lwp_fork().  as repeatedly pointed out my uwe.

- in cpu_idle use retl not ret.  as pointed out by martin.


thanks to uwe/martin/tnn for all the real debugging work.
2007-05-19 22:57:47 +00:00
christos
09a50be501 - remove pathname_ interface.
- use macros to deal with pathnames in userspace, when veriexec is used.
- reorder the veriexec_ call arguments for consistency.
With help from elad@ finding the last bug.
2007-05-19 22:11:22 +00:00
martin
745a13751c page_idle_zero is now checked in MI code 2007-05-19 22:10:39 +00:00
mhitch
881ae5b63c Spelling error, I should be old enough to know better. 2007-05-19 21:00:22 +00:00
fvdl
cbfa99c95a cpu_switchto: PCB_CR0(%r14) is a 32bit value, so don't use movq to retrieve it.
Using movq would copy pcb_flags along as well, which would cause traps
because bad bits would be written into %cr0 a few instructions later.
This wouldn't happen for native NetBSD processes (no pcb_flags set), but
it would happen for Linux processes.
2007-05-19 20:20:47 +00:00
pavel
8deade14c9 Add cardbus support. It has been reported that on some laptops
(Asus W5A, HP nx6310) the kernel panics without it.
2007-05-19 18:49:38 +00:00
mhitch
bc467535b8 Fix multiprocessor operation: move a couple of fields in struct cpu_info
to the beginning so they can still be accessed in assymbly code using 8 bit
offsets.  The addition of a big structure in cpu_data moved these outside
the range of the addq instruction.  Gas should have complained that the
immediate value was too large, but just silently truncated it.  I can now
run multiprocessor again.
2007-05-19 17:09:35 +00:00
pooka
68568e7a22 forgot to commit this with puffs_vnops.c 1.72:
Actually, we do need separate "no references in file server" and
"noref + inactive" flags if we wish to correctly support unix open
file semantics and optimize away pre-reclaim cache flushes.  So,
add PNODE_DYING which stands for norefs + inactive.
2007-05-19 16:50:49 +00:00
pooka
121b6fb7b3 Actually, we do need separate "no references in file server" and
"noref + inactive" flags if we wish to correctly support unix open
file semantics and optimize away pre-reclaim cache flushes.  So,
add PNODE_DYING which stands for norefs + inactive.
2007-05-19 16:35:01 +00:00
tsutsui
4521a25b2f Regen from pcidevs rev 1.880:
> Add IBM GXT250P video.
2007-05-19 14:57:44 +00:00
tsutsui
f21468d172 Add IBM GXT250P video. 2007-05-19 14:56:24 +00:00
tsutsui
2340b51076 Set DTR and RTS in NS16550_init().
Some terminal requires it even if hardware flow control is disabled.

XXX: should we sync bebox/stand with prep?
2007-05-19 14:26:08 +00:00
isaki
38bf980ecb Use do { } while (0) to macro. 2007-05-19 14:25:26 +00:00
isaki
2440803ee4 Adapt to the merge of yamt-idlelwp branch.
tested on my X68030.
2007-05-19 14:19:39 +00:00
he
57451082bc Adapt to the merge of the yamt-idlelwp branch.
curcpu()->ci_want_resched is now required, so get rid of the
want_resched global.  Also, cpu_need_resched() now takes two arguments.
The l_next and l_back fields in struct lwp no longer exists, so delete
references to it from genassym.cf.
Also, m68k/m68k/proc_subr.s is no longer used, says mhitch, so remove its use.

This brings the atari BOOT kernel back to a buildable state.
2007-05-18 22:58:51 +00:00
riz
72c8d580f7 Add 'options TCP_SIGNATURE' to hopefully keep this code from
invisibly breaking periodically, as it's done a couple times.
2007-05-18 22:38:51 +00:00
pavel
224217a90e from FreeBSD's src/sys/dev/bge/if_bgereg.h rev 1.22:
Fix a typo. BGE_HCC_TX_MAX_COAL_BDS_INT is at offset 0x3C24, not 0x3C34
Noticed by Patrick Welche on tech-kern@, ok cube.
2007-05-18 22:30:24 +00:00
riz
711b142f07 Fix compilation in the TCP_SIGNATURE case:
- don't use void * for pointer arithmetic
	- don't try to modify const parameters

A kernel with 'options TCP_SIGNATURE' works as well as it ever did, now.
(ie, clunky, but passable)
2007-05-18 21:48:43 +00:00
riz
89c9ca415d Revert a small part of revision 1.254 - remove const qualifier from
the struct tcphdr * argument of tcp_dooptions().  RFC2385 support
(options TCP_SIGNATURE) needs to modify the header during options
processing, and this revision broke it.

OK yamt@.
2007-05-18 21:31:16 +00:00
mhitch
da59486c27 Fix alpha build after idlelwp merge. I don't know why machine/cpu.h was
added here, but it does not seem to be needed now, and was resulting in a
circular dependency when sys/sched.h was changed in the yamt-idlelpw branch.
2007-05-18 19:58:06 +00:00
pooka
e99cb62bcc Introduce noref setbacks, which the file server can use to signal
the kernel it has 0 references to the node in question.  In other
words, this can be used to avoid inactive(), or, if the file server
does not implement inactive, prompt reclaim for removed nodes.
2007-05-18 15:46:09 +00:00
pooka
93dd832918 selrecord() before calling userspace to avoid (very theoretical) race
where selinfo contains uninitialized garbage
2007-05-18 14:25:30 +00:00