Commit Graph

838 Commits

Author SHA1 Message Date
thorpej
ea6be967fd LOCK_CAS_CHECK(): make sure we're in kernel mode. 2007-03-13 17:17:28 +00:00
ad
59d979c5f1 Pass an ipl argument to pool_init/POOL_INIT to be used when initializing
the pool's lock.
2007-03-12 18:18:22 +00:00
thorpej
8f326e8290 - Define LOCK_CAS_CHECK() in m68k/frame.h (there because it operates on
a clockframe).
- Call LOCK_CAS_CHECK() in clock_intr() (noted by Izumi Tsutsui).
2007-03-12 02:51:03 +00:00
thorpej
62509c00e0 Actually store the new value in the RAS _lock_cas(). Noticed by Izumi Tsutsui. 2007-03-11 16:46:52 +00:00
thorpej
32a8b62d33 - Shrink ipl_cookie_t from 32-bits to 16-bits (large enough to hold
an SR value or an IPL_* constant).
- Take advange of the smaller ipl_cookie_t to shrink kmutex_t from
  16 bytes to 8 bytes by overlapping storage where possible.
- Implement a RAS-based _lock_cas() for mc68010 systems (Sun2).  See
  sun68k/sun68k/isr.c.

Tested on various m68k platforms, but NOT Sun2.  In any case, at least
Sun2 compiles now.
2007-03-11 05:22:24 +00:00
tsutsui
2a92ad0d7f Don't disable EA_DIRECT in fpu_load_ea(), which seems disabled
accidentally in rev 1.11 about six years ago, otherwise
fmovel %dN,%fpN instructions cause unexpected memory access.
2007-03-09 16:33:27 +00:00
tsutsui
369fa66d6e Make these compile with options DEBUG_FPE. 2007-03-09 16:23:01 +00:00
dogcow
f18ef70a25 semimechanically convert 'void foo' -> 'void *foo', as part of the continuing
caddr_t fallout.
2007-03-05 21:05:00 +00:00
he
f1f47464be Cast to char* before doing pointer arithmetic. 2007-03-05 20:38:19 +00:00
tsutsui
90b5f236a9 Use (char *) on pointer arith. 2007-03-05 14:31:08 +00:00
tsutsui
d5a5c6095d Allocate msgbufaddr in pmap_bootstrap.c where it's initilized,
and move its declaration into <m68k/pmap_motorola.h>.
2007-03-05 12:50:15 +00:00
tsutsui
8cb08f311c Use (char *) on pointer arith.
XXX: these "params" variables seem unused.
2007-03-04 11:59:16 +00:00
tsutsui
e5f9539882 Use (char *) where pointer arith is required. 2007-03-04 11:18:25 +00:00
tsutsui
f6f3edac05 Move declarations of CADDR1 and CADDR2 from m68k/pmap_motorola.c
to <m68k/pmap_motorola.h>.
2007-03-04 11:09:39 +00:00
tsutsui
8c7e65a3e1 Replace (void *) with (char *) where pointer arith is required. 2007-03-04 10:56:21 +00:00
christos
53524e44ef Kill caddr_t; there will be some MI fallout, but it will be fixed shortly. 2007-03-04 05:59:00 +00:00
tsutsui
1b20cebad5 Hide #include <m68k/softintr.h> inside #ifdef _KERNEL in <machine/intr.h>
to avoid exporting unnecessary files to userland.
Should fix build.sh failure, which was pointed out by isaki@.

XXX: which userland program would require contents of <machine/intr.h>?
2007-03-04 05:28:38 +00:00
tsutsui
b23f121559 Add common soft interrupt routines for m68k ports which use
hp300 derived simulated software interrupt with VAX REI emulation.
Just taken from hp300/hp300/softintr.c and sys/arch/hp300/include/intr.h.
2007-03-04 01:54:04 +00:00
dyoung
58d89d0317 Make the mac68k 'tags' target work. 2007-02-25 05:47:55 +00:00
mhitch
04f1eeb439 Extract extended precision fraction correctly. Now gdtoa works properly
on m68k for extended precision numbers.
2007-02-22 17:11:15 +00:00
thorpej
132af634d7 TRUE -> true, FALSE -> false 2007-02-22 17:09:44 +00:00
mhitch
48a4473f0b Whitespace 2007-02-22 17:09:40 +00:00
tsutsui
37c7309453 Fix lossage on bool changes. 2007-02-22 13:50:36 +00:00
thorpej
dd962f8680 Pick up some additional files that were missed before due to conflicts
with newlock2 merge:

Replace the Mach-derived boolean_t type with the C99 bool type.  A
future commit will replace use of TRUE and FALSE with true and false.
2007-02-21 23:48:10 +00:00
thorpej
712239e366 Replace the Mach-derived boolean_t type with the C99 bool type. A
future commit will replace use of TRUE and FALSE with true and false.
2007-02-21 22:59:35 +00:00
mrg
4410329b87 add a pair of new bus_dma(9) functions:
int _bus_dmatag_subregion(bus_dma_tag_t tag,
				  bus_addr_t min_addr,
				  bus_addr_t max_addr,
				  bus_dma_tag_t *newtag,
				  int flags)
	void _bus_dmatag_destroy(bus_dma_tag_t tag)

