Commit Graph

125 Commits

Author SHA1 Message Date
thorpej eb20bbc780 Change the semantics of splsoftclock() to be like other spl*() functions,
that is priority is rasied.  Add a new spllowersoftclock() to provide the
atomic drop-to-softclock semantics that the old splsoftclock() provided,
and update calls accordingly.

This fixes a problem with using the "rnd" pseudo-device from within
interrupt context to extract random data (e.g. from within the softnet
interrupt) where doing so would incorrectly unblock interrupts (causing
all sorts of lossage).

XXX 4 platforms do not have priority-raising capability: newsmips, sparc,
XXX sparc64, and VAX.  This platforms still have this bug until their
XXX spl*() functions are fixed.
1999-08-05 18:08:08 +00:00
minoura d1954679df Missing #if for 060. 1999-05-13 14:24:27 +00:00
minoura ad762a0b97 Use mvme68k-derived delay routine.
Now that we support various models, the old constant-loop delay routine
may cause problems.
1999-05-05 13:46:20 +00:00
kleink e1529b8f93 Pull in the right generic m68k header. (Where was my mind?) 1999-04-29 14:38:39 +00:00
thorpej b8073b401b Garbage-collect the VM_MBUF_SIZE constant. Instead, use the size
(nmbclusters * mclbytes), so that the right amount of KVA space is
allocated if those variables are patched.
1999-04-26 22:46:44 +00:00
kleink ed74932033 Add COMPAT_SVR4 for m68k. 1999-04-19 21:22:56 +00:00
minoura a76b0b1bf5 Shut up gcc -Wall. 1999-03-24 14:07:38 +00:00
drochner 76fa1751fe Add a macro to check for sufficient pointer alignment in bus.h context,
"BUS_SPACE_ALIGNED_POINTER()".
Equal to the param.h "ALIGNED_POINTER()" normally, but obeys additional
requirements of the bus_space_xxx_n() macros. (BUS_SPACE_DEBUG)
1999-03-23 21:29:03 +00:00
minoura ba80d2c6d7 Merged minoura_x68k_bus_h branch. 1999-03-16 16:30:16 +00:00
minoura e518820ca8 Pullin m68k/ieee.h. 1999-03-15 11:55:53 +00:00
is f71d843a65 synchronize types, and s/curproc/p/ in one forgotten place 1999-02-26 22:37:57 +00:00
is bce0bda05c x68k specific part of fix for PR 6152 1999-02-26 16:07:07 +00:00
mycroft 3e6e3322d8 Format consistency. 1999-01-24 12:56:51 +00:00
mycroft 082204fa3d Standardize format. 1999-01-22 14:12:07 +00:00
itohy fe5278bffc MACHINE_NEW_NONCONTIG is no longer optional
remove non-MNN code
1999-01-18 07:39:51 +00:00
bouyer dc306354b0 Move the bswap functions from libutil to libc (this bups the
minor of libc and the major of libutil). For little-endian architectures
merge the bnswap() assembly versions with nto* and hton* using symbols
aliasing. Use symbol renaming for the bswap function in this case to avoid
namespace pollution.
Declare bswap* in machine/bswap.h, not machine/endian.h. For little-endian
machines, common code for inline macros go in machine/byte_swap.h
Sync libkern with libc.
Adjust #include in kernel sources for machine/bswap.h.
1999-01-15 13:31:15 +00:00
itohy 643e0d4cc2 Added intr.h 1998-12-14 19:04:58 +00:00
itohy b40f2a1c88 Make egcs happy. 1998-12-14 15:22:04 +00:00
minoura 6aa085a693 Splitted out the interrupt handling code to a separate file.
Disallow getting down the interrupt level by splXX.
1998-12-13 15:04:01 +00:00
thorpej cabecee13c Changes to support fork_kthread():
- cpu_set_kpc() now takes void *arg third argument, passed to the
  entry point.
