Commit Graph

2953 Commits

Author SHA1 Message Date
thorpej 139cdc3125 Make nbuf, nswbuf, and bufpages unsigned. Make all operations on these
variables unsigned, and update places where their values are printed.
2002-08-25 20:21:33 +00:00
mhitch 89fd7196ed Add missing PMAP_TLB_SHOOTDOWN() after PMAP_INVALIDATE_TLB() in
pmap_page_protect().  Closes NetBSD Problem Report #18045.
2002-08-24 03:10:52 +00:00
briggs 0b956d0b8b Implement pmc(9) -- An interface to hardware performance monitoring
counters.  These counters do not exist on all CPUs, but where they
do exist, can be used for counting events such as dcache misses that
would otherwise be difficult or impossible to instrument by code
inspection or hardware simulation.

pmc(9) is meant to be a general interface.  Initially, the Intel XScale
counters are the only ones supported.
2002-08-07 05:14:47 +00:00
nathanw 3fe600dd5c Experimentation reveals that the implementation of GET_ENV on at least
some systems chokes if the buffer is not 8-byte aligned. GCC only aligns
character arrays to 4-byte boundaries by default, so it's possible to get
unlucky and die in the boot blocks with a "kernel stack not valid halt".

Avoid the problem by using a local, aligned buffer as the argument to GET_ENV,
and copying the result into the caller's buffer.

Should fix PRs port-alpha/17682 and port-alpha/17717.
CVS ----------------------------------------------------------------------
2002-07-30 20:36:42 +00:00
simonb f416cb43ee Use "#define<tab>". 2002-07-25 23:41:33 +00:00
he af9f155a33 Add identifiers for newer 21264 CPUs (B, C and D), EV68 variants.
Information gleaned from corresponding code in FreeBSD.
2002-07-25 15:39:41 +00:00
mycroft 98763c9300 Set addr_shift and size_shift to 0 for the dense region. 2002-07-22 20:05:23 +00:00
wiz c530b39df1 Correct some commented out variables from ADW_DISABLE_* to SCSI_ADW_DISABLE_*.
From Julio Merino in port-alpha/17677.
2002-07-22 14:51:01 +00:00
thorpej 3912e469dd Rename cdev_systrace_init() to cdev_clonemisc_init(), so it can
be properly used by any misc. cloning device.  While here, correct
a comment to indicate that "open" is the only entry point and that
everything else is handled with fileops.
2002-07-19 16:38:14 +00:00
jdolecek c96cc85feb enable KERNFS and PROCFS - this is GENERIC after all, right?
adresses port-alpha/15348 by Ray Phillips
2002-07-10 22:05:29 +00:00
abs eb73becae2 Ensure all INSTALL config files consistantly include PIPE_SOCKETPAIR,
MALLOC_NOINLINE, and VNODE_OP_NOINLINE. The exceptions are when they
include another config files that already defines the options, or if
they are for an embedded board, just define a few extra options, and
do not already define PIPE_SOCKETPAIR.
2002-07-05 13:40:10 +00:00
thorpej 011d4d5f44 Add kernel support for having userland provide the signal trampoline:
* struct sigacts gets a new sigact_sigdesc structure, which has the
  sigaction and the trampoline/version.  Version 0 means "legacy kernel
  provided trampoline".  Other versions are coordinated with machine-
  dependent code in libc.
* sigaction1() grows two more arguments -- the trampoline pointer and
  the trampoline version.
* A new __sigaction_sigtramp() system call is provided to register a
  trampoline along with a signal handler.
* The handler is no longer passed to sensig() functions.  Instead,
  sendsig() looks up the handler by peeking in the sigacts for the
  process getting the signal (since it has to look in there for the
  trampoline anyway).
* Native sendsig() functions now select the appropriate trampoline and
  its arguments based on the trampoline version in the sigacts.