that allow a (normally broken/limited) device to restrict the bus address
range it can talk to.  this is used by bce(4) to limit DMA addresses to
1GB range, the maximum the chip can address.

all this is from Yorick Hardy <yhardy@uj.ac.za> with input from several
people on tech-kern.

XXX: bus_dma(9) needs an update still.
2007-02-21 20:41:23 +00:00
ad
d43ea32af9 - Add /a modifier to trace that allows a specific LWP to be selected.
- When doing trace/t, always note which pid/lid combination is being traced.
2007-02-20 01:02:02 +00:00
pavel
934634a18c Change the process/lwp flags seen by userland via sysctl back to the
P_*/L_* naming convention, and rename the in-kernel flags to avoid
conflict. (P_ -> PK_, L_ -> LW_ ). Add back the (now unused) LSDEAD
constant.

Restores source compatibility with pre-newlock2 tools like ps or top.

Reviewed by Andrew Doran.
2007-02-17 22:31:36 +00:00
mhitch
d417d9f5d4 From Christos: gdtoa fixes for m68k. M68k ports should build now, but
printing extended precision is a little off.
2007-02-17 17:50:52 +00:00
mhitch
e7d5ff9134 Kernel threads were running at splhigh on m68k systems because the status
register was inherited from proc0.  Set the new process's status register
to PSL_LOWIPL.  Raidframe reconstruction no longer causes my Amiga to lose
time.
2007-02-15 02:55:39 +00:00
mhitch
5271afeb9d Add lock stubs for m68k. Amiga builds and runs now. 2007-02-15 02:48:48 +00:00
tsutsui
eeca26831e Update for newlock2 merge. 2007-02-10 02:34:42 +00:00
ad
b07ec3fc38 Merge newlock2 to head. 2007-02-09 21:55:00 +00:00
elad
1e70d64818 Consistent usage of KAUTH_GENERIC_ISSUSER. 2007-01-04 16:55:29 +00:00
martin
6288976a60 Allow pmap_enter_ptpage to fail, sometimes. Pass WAIT/NOWAIT flags and
fix some obvious locking problems. This allows us to run a LOCKDEBUG
kernel now.
No objection from mhitch and chs.
2006-12-30 01:28:57 +00:00
wiz
fa34b615d2 Correct spelling of "immediate(ly)". From Zafer. 2006-11-24 21:23:07 +00:00
christos
168cd830d2 __unused removal on arguments; approved by core. 2006-11-16 01:32:37 +00:00
he
8d51656fd4 Const-ness is now (by the new gcc) propagated from structs to
members, so constify so as to not lose qualification.
2006-10-23 18:58:24 +00:00
tnozaki
44eb8f042e fix gcc -Werror -Wmissing-braces problem
mbstate_t(this is opaque object)'s initializer should be ``{ 0 }'',
so changed 1st field of union from character array to integer.
2006-10-04 13:51:59 +00:00
mhitch
55fb5385d7 Common m68k pmap has same problem with 68060 after 17 month old uvm changes.
Tested and verified on my Amiga (yes, I'm hoping to switch amiga to using
the common pmp_motorola.c).

Uvm changes over 17 months ago resulted in the 68040/060 segment table
page being entered with pmap_kenter(), which does not record the mapping
in the pv table.  Attempting to inhibit caching of that page as required
by the 68060 hardware no longer changes the PTE and caused varying degrees
of multiple faulting, sometimes resulting in an unusable system.  Apparently
very few people attempted to run a 68060 based system since that change.
Fix to to change the caching bits directly rather than using pmap_changebit().
2006-09-16 17:31:13 +00:00
ad
6c8685b2d2 Use p_find(addr, PFIND_LOCKED) in case the proclist_lock is held. 2006-09-06 23:58:20 +00:00
matt
d2fa9e5329 Make cpu_coredump dependent on COREDUMP 2006-08-31 16:49:21 +00:00
yamt
e527ebac6f - remove unused bdbtofsb.
- move the following macros from MD headers to sys/param.h.
	ctod
	dtoc
	ctob
	btoc
	dbtob
	btodb
2006-08-28 13:43:35 +00:00
tsutsui
cab7ee65e0 Remove __P(). 2006-08-07 23:24:55 +00:00
mhitch
977da07ffe gcc4 checks for and warns of matching constraints that don't specify
a register operand.  Remove the matching constraint and change the output
operand constraint from "=m" (write-only) to "+m" (read-write).
2006-08-03 20:32:07 +00:00
drochner
84f50d1b92 don't install <machine/db_machdep.h>, this is kernel only 2006-07-26 19:54:56 +00:00
ad
f474dceb13 Use the LWP cached credentials where sane. 2006-07-23 22:06:03 +00:00
tsutsui
83d364980f TAB/space cleanup. 2006-07-22 06:58:17 +00:00
tsutsui
ecc22258ee - remove parentheses from return
- remove trailing spaces
2006-07-22 06:42:41 +00:00
tsutsui
999dc402f0 KNF, remove register decls 2006-07-22 06:40:44 +00:00