pk
bfb9cac2fc
Release the kernel lock in upcallret() and startlwp().
2003-01-26 13:20:12 +00:00
manu
55215e5266
Remove right duplication on thread creation, which became useless now we
...
are using lwp.
Enable kill -9 to kill parent thread waiting for its child.
Use upcallret instead of child_return for the newly created lwp.
Add debug messages for thread creation.
Thread creation are still broken...
2003-01-26 12:39:32 +00:00
tsutsui
daf84696c6
More printf format cleanup to reduce casts.
2003-01-26 06:42:31 +00:00
matt
ee04df9a4d
Add support for Am79C87[45].
2003-01-26 06:25:08 +00:00
matt
5ade701481
Regen.
2003-01-26 06:21:03 +00:00
matt
b9f79bf02f
Add AMD Am79C87[45] (which use the Altima OUI).
2003-01-26 06:20:30 +00:00
tsutsui
eb506d3c00
Fix further printf format warnings for FD_DEBUG, in the wake of daddr_t
...
having changed.
2003-01-26 06:16:31 +00:00
fvdl
60f2388778
Do that funky SA thang.
2003-01-26 00:05:36 +00:00
kleink
bbb601497d
Fix further printf format warnings for DEBUG, in the wake of daddr_t
...
having changed.
2003-01-25 23:18:46 +00:00
soren
549c8ffd36
Note that the FS_ definitions are for compatibility only.
2003-01-25 23:17:38 +00:00
kleink
4e0e5333ae
Fix further printf format warnings for DEBUG, in the wake of daddr_t
...
having changed.
2003-01-25 23:00:09 +00:00
tron
5067836b9e
Use PRId64 instead of hard coding "%lld" to fix build problems under
...
LP64 ports.
2003-01-25 18:12:31 +00:00
fvdl
a138610cac
The oldblks and newblks arrays are used to store direct copies of
...
on-disk block pointers, so they should be int32_t. Error found
by Izumi Tsutsui.
2003-01-25 16:40:28 +00:00
tsutsui
61924d6eac
Use PRId64 from <machine/int_fmtio.h> in printf format for daddr_t.
...
(Eventually jazzio would be moved into MI place :-)
2003-01-25 15:43:11 +00:00
isaki
9bf4faf898
Make it compilable with 64bit daddr_t.
2003-01-25 14:13:46 +00:00
tron
63dda858c6
Fix printf() format strings problems caused by "daddr_t" change.
2003-01-25 12:50:38 +00:00
thorpej
f57bacfc63
Add a couple more Promise ATA133 controllers.
2003-01-25 04:45:24 +00:00
tsutsui
cce861a437
Make sure cache_sh[34]_op_*() functions actually inlined.
2003-01-25 04:21:01 +00:00
thorpej
f4ddf46102
Back out unintentional commit.
2003-01-25 02:12:22 +00:00
thorpej
fd5a840f3c
Add support for ADI Engineering's "Big Red Head" i80200 evaluation
...
and development board, based around their BECC companion chip. Despite
its name, the board can run in big- or little-endian mode (we currently
run only in the latter).
2003-01-25 02:00:15 +00:00
thorpej
b1b164a859
Support for ADI Engineering's Big Endian Companion Chip for the
...
Intel i80200 XScale processor. Despite its name, the BECC can
run in both big- and little-endian modes.
2003-01-25 01:57:17 +00:00
manu
82a9c6faf0
Use per process emuldata for the thread id for now, but this will change
...
shortly. This makes hello world working again.
2003-01-24 22:35:43 +00:00
fvdl
a3ff3a3038
Bump daddr_t to 64 bits. Replace it with int32_t in all places where
...
it was used on-disk, so that on-disk formats remain the same.
Remove ufs_daddr_t and ufs_lbn_t for the time being.
2003-01-24 21:55:02 +00:00
manu
cb771e3c64
Make the beast build again (but it is still probably broken)
2003-01-24 21:37:01 +00:00
kleink
87f0398e29
Fix inverted test in previous. (D'oh!)
2003-01-24 21:26:08 +00:00
pk
a22484a1ea
zs_shutdown: lower IPL before sleeping. Also note the fact that the
...
effectiveness of that very tsleep() call is dubious at best.
2003-01-24 20:46:45 +00:00
jdolecek
96125fbe64
fix typo in comment, and add (perhaps redundant) note that this depends
...
on file-system CODA
2003-01-24 18:51:53 +00:00
thorpej
ae5c422a40
Regen; Tweak a Promise description.
2003-01-24 17:47:17 +00:00
thorpej
de5fb86d32
Tweak a Promise description.
2003-01-24 17:46:51 +00:00
nakayama
54e4cb1a6c
fix kernel build error, such a configs w/o kbd, ms.
...
(approved by martin)
2003-01-24 16:54:34 +00:00
thorpej
9ba98c598b
Add a pointer to p1003.1b semaphore data.
2003-01-24 16:24:44 +00:00
augustss
e06bdc7dcb
Get rid of some debug stuff.
2003-01-24 11:55:19 +00:00
augustss
d93f9bdaa1
Get rid of some old BAT nonsense.
2003-01-24 11:51:42 +00:00
thorpej
b3ffb6e4ab
* Enable Ultra133 on the NVIDIA nForce 2.
...
* Make sure to test for PCI_VENDOR_AMD before testing for any
AMD products.
2003-01-24 05:51:04 +00:00
thorpej
fdedc91f87
Regen; add some more Promise products.
2003-01-24 05:34:25 +00:00
thorpej
5a31d135b0
Add some more Promise products.
2003-01-24 05:33:12 +00:00
thorpej
b3b68a3ced
Sort the Promise entries.
2003-01-24 05:18:56 +00:00
thorpej
f6cc829138
Add support for the NVIDIA nForce ATA100 and nForce2 ATA133
...
IDE controllers, which are more-or-less compatible with the
AMD controllers.
XXX Need to determine the correct timing value for the nForce2
XXX at Ultra133, so we cap it at Ultra100, for now.
2003-01-24 04:53:13 +00:00
thorpej
34461a3ff9
Regen; add Nvidia nForce2 ATA133 IDE.
2003-01-24 03:16:08 +00:00
thorpej
8204d0458d
Add Nvidia nForce2 ATA133 IDE product ID, and shuffle some
...
Nvidia entries around a little.
2003-01-24 03:15:04 +00:00
tsarna
68d5821c1b
regen
2003-01-24 01:51:09 +00:00
tsarna
1b01d76d23
Add Griffin PowerMate
2003-01-24 01:49:22 +00:00
thorpej
0139305811
Major overhaul of this code, fixing locking protocol issues and handling
...
of semaphores at fork time.
2003-01-24 01:46:27 +00:00
thorpej
3ff1552cc5
Add "fork hooks", a'la "exec hooks" and "exit hooks" which allow
...
subsystems to do special processing to the parent and/or child at
fork time.
2003-01-24 01:42:52 +00:00
thorpej
157e66459d
Regen; reserve slots for <mqueue.h> and <sched.h> system calls.
2003-01-24 01:28:05 +00:00
thorpej
237ebf04da
Reserve slots for the p1003.1b scheduler system calls.
2003-01-24 01:27:21 +00:00
thorpej
c8c6d5ea40
Reserve slots for p1003.1b message queue calls.
2003-01-24 01:23:27 +00:00
thorpej
30427190e0
Regen; allocate slot for _ksem_timedwait().
2003-01-24 01:18:50 +00:00
thorpej
9331f2b780
Allocate a slot for _ksem_timedwait(), although it is not currently
...
implemented.
2003-01-24 01:17:53 +00:00
markd
31b8810652
Regen.
2003-01-24 00:19:40 +00:00
markd
4606c7c4e4
Add Nikon E885.
2003-01-24 00:18:26 +00:00
thorpej
77acc6e3bc
Cosmetic changes.
2003-01-23 23:52:38 +00:00
thorpej
9243a2a667
Regen; allow ktruss/kdump to properly see _ksem_*().
2003-01-23 23:31:36 +00:00
thorpej
5db6496bbc
Allow the _ksem_*() syscalls to be properly seen by ktruss/kdump.
2003-01-23 23:29:46 +00:00
matt
66a5aac4a5
Fix a missing p to l change.
2003-01-23 23:18:04 +00:00
pk
f65446d08d
When stopping a CPU, clear its bit from cpu_ready_mask.
2003-01-23 22:33:41 +00:00
jdolecek
2011a991cc
ramdisk image overflew, bump by 4K
2003-01-23 21:37:28 +00:00
jdolecek
31fcb050d5
add another memory size detection routine, using int15, function 0xc7, which
...
is supported on later IBM PS/2 models; this is necessary to detect memory
over 64MB
thanks go to Pavel Cahyna for testing on his IBM PS/2 machine with 128MB
bump biosboot version to 2.15
2003-01-23 21:22:24 +00:00
augustss
8aa76b0ae7
Add processor interface register definitions.
2003-01-23 21:17:15 +00:00
jdolecek
1323e01ddf
use %e?x instead of %?x as 'xorl' arguments
...
use %al for 'movb' target, and 'andb' for masking the result with $0x02
since 'and' conveniently sets ZF, use 'and+jnz' instead of 'and+cmp+jne'
2003-01-23 21:01:18 +00:00
pk
a6a16741fe
Optimize xcall() et.al. further by maintaining a cpuset mask of all CPUs
...
marked ready. This saves repeated testing for NULL pointers and the
CPUFLG_READY flag.
Also use a separate flag variable to signal xcall completion. This saves a
load and a pipeline stall.
2003-01-23 19:54:35 +00:00
pk
a799bdd88d
GC the per-CPU message lock.
...
Move the level 15 msg area further down the cpuinfo structure, as it's
used infrequently.
2003-01-23 18:49:08 +00:00
christos
3ea86aec06
PT_DUMPCORE support.
2003-01-23 17:35:18 +00:00
kleink
15027ca61b
Correct inverted logic in comment.
2003-01-23 15:59:38 +00:00
gehenna
de40fbc7a1
Add the block-device-only devices.
...
Reported by ragge.
2003-01-23 15:07:54 +00:00
pk
39ce68a44b
bogusintr: print cpu number.
2003-01-23 14:56:06 +00:00
pk
22acc2a827
Shave some code off xcall().
2003-01-23 14:54:33 +00:00
pk
40a1653fc2
pmap_kenter_pa4m: like pmap_enk4m(), we can use setpte4m().
...
ctx_free: fix cache flush context for sun4/sun4c.
2003-01-23 12:48:53 +00:00
pk
58005dc9d3
Zombie procs have no lwps.
2003-01-23 12:41:33 +00:00
pk
698ca6fb6f
LWPify cpu_debug_dump().
2003-01-23 11:50:50 +00:00
briggs
ecc07a2e36
Use iwin[3] instead of iwin[2] for RAM access and leave iwin[2] unused.
2003-01-23 03:56:45 +00:00
briggs
a4734dcbdd
Program the BARs after the limit regs. When the BARs are written, the
...
value actually stored in the BAR is masked by the limit register.
2003-01-23 03:53:16 +00:00
bad
f4aacfe9fc
Being able to make image backups of your whole disk, not to mention not
...
causing certain ata disks to lock up by reading beyond the last block,
beats catering to broken devices.
bounds_check_with_label() RAW_PART too.
2003-01-23 00:00:32 +00:00
ragge
413b4a7519
Explicitly cast "g" arg to mtpr to long; to tell gcc that this
...
instruction will use long indexing.
2003-01-22 23:06:37 +00:00
kleink
2332bdc2f1
Sync MPC601 support bits with UP version.
2003-01-22 22:20:23 +00:00
kleink
6bc656a38f
Whitespace nit in previous.
2003-01-22 22:15:06 +00:00
pk
9d33cc7115
Set the interrupt target to the current CPU when directly accessing
...
the chip for console I/O.
2003-01-22 22:00:39 +00:00
pk
53c776f062
Add functions to set & get the interrupt target CPU.
2003-01-22 21:58:28 +00:00
kleink
2ee2952854
G/c the pmap_bootstrap() segtab interface again. Silly me.
2003-01-22 21:55:14 +00:00
bouyer
1c91f1dcd4
We want bus_space_set_region_2(), not _1() here.
2003-01-22 21:47:47 +00:00
kleink
8065f1dfa1
MPC601 support bits:
...
* install 601-specific DSI and RUNMODETRC trap handlers
* save/restore MQ in trapframe, add MQ hooks to DDB
* extend battable to 512 entries to hold the 601's 8M translations
* instead of adding I/O to BAT starvation, set up segment registers
for Memory-Forced I/O Controller Interface Access
* sync after tlbie
2003-01-22 21:44:54 +00:00
jdolecek
b8445f760f
bump ramdisk image to 2330k
2003-01-22 21:16:32 +00:00
kleink
892f5b1680
Add mfrtcl() and mfrtc(), similar to mftbl() and mftb().
2003-01-22 21:05:50 +00:00
rafal
4490fd7293
Last bit of LWP'ification of compat_irix; this is probably wrong, but at
...
least it compiles and manu said he'd fix it up and test the whole kit when
he had a chance.
2003-01-22 21:04:50 +00:00
kleink
7553f82ab0
Recognize %mq, and adjust disasm_fields() slightly to print it.
2003-01-22 21:03:37 +00:00
hannken
e6785a37e2
Increase time to wait for TLB IPI rendezvous.
...
Approved by: Frank van der Linden <fvdl@netbsd.org>
2003-01-22 18:32:18 +00:00
christos
2bb5209b1b
lwp'ify
2003-01-22 17:48:02 +00:00
christos
ed339f5241
regen.
2003-01-22 17:47:47 +00:00
christos
bcc3424bc3
regen
2003-01-22 17:47:35 +00:00
christos
498aa03f2a
lwp conversion
2003-01-22 17:47:03 +00:00
simonb
d77e3b36e0
Assign to pcb->pcb_context[] in the same order in cpu_lwp_fork() and
...
cpu_setfunc().
2003-01-22 13:55:09 +00:00
scw
e212eb9e09
Fix pasto in last commit.
2003-01-22 13:46:44 +00:00
scw
a4b020d99e
In cpu_upcall(), validate the address of the upcall handler so as to
...
avoid a kernel-mode exception if restoring an invalid SPC.
2003-01-22 13:40:57 +00:00
simonb
f1e4a936fe
White space nit; make comments line up nicely.
2003-01-22 13:40:34 +00:00
scw
3b0144945a
Fix a cpu_switchto() botch.
2003-01-22 13:38:51 +00:00
scw
fe8c97c2e1
In _MCONTEXT_TO_SIGCONTEXT(), set r24 to the magic number expected
...
by sh5's sys___sigreturn14().
2003-01-22 13:38:11 +00:00
scw
1ec8a7e381
Add _UC_UCONTEXT_ALIGN.
2003-01-22 13:35:55 +00:00
rafal
5234d1eb92
Mechanical LWP'ification of IRIX compat code; untested as of right now.
2003-01-22 12:58:22 +00:00
yamt
41ad61ee76
make KSTACK_CHECK_* compile after sa merge.
2003-01-22 12:52:14 +00:00
jmmv
190a36975b
Fix typo: realy -> really. Okay'ed by wiz.
2003-01-22 11:47:05 +00:00
mhitch
0dec3c2159
Lance chip needs to be accessed in sparse address space for alpha. Fixes
...
Turbochannel Ethernet card on Alpha 3000 systems.
2003-01-22 08:06:21 +00:00
rafal
c406903ac2
LWP'ify the svr4_mcontext stuff.
2003-01-22 04:32:17 +00:00
jdolecek
fe21ba6c7f
comment out static prototype for pci_intr_fixup_ibm_6040() for now,
...
it's not implemented here (nor used)
2003-01-21 22:01:57 +00:00
jdolecek
225c76a84a
add prototype for switch_lwp_exit()
2003-01-21 21:59:49 +00:00
augustss
0dd40ac3d5
Fix typo in last commit.
2003-01-21 21:00:56 +00:00
augustss
98a0fdb690
Make sure to set xs->datalen when we force a short inquiry. From kern/19971,
...
Shingo WATANABE.
2003-01-21 20:56:57 +00:00
augustss
fa5b0c9ca0
Add quirk for Melco adapter. From kern/19971, Shingo WATANABE.
2003-01-21 20:56:13 +00:00
augustss
9c6ee93f4b
Regen.
2003-01-21 20:53:51 +00:00
augustss
234e556fd2
Add Melco USB-IDE adapter.
2003-01-21 20:53:29 +00:00
kleink
2726c9bbeb
Add ns32k ucontext kernel portions. Not entirely updated for the LWP
...
universe (like the rest of the port), but presumed working.
2003-01-21 20:50:43 +00:00
martin
fbc8c025c2
Rename the DIV0 traps to avoid confusion with the usage on the sparc
...
port: T_IDIV0 is the hardware trap generated on integer division by
zero, T_DIV0 is the software trap used to signal the same event.
This makes 32 bit kernels able to run sparc code with the v7 multiply/
divide library, as well as with the v8 one.
2003-01-21 20:42:02 +00:00
bouyer
099e41a34e
Pass proper len to word_zero().
...
Bump totlen in the last wantsbyte case, so that it's always even.
Both pointed out by Gunther Nikl.
2003-01-21 20:39:29 +00:00
martin
8772c68807
Rename the DIV0 traps to avoid confusion with the usage on the sparc
...
port: T_IDIV0 is the hardware trap generated on integer division by
zero, T_DIV0 is the software trap used to signal the same event.
This makes 32 bit kernels able to run sparc code with the v7 multiply/
divide library.
Spotted by Valeriy E. Ushakov.
2003-01-21 19:46:49 +00:00
kent
19056063ce
Add DIAGNOSTIC code provided in PR kern/19919 by DHOYASHIKI Shinichi.
2003-01-21 16:05:21 +00:00
kleink
6279465ec2
Add <machine/mcontext.h> wrapper.
2003-01-21 14:39:35 +00:00
christos
aa30f99ab5
- add $NetBSD$
...
- include <sys/cdefs.h>
- remove variable names from args
2003-01-21 14:11:31 +00:00
kleink
38233ac58c
G/c orphaned declaration of `runtime'; from HAMAJIMA Katsuomi in
...
PR kern/19974.
2003-01-21 13:56:53 +00:00
scw
2dd1c1657f
Add sigcontext/mcontext conversion macros.
2003-01-21 11:28:01 +00:00
scw
a57f525335
Define {,UN}LINK_BIG_FRAME() macros for dealing with stackframes
...
greater than 511 bytes in size.
2003-01-21 11:27:18 +00:00
scw
c3be47693c
Use 'int' instead of 'u_int32_t' in a couple of places to avoid
...
depending on sys/types.h.
2003-01-21 11:26:04 +00:00
jdolecek
b6e6d81aa4
fix pasto in previous to make this compile
2003-01-21 07:12:54 +00:00
jdolecek
0d1394f592
config says nsphy and ukphy are orphaned (nothing matching 'mii?' declared)
...
comment them out
2003-01-21 07:10:46 +00:00
sjg
b3d7df8002
Don't hide bootmid behind MULTIPROCESSOR.
2003-01-21 06:18:41 +00:00
itojun
aa8971e35f
m_tag transition mistake (within #if 0)
2003-01-21 05:43:26 +00:00
itojun
0eec7150b6
vlan tagging mistake during m_tag transition
2003-01-21 05:39:57 +00:00
simonb
76cc21a34c
Fix a tyop and some white-space nits.
2003-01-21 04:26:01 +00:00
matt
b03d17694a
Do a preliminary switchover of the mach code to lwp's. It compiles now
...
but probably doesn't work. That's for someone who understand this code
better.
2003-01-21 04:06:06 +00:00
matt
de92ce633f
Regen.
2003-01-21 04:02:37 +00:00
matt
d8ad92c6b6
Add <sys/sa.h>
2003-01-21 04:02:10 +00:00
matt
312dfd8487
Adapt to the LWP world.
2003-01-21 04:01:09 +00:00
matt
e093b867e9
Regen.
2003-01-21 04:00:02 +00:00
matt
6d793da904
Add <sys/sa.h>
2003-01-21 03:59:27 +00:00
itojun
4d7a2eb391
correct panic when ip-in-ip encapsulation is used. found by Masanori Kanaoka
2003-01-21 03:23:44 +00:00
jdolecek
d4ad86a080
finish LWPify
2003-01-21 03:16:06 +00:00
itojun
d4bff57bae
s/options^I^I/options ^I/
2003-01-21 02:44:15 +00:00
simonb
b2fd1c7b6d
Remove a line of unreachable code. It seems to be a remnant of starting
...
off with a different driver, and the way this code is structured the
offending line isn't needed.
2003-01-21 00:24:20 +00:00
christos
5c729d909f
finally: step 5: disable a KASSERT() if we are doing_shutdown.
...
now sync from ddb should work as badly as before the nathanw_sa merge.
2003-01-21 00:03:07 +00:00
christos
d00d441811
step 4: don't de-reference l, if you are going to test if it is NULL a couple
...
of lines below.
2003-01-21 00:02:07 +00:00
christos
3908d39e06
step 3. Assign lwp properly if null, so that we can PHOLD without segfaulting.
2003-01-21 00:01:14 +00:00
christos
2cc65e9f5e
step 2: fix sync so that it does not dereference null lwp and assign p properly.
2003-01-21 00:00:10 +00:00
christos
416978b15b
The hunt to make sync work from ddb again begins here.
...
Protect against lwp null dereference. set proc p properly.
2003-01-20 23:59:14 +00:00
christos
0f6167a798
name the component that should be leaf in the diagnostic.
2003-01-20 23:57:49 +00:00
scw
0767992461
If we don't explicitly recognise the trap type, only panic if it
...
came from kernel mode. Otherwise, print details of the exception
and send a SIGILL to the process.
The is necessary now that debug exceptions are handled here.
2003-01-20 22:32:26 +00:00
scw
80284bdc34
Arrange for non-panic debug sync/async exceptions to re-vector through the
...
real sync/async exception handler instead of always calling panic_trap().
Otherwise, userland BRK instructions can halt the system.
2003-01-20 22:25:09 +00:00
pk
26eedde15b
srmmu_cache_flush: when flushing per-page and doing more than one page,
...
we might be crossing a segment boundary.
2003-01-20 22:15:54 +00:00
jdolecek
6e7eeb5d94
we now support POSIX 1003.1b semaphores, add _POSIX_SEMAPHORES feature
...
define
2003-01-20 22:11:15 +00:00
pk
d823499ff4
pmap_enter4m: when installing a new PTE we don't need to invoke the elaborate
...
TLB de-map protocol. In the relatively infrequent case where this function
must update an existing mapping, do the de-map explicitly before installing
the new PTE value.
2003-01-20 22:03:54 +00:00
pk
ab9a8ae184
Set the system-wide cache aliasing distance according to the largest cache
...
found on the CPU modules (hypersparc & cypress).
Vikings have a physically indexed cache, so don't bother with computing an
aliasing distance (leaving cache_alias_dist zero disables the BAD_ALIAS macro).
2003-01-20 21:56:34 +00:00
pk
b4a0aebea2
Add SUN4D case for cache alias macros.
2003-01-20 21:43:38 +00:00
aymeric
32571dfb87
fill in the dv_unit field of the fake "struct device" correctly.
...
In particular, this makes grfN, N != 0, work as console.
Tested by Ignatios.
2003-01-20 21:24:56 +00:00