Commit Graph

1313 Commits

Author SHA1 Message Date
christos
6d30dcee75 PR/29607: Christian Biere systrace doesn't handle interrupted syscalls properly
Instead of jumping to the default "bad" case, jump to the error handling
switch, so that we can deal with ERESTART/EJUSTRETURN properly.
2005-07-01 18:01:44 +00:00
drochner
b081eee072 convert remaining autoconf bus "submatch" functions to use the new
signature (passing locators), and remove some which obviously don't
serve any purpose
(untested, sorry)
2005-06-28 18:29:58 +00:00
christos
4fdef695f7 the siginfo trap codes are mi. 2005-06-25 08:29:15 +00:00
christos
e6c16a46dc move ppc commpage stuff here. 2005-06-25 06:29:49 +00:00
matt
e1245a3c46 Rework the coredump code to have no explicit knownledge of how coredump
i/o is done.  Instead, pass an opaque cookie which is then passed to a
new routine, coredump_write, which does the actual i/o.  This allows the
method of doing i/o to change without affecting any future MD code.
Also, make netbsd32_core.c [re]use core_netbsd.c (in a similar manner that
core_elf64.c uses core_elf32.c) and eliminate that code duplication.
cpu_coredump{,32} is now called twice, first with a NULL iocookie to fill
the core structure and a second to actually write md parts of the coredump.
All i/o is nolonger random access and is suitable for shipping over a stream.
2005-06-10 05:10:12 +00:00
he
aafdb08c5a Fix the various todr_gettime() and todr_settime() fallouts from
-Wcast-qual differently, by instead changing the signatore of those
"functions" to take a "volatile struct timeval*" instead of a
"struct timeval*".  Many places, these functions are called with
&time, and time is declared as volatile in <sys/kernel.h>.  This
way we can get rid of all the ugly casts which now also triggered
warnings, and caused more code to be added to work around the
problem.