Changes to libc to use the new facility will be checked in later.  Kernel
version not bumped; we will ride the 1.6C bump made recently.
2002-07-04 23:32:02 +00:00
thorpej 0ba2c1b425 When delivering a signal, arrange for the signal handler to be invoked
directly, using the trampoline only for the return path.
2002-07-01 03:10:01 +00:00
thorpej 7f2925365c Add the kttcp device. 2002-06-28 23:29:26 +00:00
ross 686a24e882 add bktr 2002-06-27 18:34:32 +00:00
thorpej ae0f07dd51 Fix syscall_intern after systrace (HI CHRISTOS!) 2002-06-18 18:30:15 +00:00
christos 3b50728cf4 MD systrace gluons. 2002-06-17 16:32:57 +00:00
lukem fde6ae6f04 Enable "pseudo-device clockctl" in all kernels, except
installation related kernels (INSTALL* and RAMDISK*).
This enables rc.conf(5) $ntpd_chroot to be used "out of the box"
2002-06-17 05:14:02 +00:00
yamt 7d0fd357f6 make auto const variables static. 2002-06-08 16:51:38 +00:00
yamt 08c9504e97 make auto const variables static.
ok'ed by thorpej.
2002-06-08 15:50:59 +00:00
drochner d2b9876081 move initialization of the "struct pglist" returned by uvm_pglistalloc()
from the calling code into uvm_pglistalloc() itself for consistency
and easier error handling
2002-06-02 14:44:35 +00:00
lukem 06de426449 SIMPLEQ rototill:
- implement SIMPLEQ_REMOVE(head, elm, type, field).  whilst it's O(n),
  this mirrors the functionality of SLIST_REMOVE() (the other
  singly-linked list type) and FreeBSD's STAILQ_REMOVE()
- remove the unnecessary elm arg from SIMPLEQ_REMOVE_HEAD().
  this mirrors the functionality of SLIST_REMOVE_HEAD() (the other
  singly-linked list type) and FreeBSD's STAILQ_REMOVE_HEAD()
- remove notes about SIMPLEQ not supporting arbitrary element removal
- use SIMPLEQ_FOREACH() instead of home-grown for loops
- use SIMPLEQ_EMPTY() appropriately
- use SIMPLEQ_*() instead of accessing sqh_first,sqh_last,sqe_next directly
- reorder manual page; be consistent about how the types are listed
- other minor cleanups
2002-06-01 23:50:52 +00:00
lukem 9d8552460f add puc, and com & lpt at puc 2002-05-27 23:58:52 +00:00
lukem a0336432b3 add lpt_puc support (from files.i386) 2002-05-27 23:41:33 +00:00
nathanw 6b65b300bf Add missing common or OSF/1 PALcode instructions from the AARM: wtint,
clrfen, urti.
2002-05-19 00:23:50 +00:00
thorpej 204183c0fa * Add "pcitag_t *pba_bridgetag" to pci_attach_args. This is set to
NULL for root PCI busses.  For busses behind a bridge, it points to
  a persistent copy of the bridge's pcitag_t.  This can be very useful
  for machine-dependent PCI bus enumeration code.
* Implement a machine-dependent pci_enumerate_bus() for sparc64 which
  uses OFW device nodes to enumerate the bus.  When a PCI bus that is
  behind a bridge is attached, pci_attach_hook() allocates a new PCI
  chipset tag for the new bus and sets it's "curnode" to the OFW node
  of the bridge.  This is used as a starting point when enumerating
  that bus.  Root busses get the OFW node of the host bridge (psycho).
