summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Everyone's favorite, i think: make DDB understand the arrow keys for thejoerg1997-04-121-1/+38
| | | | | basic cursor movements. Assumes ANSI/DEC tty, but you can still resort to plain emacs ^p/^n etc anyway.
* Effectively remove the previous commit to fix threads forking. Thedyson1997-04-121-3/+7
| | | | change was a false-start, and needs more work.
* Allow a kernel-supported process thread to do an exec without blastingdyson1997-04-111-7/+24
| | | | away the VM space of all of the other, associated threads.
* Deleted ddb_inb and ddb_outb functions that provide I/O accesskato1997-04-111-18/+1
| | | | | routines as function for DDB. The inb and outb are provided as functions in machdep.c when DDB is defined.
* Synchronize with sys/i386/isa/syscons.c revision 1.209.kato1997-04-111-10/+6
|
* Drop the number of allowed tags back down to 8. Pluto uses a higher valuegibbs1997-04-101-17/+17
| | | | | | | | | | which mistakenly got committed. Fix two bugs in the ahc_reset_device code: Limit search for SCBs to process to those that are active and are not queued for done processing. It's okay for an SCB to not have a waiting next SCB.
* aic7xxx.seq:gibbs1997-04-104-13/+16
| | | | | | | | | | | | Be consistant about testing for parity errors after waiting for a REQ on the bus. Don't ack the last byte in a transaction until after we've cleared all target state. aic7xxx_asm.c: Test the return value of getopt against -1 not EOF. (Yet another shameless victum of the style guide being wrong).
* Get the declaration of `struct dirent' from <sys/dirent.h>, not frombde1997-04-103-23/+12
| | | | | | <sys/dir.h>, and use the new macro GENERIC_DIRSIZ() instead of DIRSIZ(). Removed unused #includes.
* Get the declaration of `struct dirent' from <sys/dirent.h>, not frombde1997-04-102-10/+8
| | | | | | | | | <sys/dir.h>. Removed unused #include. Fixed type and order of struct members in pseudo-declaration of `struct vop_readdir_args'.
* Removed unused or apparently-unused #includes, especially of thebde1997-04-104-58/+4
| | | | deprecated header <sys/dir.h>.
* Deprecated <sys/dir.h> some more - changed the comment saying thatbde1997-04-102-20/+24
| | | | | | | | | | <dirent.h> should be used instead to a warning. If this causes too many warnings in ports then it should be changed back after checking some ports for related configuration errors. Moved the definition of DIRSIZ() from <sys/dir.h> to <sys/dirent.h> so that it can be used in the kernel without including <sys/dir.h>. Renamed it in some cases to avoid new namespace pollution.
* Use smalllblktosize() instead of multiplying small block numbersbde1997-04-101-4/+4
| | | | | by fs->fs_bsize. The macro is usually faster and makes it clearer that the multiplication can't overflow.
* Preserve some bits in the keyboard controller command byte whenyokota1997-04-103-30/+18
| | | | | | | | | | | | resetting the keyboard. Well, sorry, this bug is totally my fault. I DID intend to preserve them, but somehow I failed. The bug puts some old keyboard controllers in a strange state, resulting in keyboard freeze or random key input. The fix closes PR kern/3067.
* Removed support for OLD_PIPE. <sys/stat.h> is now missing the hack thatbde1997-04-094-71/+4
| | | | | supported nameless pipes being indistinguishable from fifos. We're not going back.
* Distinguish fifos from sockets in the S_IS* macros. This is possible nowbde1997-04-091-6/+6
| | | | | | | that nameless pipes are not implemented as sockets. Don't include <sys/time.h> if KERNEL is defined. It should already have been included by including <sys/param.h>. Fixed a nearby typo.
* Regenerate (removed unused #includes from ibcs2*_sysent.c).bde1997-04-098-14/+8
|
* Removed unused #includes.bde1997-04-093-9/+3
|
* Regenerate (removed unused #includes in linux_sysent.c).bde1997-04-093-5/+3
|
* Removed unused #includes.bde1997-04-092-6/+2
|
* Include <sys/buf.h> instead of <sys/vnode.h>. kern_sysctl.c nobde1997-04-091-2/+2
| | | | | | | longer has anything to do with vnodes and never had anything to do with buffers, but it needs the definitions of B_READ and B_WRITE for use with the bogus useracc() interface and was getting them bogusly due to excessive cleanups in rev.1.49.
* Mask out revision register in consistency test of class register.se1997-04-096-12/+12
|
* Fix spelling of align and interrupt in comments.se1997-04-096-36/+36
|
* Fix consistency test to not fail on pre PCI 2.0 motherboardsse1997-04-096-12/+12
|
* Added lnc driver.kato1997-04-082-2/+4
|
* Enables lnc driver on PC-98 to support NEC SV-98/2-B06 PCI card.kato1997-04-084-4/+10
| | | | | Cascade mode of DMA is disabled when PC98 is defined because PC-98 doesn't support it.
* Fix an infinite loop caused by calling ahc_run_done queue while thegibbs1997-04-071-3/+32
| | | | | | driver is waiting a bus settle delay. There should really be a facility for the controller driver to "freeze" its queue during recovery operations which would make all of this gymnastics unnecessary.
* Lower the spl() of the new process from splhigh() right away, sincepeter1997-04-073-6/+27
| | | | | | | | | nothing else will lower it until either much later, or never(?) for kernel processes. This basically re-fixes what Bruce fixed in rev 1.29 of kern_fork.c, which was broken again now the child does not execute back up the fork() calling tree.
* Synchronize with sys/i386/i386{machdep.c,trap.c} revisions 1.236 andkato1997-04-073-36/+69
| | | | 1.91, respectively.
* Synchronize with sys/i386/isa/clock.c revision 1.80.kato1997-04-073-15/+30
|
* Remove explicit zero of p_vmspace on creation, it's now in the startzeropeter1997-04-071-6/+1
| | | | section of the proc struct.
* Move p_vmspace into the startzero section since we've just changed thingspeter1997-04-071-2/+3
| | | | and may as well get it over and done with.
* Use UPAGES_HOLE instead of UPAGES in case it's changed some time.peter1997-04-074-10/+10
| | | | | | | | | Rename the PT* index KSTK* #defines to UMAX*, since we don't have a kernel stack there any more.. These are used to calculate VM_MAXUSER_ADDRESS and USRSTACK, and really do not want to be changed with UPAGES since BSD/OS 2.x binary compatability depends on it.
* Define UPAGES_HOLE at 2 (same as current UPAGES) in case UPAGES changespeter1997-04-071-1/+3
| | | | later. This is used to calculate the top of user address space.
* Clean up some dead wood. Kill the page table page for mapping thepeter1997-04-073-72/+6
| | | | | proc0/idlePTD/bootstrap stack into place in user space. We save 4K. Remove p0upa, it is now unneeded.
* The biggie: Get rid of the UPAGES from the top of the per-process addresspeter1997-04-0731-340/+531
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | space. (!) Have each process use the kernel stack and pcb in the kvm space. Since the stacks are at a different address, we cannot copy the stack at fork() and allow the child to return up through the function call tree to return to user mode - create a new execution context and have the new process begin executing from cpu_switch() and go to user mode directly. In theory this should speed up fork a bit. Context switch the tss_esp0 pointer in the common tss. This is a lot simpler since than swithching the gdt[GPROC0_SEL].sd.sd_base pointer to each process's tss since the esp0 pointer is a 32 bit pointer, and the sd_base setting is split into three different bit sections at non-aligned boundaries and requires a lot of twiddling to reset. The 8K of memory at the top of the process space is now empty, and unmapped (and unmappable, it's higher than VM_MAXUSER_ADDRESS). Simplity the pmap code to manage process contexts, we no longer have to double map the UPAGES, this simplifies and should measuably speed up fork(). The following parts came from John Dyson: Set PG_G on the UPAGES that are now in kernel context, and invalidate them when swapping them out. Move the upages object (upobj) from the vmspace to the proc structure. Now that the UPAGES (pcb and kernel stack) are out of user space, make rfork(..RFMEM..) do what was intended by sharing the vmspace entirely via reference counting rather than simply inheriting the mappings.
* No longer use an i386tss as the basis of our pcb - it wasn't particularlypeter1997-04-079-116/+68
| | | | | | | | | | | | | | | | convenient and makes life difficult for my next commit. We still need an i386tss to point to for the tss slot in the gdt, so we use a common tss shared between all processes. Note that this is going to break debugging until this series of commits is finished. core dumps will change again too. :-( we really need a more modern core dump format that doesn't depend on the pcb/upages. This change makes VM86 mode harder, but the following commits will remove a lot of constraints for the VM86 system, including the possibility of extending the pcb for an IO port map etc. Obtained from: bde
* Documented new serial console flags.bde1997-04-073-15/+69
| | | | | | | | Removed dead serial console options. Reorganised sio and serial console options. Added undocumented options CLUSTERDEBUG and NPX_DEBUG.
* Commit a typo fix that's been sitting in my tree for ages, quite forgotten.peter1997-04-061-2/+2
| | | | | | | | | The typo was detected once apon a time with the -Wunused compile option. The result was that a block of code for implementing madvise(.. MADV_SEQUENTIAL..) behavior was "dead" and unused, probably negating the effect of activating the option. Reviewed by: dyson
* Fixes to ibcs2_getdents, including using struct dirent instead ofdfr1997-04-061-27/+101
| | | | | | | | | struct direct, not using UFS' definition of DIRBLKSIZ, using directory seek cookies to make reading non-UFS directories reliable (e.g. cd9660, ext2fs). A special thanks to Robert Eckardt for providing an ISC binary of GNU ls so that I could test these changes.
* Prevent wedging of the stat clock because of missed interrupts.mckay1997-04-065-25/+50
| | | | | | This should cure the "alternate system clock has died!" problem. Discussed with: bde, joerg
* Synchronize with sys/i386/i386/trap.c revision 1.89.kato1997-04-061-7/+7
|
* Make MOD_* macros almost consistent:dufault1997-04-0614-63/+93
| | | | | | | | | | | | | | | | | | | | Use the name argument almost the same in all LKM types. Maintain the current behavior for the external (e.g., modstat) name for DEV, EXEC, and MISC types being #name ## "_mod" and SYCALL and VFS only #name. This is a candidate for change and I vote just the name without the "_mod". Change the DISPATCH macro to MOD_DISPATCH for consistency with the other macros. Add an LKM_ANON #define to eliminate the magic -1 and associated signed/unsigned warnings. Add MOD_PRIVATE to support wcd.c's poking around in the lkm structure. Change source in tree to use the new interface. Reviewed by: Bruce Evans
* Make MOD_* macros almost consistent:dufault1997-04-0611-31/+33
| | | | | | | | | | | | | | | | | | | | Use the name argument almost the same in all LKM types. Maintain the current behavior for the external (e.g., modstat) name for DEV, EXEC, and MISC types being #name ## "_mod" and SYCALL and VFS only #name. This is a candidate for change and I vote just the name without the "_mod". Change the DISPATCH macro to MOD_DISPATCH for consistency with the other macros. Add an LKM_ANON #define to eliminate the magic -1 and associated signed/unsigned warnings. Add MOD_PRIVATE to support wcd.c's poking around in the lkm structure. Change source in tree to use the new interface. Reviewed by: Bruce Evans
* Remove dependancy on UFS' DIRBLKSIZ definition.dfr1997-04-062-12/+4
| | | | | | 2.2 candidate. Submitted by: bde
* Make vm_map_protect be more complete about map simplification. Thisdyson1997-04-061-2/+4
| | | | | | is useful when a process changes it's page range protections very much. Submitted by: Alan Cox <alc@cs.rice.edu>
* Correction to the prototype for vm_fault.dyson1997-04-061-2/+2
|
* Fix the gdb executable modify problem. Thanks to the detective workdyson1997-04-069-198/+146
| | | | | | | | | | | | by Alan Cox <alc@cs.rice.edu>, and his description of the problem. The bug was primarily in procfs_mem, but the mistake likely happened due to the lack of vm system support for the operation. I added better support for selective marking of page dirty flags so that vm_map_pageable(wiring) will not cause this problem again. The code in procfs_mem is now less bogus (but maybe still a little so.)
* Instead of testing for both SELDI and SELDO in SSTAT0 in the poll for workgibbs1997-04-051-5/+5
| | | | | | | | loop, test for them separately. The bug report from David Malone showed that even though we had been reselected (SELDI was true), we sat in the poll for work loop until the selection timeout timer expired. It may be that the SSTAT0 register doesn't like to have more than one bit tested at a time. I've seen stranger things than this on these parts.
* Fix a bug in the selection timeout handler that was introduced when thegibbs1997-04-051-38/+52
| | | | | | | | | selection loop was merged with the poll_for_work loop. We cannot assume that the SCB for the selection timeout is the current SCB. Instead we must look at the SCB at the head of the waiting for selection list. This fixes part of a problem reported by David Malone, but does not explain why he was getting selection timeouts in the first place.
* Change IPX to use the pr_usrreqs structure.jhay1997-04-055-414/+565
|
OpenPOWER on IntegriCloud