Reviewed by thorpej.
2005-06-04 20:14:24 +00:00
scw
6f0524c564 Appease -Wcast-qual 2005-06-03 12:13:43 +00:00
scw
47e69aa536 Appease -Wshadow and -Wcast-qual 2005-06-03 11:59:17 +00:00
scw
7052d7a847 Appease -Wcast-qual 2005-06-03 11:55:34 +00:00
scw
e8dd39d847 Appease the -Wshadow and -Wcast-qual gods. 2005-06-03 11:54:48 +00:00
scw
f44edd8d90 Appease the -Wshadow and -Wcast-qual gods. 2005-06-03 11:42:44 +00:00
scw
30f36059c8 Appease -Wcast-qual for the IBM4XX case. 2005-06-03 11:40:25 +00:00
scw
2224de5016 Appease -Wshadow. 2005-06-03 11:20:06 +00:00
matt
22642767aa constify and adapt for newly enabled warnings. 2005-06-02 17:07:30 +00:00
he
45cee85f31 Remove the hack to compile oea/pmap.c with -Wno-cast-qual, and instead
make use of the new __UNVOLATILE() macro in memset() usage.
2005-06-02 14:35:08 +00:00
he
f483e62113 Put a band-aid over the cast qualification warnings for oea/pmap.c.
It cannot be compiled with -Wno-cast-qual due to a volatile pointer
being passed to memset(), and there's no easy way other than open-
coding memset() to fix this.  So instead we cheat for now and add
-Wno-cast-qual to CFLAGS for this file.  To be documented in doc/HACKS.
2005-06-02 10:22:20 +00:00
he
da2e0654e4 Adapt to const additions. 2005-06-02 10:16:31 +00:00
he
19108310c3 Fix variable shadowing warning. 2005-06-02 09:47:21 +00:00
he
50ea728723 Fix variable shadowing warnings by renaming the innermost variables. 2005-06-02 09:46:09 +00:00
he
aa6dbf4358 Fix shadowing and cast qualification warnings. 2005-06-02 09:19:20 +00:00
he
5d76b8816d Adapt to now compiling with -Wcast-qual - char pointers initialized
to string constants now need to be "const char*".
2005-06-02 09:13:06 +00:00
scw
8f4aee207b Declare the second arg of process_write_{fp,}regs() to be const.
This permits sh5 to continue to re-use those functions in cpu_setmcontext()
with the recent change to Makefile.kern.inc (revision 1.62).
2005-06-01 13:01:35 +00:00
christos
f6b4c20f18 s/GENASSYM/GENASSYM_CONF/ so we can use "GENASSYM" as the program name. 2005-05-31 04:03:08 +00:00
chs
6cefe93bda adapt to const changes. 2005-05-31 00:40:17 +00:00
chs
cf01d82b43 in pmap_enter(), preset the ref bit for execute-only mappings too. 2005-05-29 15:57:53 +00:00
kleink
4a6a03b162 Include <sys/cdefs.h> for __signed; related to lib/30072. 2005-05-25 20:58:00 +00:00
lukem
3fd1802e62 Move the MI printing of `copyright' to the MD cpu_startup() code
where the printing of `version' is already performed.
This has the benefit of allowing the copyright to be available
via dmesg(8) on platforms which need the `msgbuf' to be setup
in cpu_startup() before printed output is remembered.
2005-04-25 15:02:02 +00:00
kleink
b2cb7fcd8a Push back the descriptions of NaN formats, and descriptions of the
distinction between signalling NaNs and quiet NaNs back into the
machine-dependent headers; treat the implementation of __nanf in the
same spirit.

IEEE 754 leaves the distinction between signalling NaNs and quiet NANs
to the implementation, and unlike our headers used to suggest they're
not identical in the interpretation of the fraction's MSb; in due
course, make those of hppa, mips, sh3, and sh5 reflect reality.
2005-04-15 22:39:10 +00:00
nathanw
1e16e443e6 Rewrite the inner loop of vcopypage() and vzeropage() to be entirely
in inline asm and include turning the DMMU off and back on. This
prevents the compiler (especially gcc -O0) from inserting accesses to
locations in virtual address space when such accesses would fail.
2005-04-11 18:35:38 +00:00
yamt
4a4d83d126 pmap_testout: fix too many arguments for pmap_kenter_pa.
from Shoichi Miyake.  PR/29914.
2005-04-07 12:01:08 +00:00
yamt
6b2d8b66a4 merge yamt-km branch.
- don't use managed mappings/backing objects for wired memory allocations.
  save some resources like pv_entry.  also fix (most of) PR/27030.
- simplify kernel memory management API.
- simplify pmap bootstrap of some ports.
- some related cleanups.
2005-04-01 11:59:21 +00:00
shige
1a445aab8a Remove MD codes from arch/powerpc/ibm4xx. 2005-03-18 12:56:59 +00:00
matt
a6db24a485 Add a dm_maxsegsz public member to bus_dmamap_t. This allows a user of the API
to select the maximum segment size for each bus_dmamap_load (up to the maxsegsz
supplied to bus_dmamap_create).  dm_maxsegsz is reset to the value supplied to
bus_dmamap_create when the dmamap is unloaded.
2005-03-09 19:04:43 +00:00
nathanw
ec956cbe3a Don't enable interrupts while calling trap() if the trapping frame
didn't have them enabled either.

Addresses PR port-macppc/29559.
2005-03-04 22:40:32 +00:00
chs
111117ce57 fix two bugs with wiring:
(1) in pmap_enter_pv(), we would always mark the header entry wired, even if
     the new entry wasn't put there.  noticed by Juergen Hannken-Illjes.
 (2) in pmap_unwire(), we would never examine the header entry.
     noticed by me.

while I'm here, move the counter increment in the pmap_enter() path to be
next to the corresponding PV_WIRE() call so it's more obvious they match.
2005-03-02 09:02:42 +00:00
simonb
6e4737fc77 KNF: put "if (...)" and following statement on separate lines. 2005-02-25 07:09:58 +00:00
briggs
dcfd337d24 pmap_extract(): Only attempt to set '*pap' if pap is non-NULL.
PR port-powerpc/29507 from Neil Ludban.
2005-02-22 21:06:56 +00:00
matt
413f4d4de6 Don't clear PCB_FPU/PCB_ALTIVEC when releasing the FPU/AltiVec unit. Add
new flags to indicate whether the PCB currently owns the FPU/AltiVec unit.
2005-02-22 02:59:46 +00:00
briggs
6451b0332b Update to a kcore_hdr_t that is useful for OEA-style CPUs. Adding
support for Book-E and other CPUs will require updating this structure
appropriately.
Contributed by Wasabi Systems, Inc.
2005-02-17 02:21:28 +00:00
briggs
7e9ffb8e19 Install spr.h 2005-02-17 02:14:23 +00:00
chs
4d33e8a954 move recursion-detection code inside interrupt-protected region. PR 24254. 2005-02-13 02:03:54 +00:00
matt
4612c7a119 When building kernel for OEA, allow unaligned accesses since OEA
processors will deal with them properly.
2005-02-12 00:03:21 +00:00
briggs
d6e37f352e Keep track of the CPU's current speed (in kHz) in the cpu info structure,
if we can get it.  May want to expand this in the future to include min
and max speeds for systems where we can adjust the speed.
2005-02-03 14:47:09 +00:00
thorpej
a7ba88252d Eliminate use of M_HASFCS. 2005-01-30 19:03:23 +00:00
simonb
90d5b03202 Fix a typo in a printf string. 2005-01-27 12:35:53 +00:00
shige
5ed37446b2 Add gpio module. 2005-01-23 19:24:31 +00:00
shige
17dda52768 Add driver for On-chip General Purpose I/O. 2005-01-23 19:22:22 +00:00
simonb
dc5fd1a390 Use lis@h/ori@l instead of lis@ha/addi@l since we may use r0 and addi
is one of those funny instructions that treats r0 == 0 when used as the
first arg.

Fixes problems on ibm4xx.  Ok'd by matt@.
2005-01-23 00:23:57 +00:00
shige
9704ef243d Add consinit() and md_consinit funcptr to ibm4xx/machdep.c.
Rename consinit() to obs405_consinit() at evbppc/obs405/consinit.c.

Set md_consinit to obs405_consinit() at initppc().
Consinit fuction calls a function stored at md_consinit pointer.
2005-01-21 19:24:11 +00:00
simonb
3df401ce77 Set up last segment descriptor to send an interrupt after that
descriptor is transmitted, and bypass existing Tx descriptor reaping
method (for now...).

Fixes problems with bad NFS write performance.
2005-01-21 15:19:09 +00:00