Commit Graph

2077 Commits

Author SHA1 Message Date
is 87374696f2 remove forgotten debug printf from development. 2004-01-10 21:38:32 +00:00
he 38d0807d97 Make these compile again after the latest adjustments. 2004-01-06 18:46:07 +00:00
jandberg e478eb702e Keymap updates.
- us/de keymaps based on ite keymaps, converted by Gunther Nikl
  (with slight adjustments by me)
- es/fr/sv keymaps similarly based on ite keymaps
- removed the commented out keymaps
- some small fixes to the rest of the existing keymaps
2004-01-04 19:20:43 +00:00
wiz a5bf3b3c4c Spell controller with two ls. Inspired by miod@openbsd. 2004-01-04 16:19:43 +00:00
jdolecek 089abdad44 Rearrange process exit path to avoid need to free resources from different
process context ('reaper').

From within the exiting process context:
* deactivate pmap and free vmspace while we can still block
* introduce MD cpu_lwp_free() - this cleans all MD-specific context (such
  as FPU state), and is the last potentially blocking operation;
  all of cpu_wait(), and most of cpu_exit(), is now folded into cpu_lwp_free()
* process is now immediatelly marked as zombie and made available for pickup
  by parent; the remaining last lwp continues the exit as fully detached
* MI (rather than MD) code bumps uvmexp.swtch, cpu_exit() is now same
  for both 'process' and 'lwp' exit

uvm_lwp_exit() is modified to never block; the u-area memory is now
always just linked to the list of available u-areas. Introduce (blocking)
uvm_uarea_drain(), which is called to release the excessive u-area memory;
this is called by parent within wait4(), or by pagedaemon on memory shortage.
uvm_uarea_free() is now private function within uvm_glue.c.

MD process/lwp exit code now always calls lwp_exit2() immediatelly after
switching away from the exiting lwp.

g/c now unneeded routines and variables, including the reaper kernel thread
2004-01-04 11:33:29 +00:00
thorpej a963286f8d More wdc_channel structure member namespace cleanup:
- channel -> ch_channel
- wdc -> ch_wdc
2004-01-03 22:56:52 +00:00
thorpej 5bd80d8373 Rename "struct channel_softc" to "struct wdc_channel". 2004-01-03 01:50:52 +00:00
thorpej 527c829fa0 Rename:
- wdc_xfer to ata_xfer
- channel_queue to ata_queue
and move them to <dev/ata/atavar.h> so they can be used by non-wdc ATA
controllers.  Clean up the member names of these structures while at it.
2004-01-01 17:18:53 +00:00
thorpej b5b951b13e Simplify allocation of the channel queue. 2003-12-31 02:41:22 +00:00
pk 70f20a1217 Replace the traditional buffer memory management -- based on fixed per buffer
virtual memory reservation and a private pool of memory pages -- by a scheme
based on memory pools.

This allows better utilization of memory because buffers can now be allocated
with a granularity finer than the system's native page size (useful for
filesystems with e.g. 1k or 2k fragment sizes).  It also avoids fragmentation
of virtual to physical memory mappings (due to the former fixed virtual
address reservation) resulting in better utilization of MMU resources on some
platforms.  Finally, the scheme is more flexible by allowing run-time decisions
on the amount of memory to be used for buffers.

On the other hand, the effectiveness of the LRU queue for buffer recycling
may be somewhat reduced compared to the traditional method since, due to the
nature of the pool based memory allocation, the actual least recently used
buffer may release its memory to a pool different from the one needed by a
newly allocated buffer. However, this effect will kick in only if the
system is under memory pressure.
2003-12-30 12:33:13 +00:00
is cbe2f83110 man/prod id submitted by Pavel Chwalowski in PR 23789. 2003-12-19 22:33:30 +00:00
jmc 695a2a2f9f Change reference at bottom from sys/dev/majors to sys/conf/majors to match
reality
2003-12-10 02:04:00 +00:00
is 3419480b86 2nd half of new wdc register mapping 2003-12-07 20:59:00 +00:00
is f15cf5f5b3 adapt to the new world of wdc register mappings 2003-12-07 20:05:03 +00:00
atatat 13f8d2ce5f Dynamic sysctl.
Gone are the old kern_sysctl(), cpu_sysctl(), hw_sysctl(),
vfs_sysctl(), etc, routines, along with sysctl_int() et al.  Now all
nodes are registered with the tree, and nodes can be added (or
removed) easily, and I/O to and from the tree is handled generically.