* Garbage-collect "ofpci" and "ofppb" from the sparc64 port.
2002-05-16 01:01:28 +00:00
thorpej dada8613e1 Let machine-dependent code specify how to enumerate the bus.
Currently, everyone uses pci_enumerate_bus_generic().
2002-05-15 19:23:51 +00:00
thorpej 487d8b5135 (*pc_decompose_tag)() is no longer alpha specific. Move it as appropriate. 2002-05-15 17:09:58 +00:00
thorpej 90e921d836 Rename alpha_pci_decompose_tag() to pci_decompose_tag(). There *is*
some MI PCI code that uses it, and soon there will be more.  (The rationale
for not making it available previously was that it could be mis-used, but
that's true of a lot of things.)
2002-05-15 16:57:41 +00:00
lukem 4369818766 Migrate alpha/pmax/vax bootblock stuff from <dev/dec/dec_boot.h> to
<sys/bootblock.h>  (leaving ultrix compat goo in the former)
2002-05-14 06:34:20 +00:00
thorpej adbd145bda Make alpha_pal_halt, alpha_pal_wrent, and alpha_pal_wrvptptr no-profile. 2002-05-13 21:38:30 +00:00
thorpej 456615e083 Make sigcode and proc_trampoline no-profile. 2002-05-13 21:38:09 +00:00
thorpej ee76016e40 Make the sigcode no-profile. 2002-05-13 21:37:11 +00:00
matt 0a6d35b7ed Nuke local extern label_t *db_recover; it's now in <ddb/db_extern.h> 2002-05-13 20:30:07 +00:00
matt 3064b5ac0a Eliminate common. 2002-05-13 01:33:12 +00:00
lukem 4ec732199e nuke MD installboot (ok-ed by thorpej) 2002-05-08 04:09:46 +00:00
thorpej 9b846773b6 Revert revision 1.20. 2002-05-03 17:51:10 +00:00
thorpej c66b5e6e38 Revert revision 1.23. 2002-05-03 17:50:19 +00:00
lukem b933e511b1 nuke installboot.old / bootxx combo (the old "primary bootstrap with
hardcoded blocks of secondary bootstrap"); it was only used by the
distrib ustarfs stuff, and that now uses usr/sbin/installboot and ustarboot
2002-05-03 15:36:52 +00:00
eeh be9ab3e5db Provide _LP64 definition if we are generating LP64 binaries. 2002-05-03 00:06:55 +00:00
thorpej b094ff415f Change the semantics of mbuf external storage "ext_free" routines
so that they're more useful for arbitrary types of external storage:

* Add an "mbuf *" argument to (*ext_free)().  If non-NULL, (*ext_free)()
  is expected to free the mbuf itself.  This allows (*ext_free)() to use
  the mbuf for bookkeeping (e.g. deferring the work to a helper thread).
  If the "mbuf *" argument is NULL, we are assumed to be in a context
  which is safe for performing the destructor operation *now*.
* Adjust MEXTREMOVE() and MFREE() routines for above change.
* Update "ade" and "ti" drivers for new semantics.
2002-05-02 16:22:43 +00:00
thorpej d105d4c056 Move call to sched_unlock_idle to later in the context switch to
eliminate a race where another processor could grab the outgoing
process before we were done saving our state into it, with predictable
results.

Bug spotted on i386 by Frank van der Linden <fvdl@wasabisystems.com>.
2002-04-30 16:05:13 +00:00
thorpej e2a2842013 Keep track of which DMA window was actually used to map the
request (not always the passed in DMA tag if we try direct-map
and then fall back to sgmap-mapped).  Use the actual window
when performing dmamap_sync and dmamap_unload operations.

Fixes DMA resource leak on systems with 2G+ RAM.  Thanks to
Matt Thomas for help debugging this.
2002-04-26 04:15:18 +00:00
atatat d1b3852365 Add the INCLUDE_CONFIG_FILE option to all config files. In config
files that are generic (ie, GENERIC, GENERICSBC, GENERIC32, ALL, or
ALPHA), it is uncommented.
2002-04-25 15:06:20 +00:00
mycroft 558b4fb278 Switch from de to tlp by default. 2002-04-17 02:22:41 +00:00
mycroft 332493e8b7 These machines are gone. 2002-04-17 02:04:26 +00:00
thorpej eedd94475c * Move the mii_bitbang attribute into dev/mii/files.mii
* Pull in dev/mii/files.mii from conf/files, rather than playing
  the magic "files include order" dance in N machine-dependent
  configuration definitions.
2002-04-16 20:50:16 +00:00
gmcgarry 6e066ba77a Add commented-out USERCONF option. Mainly useful for install media
and can be optionally enabled based on miniroot and ramdisk size
requirements.
2002-04-12 08:10:45 +00:00
mycroft 15aef6da21 Oops; fix the second usage. 2002-04-10 04:19:47 +00:00
mycroft 9502007faf osf1_errno_rxlist[] -> native_to_osf1_errno[] 2002-04-10 04:18:31 +00:00