- cpu_fork() allows parent to be non-curproc iff parent is proc0.
  When forking non-curproc, assume its state has already been saved.
- Adjust various pieces of machine-dependent code to account of all of this.
1998-11-11 06:43:49 +00:00
thorpej b38544d99e Oops, back out a buglet I didn't intend to commit in the last change. 1998-10-07 18:29:26 +00:00
thorpej d681cf055a configure() prototype is in <sys/device.h> 1998-10-06 20:50:15 +00:00
mycroft 7b15b3b56d Minor change. 1998-09-13 12:01:41 +00:00
minoura 2b34aa908f Eliminated meaningless ITEKANJI. 1998-09-03 14:22:06 +00:00
minoura 8749f59fe4 Unimplemented EIOMAPSIZE defaults to 0. 1998-09-03 14:13:18 +00:00
itohy 1bf1486a77 Added an include file on port dependent boot information. 1998-09-01 19:47:38 +00:00
minoura 7f4ad4748e Eliminated vm_offset_t and vm_size_t. 1998-08-22 14:38:36 +00:00
minoura a6b5ab0c92 Moved parioctl.h to the system header directory. 1998-08-07 16:16:36 +00:00
minoura 4c4cdda003 Switched to MI zs driver. 1998-08-07 11:19:13 +00:00
minoura d082dd3db4 Moved grfioctl.h and iteioctl.h to the public include directory. 1998-08-06 14:08:53 +00:00
minoura b72d8d17f9 __BROKEN_INDIRECT_CONFIG fixes. 1998-08-04 16:51:51 +00:00
veego 1b46ebe1d9 Add elf_machdep.h to the INCS list. 1998-07-12 17:53:29 +00:00
thorpej 639cc899cf Basic elf_machdep.h for m68k; doesn't include relocations, yet. 1998-07-12 01:17:58 +00:00
thorpej d47ea67c1f Define one page free list, and put all pages on it. 1998-07-08 04:43:18 +00:00
msaitoh c0eed6da3d sync with -current after a long silence 1998-06-30 11:59:09 +00:00
thorpej 37b378d836 defopt COMPAT_HPUX 1998-06-25 23:56:39 +00:00
cgd 651b44e211 Rework the way kernel include files are installed. In the new method,
as with user-land programs, include files are installed by each directory
in the tree that has includes to install.  (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.)  The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change.  Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
cgd 3bbb7f7d45 Move pmap_map() function definition to MD headers, as appropriate. It's
an internal function, and the VM system shouldn't try to prototype it.
(Note that some ports _don't_ prototype it.)
1998-02-18 02:05:32 +00:00
scottr f49dd3ef30 Avoid declaring the "astpending" and "want_resched" globals in cpu.h,
as this breaks C++ code that happens to indirectly include this header.
Both Matthias Scheler and I noticed this, independently.

This problem notably does not affect the atari and sun3/sun3x ports,
which have already implemented a similar solution.
1998-02-13 07:41:45 +00:00
mycroft b5c132e4d2 Prototype __flt_rounds() consistently. 1998-02-03 01:26:20 +00:00
perry 6f57e5c573 multiple include protect machine/limits.h, fixes pr 4473 (from Mika Nystrom) 1998-01-09 22:23:44 +00:00
thorpej 61567b54de Garbage-collect pm_stchanged; it's not used by anything. 1998-01-06 07:02:58 +00:00
thorpej d11b109f2b Garbage-collect use of the PCB's copy of the user segment table pointer. 1998-01-06 06:51:40 +00:00
perry 015e898c02 RCSID Police. 1998-01-05 07:02:46 +00:00
thorpej b9f1b716f3 Now that all ports have pmap_activate(), and it has an identical interface,
prototype it in <vm/pmap.h>
1998-01-03 01:12:59 +00:00
thorpej dd966fca05 Change an argument name to PMAP_ACTIVATE() to more accurately describe the
semantics of the argument.
1998-01-01 20:05:23 +00:00
thorpej 287b63b321 - Make pmap_activate() and pmap_deactivate() take a struct proc *.
- Define active_user_pmap() and use it in the appropriate places (from hp300
  port).
1998-01-01 19:52:50 +00:00
oki 49779c8c5a Add MDP_STACKADJ. 1997-12-24 17:46:08 +00:00
is a16fd7d74e Make these compile after m68k/m68k.h 1.4->1.5. 1997-10-26 21:41:34 +00:00
lukem 28558b28eb rcsid fascism 1997-10-13 14:22:22 +00:00
oki 051b06a759 Add prototypes. 1997-10-10 21:45:18 +00:00
oki a947a7eff9 Remove __BDEVSW_DUMP_OLD_TYPE. 1997-10-09 12:59:23 +00:00
oki 2ce1763013 Prototype spl0(). 1997-10-09 12:58:31 +00:00
leo d4713d24c2 Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
perry ad1710ce1e update comment from 1981 on memory and disk prices -- pr-2754 from Curt Sampson 1997-07-12 16:18:36 +00:00
veego 1450ec3f1b Restore the define of NPTEPG. 1997-07-10 08:23:03 +00:00
mrg dc6a98e92c bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:09:23 +00:00
kleink a10178c21e GC this file. It has been unused for quite a while. 1997-06-11 08:42:31 +00:00
veego af1627ce0b The 'Mach derived conversion macros' are now in <m68k/param.h> 1997-06-10 20:20:06 +00:00
veego e32543e434 s/x68k_btop/m68k_btop/ 1997-06-10 20:19:35 +00:00
veego 931d90fcee Use the MI <m68k/param.h> include. 1997-06-10 07:54:35 +00:00
gwr 5485e1ff75 Need a common <m68k/pcb.h> for gdb. 1997-03-31 21:39:51 +00:00
fvdl 115b6d92fa Define ALIGNED_POINTER 1997-02-24 23:16:53 +00:00
oki e42b78c179 Remove #ifdef GENERIC ... #endif 1997-02-03 22:20:32 +00:00
oki 0e58d64c9e first commit of M68060 and FPU_EMULATE support.
M68060 support by YAMASAKI Yasushi, few arranged by me.
1997-01-13 14:04:42 +00:00
oki 0e00922730 Add fpu_probe prototype. 1997-01-08 04:00:47 +00:00
cgd 96acdadef7 First step inn removing config_scan() and the hacks that gave devices
on indirect-config busses a (permanent) softc that they could share
between 'match' and 'attach' routines:

Define __BROKEN_INDIRECT_CONFIG so that old autoconfiguration
interfaces are used, until drivers are converted to use the new
interfaces (actually, converted back to use the _older_ interfaces)
which prohibit indirect configuration devices from receiving a softc
in their match routine that they can share with their attach routine.
1996-12-05 00:13:47 +00:00
cgd e36e19cf1e repoint at shared aout_machdep.h, not exec.h 1996-10-08 13:07:26 +00:00
cgd 472889f8e4 moved to aout_machdep.h (via repository copy) 1996-10-08 12:57:37 +00:00
thorpej a437d4f6cb Use <m68k/cpu.h>. 1996-09-11 00:23:47 +00:00
thorpej de5110f41e Use <m68k/exec.h>. 1996-09-08 01:00:35 +00:00
oki 30ec7d2c44 Some cleanup.
- Add missing return-type of function.
- Add missing prototype.
- some gcc -Wall printf warning.
1996-05-21 15:32:18 +00:00
oki a104ff9340 spl0 prototype. 1996-05-16 16:03:35 +00:00
oki 70f5d6ae04 Initial revision 1996-05-05 12:17:14 +00:00
oki 320e7320ef NetBSD/x68k, by Masaru Oki. 1996-05-05 12:17:03 +00:00