Since the nodes are registered with the tree, the mapping from name to
number (and back again) can now be discovered, instead of having to be
hard coded.  Adding new nodes to the tree is likewise much simpler --
the new infrastructure handles almost all the work for simple types,
and just about anything else can be done with a small helper function.

All existing nodes are where they were before (numerically speaking),
so all existing consumers of sysctl information should notice no
difference.

PS - I'm sorry, but there's a distinct lack of documentation at the
moment.  I'm working on sysctl(3/8/9) right now, and I promise to
watch out for buses.
2003-12-04 19:38:21 +00:00
jandberg 79eacc067d amidisplaycc.c:
Add screen types suitable for PAL displays, and fix typos
	in older screen type names; reported by Gunther Nikl.
amidisplay.4:
	Document the new screen types and add some misc information.
2003-11-12 17:42:40 +00:00
jandberg 3f581624a0 Fix bug/typo and rewrite some funnily structured code.
Pointed out by compiler warnings.
2003-11-12 17:26:36 +00:00
wiz ee1b406595 Spell address with two d's. Inspired by similar changes in OpenBSD,
originating from Jonathon Gray and forwarded by jmc@openbsd.
2003-11-10 08:51:51 +00:00
tsutsui 81d609b1f5 Remove obsolete comments about curproc. 2003-11-08 12:17:25 +00:00
dsl 2ffbd2ab99 Remove p_nras from struct proc - use LIST_EMPTY(&p->p_raslist) instead.
Remove p_raslock and rename p_lwplock p_lock (one lock is enough).
Simplify window test when adding a ras and correct test on VM_MAXUSER_ADDRESS.
Avoid unpredictable branch in i386 locore.S
(pad fields left in struct proc to avoid kernel bump)
2003-11-04 10:33:15 +00:00
jdolecek 917bc10805 g/c local index() routine and switch to (libkern's) strchr() 2003-11-01 12:56:32 +00:00
cl ef56cc40ab Reduce code duplication by adding mi_userret() in sys/userret.h
containing signal posting, kernel-exit handling and sa_upcall processing.

XXX the pc532, sparc, sparc64 and vax ports should have their
XXX userret() code rearranged to use this.
2003-10-31 16:44:34 +00:00
bouyer 2564505612 In sci_scsipi_request, add a splbio() which was erroneously missed when
thorpej_scsipi was integrated. Pointed out by Havard Eidnes.
2003-10-31 14:38:44 +00:00
mhitch c2a45d015c Fix uninitialized variable. 2003-10-27 09:56:56 +00:00
mhitch 4d65fcd111 Fix errors in processing the ELF sections. Gcc3 generated a .comment section
which was erroneously being added to the boot image size and loaded into the
boot image.
2003-10-26 20:57:37 +00:00
lukem f85d2d1c14 Use ${HOST_SH} instead of `sh'.
If necessary, pull in <bsd.sys.mk> to get the definition of HOST_SH;
Makefiles that pull in one of (most of) <bsd.*.mk> will get this anyway.
2003-10-26 07:25:33 +00:00
lukem 1d866c2496 use ${PRINTOBJDIR} 2003-10-26 03:49:11 +00:00
jandberg 5210c06ca0 Add polish wscons keymaps for amiga.
From Pawel Chwalowski in port-amiga/22961.
2003-10-25 10:02:05 +00:00
mhitch b83111d3cb Use -Os to shrink bootblock code a little more. Now bootxx_fd builds with
gcc 3.3.2.
2003-10-25 03:14:33 +00:00
jdolecek 821f341675 add necessary majors for miscellaneous devices, such as missing
wscons/scsi/isdn devices
2003-10-24 08:18:36 +00:00
jdolecek ee510816af add wsfont major to archs which have the other wscons devices 2003-10-22 16:53:22 +00:00
fvdl a08babb013 NULL -> 0 for preempt() argument. 2003-10-21 00:49:34 +00:00
jdolecek ef5bb330f5 reassing majors for crypto and pf to use the newly defined MI major
range
2003-10-10 22:42:39 +00:00
jdolecek 4e915c9ccd update the comment - the space for machine-dependant majors
is reduced to 0-143
follows discussion on tech-kern
2003-10-10 21:21:25 +00:00
bouyer 8efe26b8cd Adapt for wdcattach() prototype change. 2003-10-08 11:04:32 +00:00
bouyer 102fb2528b Regen: add atabus 2003-10-08 11:03:55 +00:00
bouyer 0a88b9caa1 Add atabus 2003-10-08 11:02:45 +00:00
thorpej 68723a995b * Shuffle some data structures so, and add a flags word to ksiginfo_t.
Right now the only flag is used to indicate if a ksiginfo_t is a
  result of a trap.  Add a predicate macro to test for this flag.
* Add initialization macros for ksiginfo_t's.
* Add accssor macro for ksi_trap.  Expands to 0 if the ksiginfo_t was
  not the result of a trap.  This matches the sigcontext trapcode semantics.
* In kpsendsig(), use KSI_TRAP_P() to select the lwp that gets the signal.
  Inspired by Matthias Drochner's fix to kpsendsig(), but correctly handles
  the case of non-trap-generated signals that have a > 0 si_code.

This patch fixes a signal delivery problem with threaded programs noted by
Matthias Drochner on tech-kern.

As discussed on tech-kern.  Reviewed and OK's by Christos.
2003-10-08 00:28:40 +00:00
jdolecek e6286b949a Add some framework for MI assignment of device majors - add sys/dev/majors
which is automatically included during kernel config, and add comments
to individual machine-dependant majors.* files to assign new MI majors
in MI file.

Range 0-191 is reserved for machine-specific assignments, range
192+ are MI assignments.

Follows recent discussion on tech-kern@
2003-10-05 08:04:24 +00:00
mhitch 28527002f8 Cast through (void *) to appease gcc3. 2003-09-27 19:34:17 +00:00
mycroft eefae40298 Hide the use of config_interrupts() in one place. 2003-09-25 19:29:48 +00:00
jandberg bc88a03488 regen after wsmouse addition 2003-09-22 18:29:05 +00:00
jandberg 05be5081d9 added wsmouse 2003-09-22 18:23:01 +00:00
jandberg 448afe509a add wscons support to amiga mouse 2003-09-22 18:17:30 +00:00
cl 4169237230 SA_SIGINFO support for m68k (port specific changes) 2003-09-22 14:26:57 +00:00
cl 20dfd3bdde regen 2003-09-22 14:12:29 +00:00
cl a4186d3dd8 add COMPAT_15/COMPAT_16 2003-09-22 14:11:15 +00:00
jdolecek 7cea8a1389 cleanup & uniform descriptor owner handling:
* introduce fsetown(), fgetown(), fownsignal() - this sets/retrieves/signals
  the owner of descriptor, according to appropriate sematics
  of TIOCSPGRP/FIOSETOWN/SIOCSPGRP/TIOCGPGRP/FIOGETOWN/SIOCGPGRP ioctl; use
  these routines instead of custom code where appropriate
* make every place handling TIOCSPGRP/TIOCGPGRP handle also FIOSETOWN/FIOGETOWN
  properly, and remove the translation of FIO[SG]OWN to TIOC[SG]PGRP
  in sys_ioctl() & sys_fcntl()
* also remove the socket-specific hack in sys_ioctl()/sys_fcntl() and
  pass the ioctls down to soo_ioctl() as any other ioctl

change discussed on tech-kern@
2003-09-21 19:16:48 +00:00
mycroft d40837608f 1) Use config_interrupts() to attach IDE and ATAPI drives. This eliminates
most polling.
2) Clean up some goofiness in pciide -- get rid of the whole "candisable" path
   (it's gratuitous) and simplify the code by calling pciide_map_compat_intr(),
   *_set_modes() and wdc_print_modes() from central locations.
3) Add a register writability and register ghost test to eliminate phantom
   drives more quickly.
2003-09-19 21:35:56 +00:00
cl 3c10927ebe add MD part of SA/pthread pagefault handling on all m68k ports 2003-09-17 23:17:39 +00:00