summaryrefslogtreecommitdiffstats
path: root/sys/alpha
Commit message (Collapse)AuthorAgeFilesLines
* - Handle mixer read ioctls correctly. They have the same group, number andluoqi1999-04-291-2/+29
| | | | | argument size as their write counterparts and were handled as write ioctls. - Emulate some cdrom ioctls.
* pmap_emulate_reference: don't ever lose PV_TABLE_MOD bit on page. Ifdt1999-04-281-2/+2
| | | | | | | | | PV_TABLE_REF cleared before PV_TABLE_MOD, the page may get fault on read again. On fault on write, pmap_emulate_reference mark the page dirty with vm_page_dirty. That decrease ill effects of the bug. The problem probably become more serious after my rev.1.18 a week ago.
* Enable vmspace sharing on SMP. Major changes are,luoqi1999-04-282-6/+7
| | | | | | | | | | | | | | | | | - %fs register is added to trapframe and saved/restored upon kernel entry/exit. - Per-cpu pages are no longer mapped at the same virtual address. - Each cpu now has a separate gdt selector table. A new segment selector is added to point to per-cpu pages, per-cpu global variables are now accessed through this new selector (%fs). The selectors in gdt table are rearranged for cache line optimization. - fask_vfork is now on as default for both UP and SMP. - Some aio code cleanup. Reviewed by: Alan Cox <alc@cs.rice.edu> John Dyson <dyson@iquest.net> Julian Elischer <julian@whistel.com> Bruce Evans <bde@zeta.org.au> David Greenman <dg@root.com>
* Change suser_xxx() to suser() where it applies.phk1999-04-271-2/+2
|
* Suser() simplification:phk1999-04-275-10/+10
| | | | | | | | | | | | | | | | | | | 1: s/suser/suser_xxx/ 2: Add new function: suser(struct proc *), prototyped in <sys/proc.h>. 3: s/suser_xxx(\([a-zA-Z0-9_]*\)->p_ucred, \&\1->p_acflag)/suser(\1)/ The remaining suser_xxx() calls will be scrutinized and dealt with later. There may be some unneeded #include <sys/cred.h>, but they are left as an exercise for Bruce. More changes to the suser() API will come along with the "jail" code.
* Register the netisr's via SYSINIT rather than linker sets.peter1999-04-261-16/+6
|
* Added used include.dt1999-04-251-1/+2
|
* Bump configvers; when the updates to generic/lint get committed, the oldpeter1999-04-241-2/+2
| | | | config has severe indigestion.
* Fix spelling of '#if 0'.dt1999-04-241-1/+1
|
* Make pmap_collect() an official pmap interface.dt1999-04-231-2/+1
|
* Moved cpu_set_fork_handler's prototype from <machine/cpu.h> to <sys/proc.h>.dt1999-04-231-2/+1
| | | | Suggested by: bde
* Fixed several (not all) warnings.dt1999-04-2312-93/+39
|
* Update VERSREQ.dfr1999-04-211-2/+2
|
* pmap_ts_referenced(): set fault on {read|execute|write} bits on the page on,dt1999-04-211-6/+8
| | | | | | so we will know when the page is accessed again. (Also, make it return an integer, not "boolean" TRUE/FALSE).
* Stage 1 of a cleanup of the i386 interrupt registration mechanism.peter1999-04-212-39/+4
| | | | | | | Interrupts under the new scheme are managed by the i386 nexus with the awareness of the resource manager. There is further room for optimizing the interfaces still. All the users of register_intr()/intr_create() should be gone, with the exception of pcic and i386/isa/clock.c.
* Added consts to cpu_set_fork_handler prototype. (Follow i386 version.)dt1999-04-202-5/+5
|
* alpha/include/param.h: #define NCPUS 1dt1999-04-202-7/+4
| | | | | | | alpha/include/lock.h: remove nop simplelock macros, which are defined in <sys/lock.h> if NCPUS == 1. As a result, NULL_SIMPLELOCK is defined, and a few warnings removed.
* unifdef -DVM_STACK - it's been on for a while for x86 and was checkedpeter1999-04-194-83/+4
| | | | and appeared to be working for the Alpha some time ago.
* Add commented out entries for ata driver now that it works on the alpha.dfr1999-04-192-2/+28
|
* Add seatbelts.dfr1999-04-191-2/+5
|
* Bring the 'new-bus' to the i386. This extensively changes the way thepeter1999-04-1617-91/+538
| | | | | | | | | | | | | | | | | | i386 platform boots, it is no longer ISA-centric, and is fully dynamic. Most old drivers compile and run without modification via 'compatability shims' to enable a smoother transition. eisa, isapnp and pccard* are not yet using the new resource manager. Once fully converted, all drivers will be loadable, including PCI and ISA. (Some other changes appear to have snuck in, including a port of Soren's ATA driver to the Alpha. Soren, back this out if you need to.) This is a checkpoint of work-in-progress, but is quite functional. The bulk of the work was done over the last few years by Doug Rabson and Garrett Wollman. Approved by: core
* zero out switchtime.tv_sec. This fixes a fairly serious problem wheregallatin1999-04-161-1/+2
| | | | processes were being charged for time when the system was idle.
* - Add another adhoc frame_size detection for stack trace.simokawa1999-04-161-8/+9
| | | | | egcs manupilates stack pointer with 'subq/addq' rather than 'lha'. - Surpress warnings
* Hopefully replicate the install.debug changes from the i386 version.peter1999-04-131-24/+15
|
* Initialize alpha_unaligned_* as I intended.simokawa1999-04-131-6/+6
| | | | I misunderstood SYSCTL_INT in previous revision.
* Control unaligned access handling via sysctl.simokawa1999-04-111-5/+13
|
* Don't define NMBCLUSTERS here.simokawa1999-04-111-8/+1
| | | | It will be defined as appropriate value depending on maxusers.
* Back out default debug kernel. The flags revert to historical behaviour.grog1999-04-111-5/+2
| | | | | | | | | | | | | | | Requested-by: ache bde dg Modify targets for debug kernels: when -g was specified, make will now build a debug kernel called kernel.debug, and create a stripped version called kernel at the same time. The two targets install and install.debug are otherwise unchanged. Requested-by: dillon Update man page accordingly.
* A quick fix to get kernels building again under EGCSgallatin1999-04-081-2/+4
|
* Make ASIX driver work on FreeBSD/alpha, add to GENERIC.wpaul1999-04-082-2/+4
|
* 1. Modify config to issue different code for debugging.grog1999-04-071-13/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2. Config complains if you use -g: Debugging is enabled by default, there is no ned to specify the -g option 3. Config warns you if you don't use -s: Building kernel with full debugging symbols. Do "config -s BSD" for historic partial symbolic support. To install the debugging kernel, do make install.debug (BSD was the name of the config file I used; I print out the same name). 4. Modify Makefile.i386, Makefile.alpha, Makefile.pc98 and config to work if a kernel name other than 'kernel' is specified. This is not absolutely necessary, but useful, and it was relatively easy. I now have a kernel called /crapshit :-) 5. Modify Makefile.i386, Makefile.alpha, Makefile.pc98 "clean" target to remove both the debug and normal kernel. 6. Modify all to install the stripped kernel by default and the debug kernel if you enter "make install.debug". 7. Update version number of Makefiles and config.
* Remove unused/unimplemented pmap_setdevram()msmith1999-04-071-6/+1
|
* Catch a case spotted by Tor where files mmapped could leave garbage in thejulian1999-04-051-5/+21
| | | | | | | | | | | | unallocated parts of the last page when the file ended on a frag but not a page boundary. Delimitted by tags PRE_MATT_MMAP_EOF and POST_MATT_MMAP_EOF, in files alpha/alpha/pmap.c i386/i386/pmap.c nfs/nfs_bio.c vm/pmap.h vm/vm_page.c vm/vm_page.h vm/vnode_pager.c miscfs/specfs/spec_vnops.c ufs/ufs/ufs_readwrite.c kern/vfs_bio.c Submitted by: Matt Dillon <dillon@freebsd.org> Reviewed by: Alan Cox <alc@freebsd.org>
* Restore support for executing BSD/OS binaries on the i386 by passingjdp1999-04-032-4/+4
| | | | | | | | the address of the ps_strings structure to the process via %ebx. For other kinds of binaries, %ebx is still zeroed as before. Submitted by: Thomas Stephens <tas@stephens.org> Reviewed by: jdp
* Make the Macronix driver work on FreeBSD/alpha and add to GENERIC.wpaul1999-04-012-2/+4
| | | | | | | Like the PNIC, we have to copy packet headers in the receive handler because the chip will only DMA to longword aligned buffers. Also do some mindor cleanups.
* Insert ifmedia_set() that I forgot and put in the vtophys() hack forwpaul1999-03-312-2/+4
| | | | | | the alpha. Now the ThunderLAN driver works on the alpha (both my sample cards check out.) Update the alpha GENERIC config to include ThunderLAN driver now that I've tested it.
* Fix some warnings.dfr1999-03-281-11/+1
|
* Fix a few warnings.dfr1999-03-281-11/+15
|
* Remove trigraph.dfr1999-03-281-2/+2
|
* Make the xl and pn drivers work on FreeBSD/alpha and add them towpaul1999-03-272-2/+6
| | | | | | | | | | | | | | | sys/alpha/conf/GENERIC. Note: the PNIC ignores the lower few bits of the RX buffer DMA address, which means we have to add yet another kludge to make it happy. Since we can't offset the packet data, we copy the first few bytes of the received data into a separate mbuf with proper alignment. This puts the IP header where it needs to be to prevent unaligned accesses. Also modified the PNIC driver to use a non-interrupt driven TX strategy. This improves performance somewhat on x86/SMP systems where interrupt delivery doesn't seem to be as fast with an SMP kernel as with a UP kernel.
* Don't lower the ipl for splsoftcam, splsoftvm and splsoftnet.dfr1999-03-191-5/+6
|
* Enable crashdumps on alphas.gallatin1999-03-121-1/+53
| | | | Reviewed by: Doug Rabson <dfr@nlsystems.com>
* Keyboard driver update in preparation for the USB keyboard driver.yokota1999-03-103-6/+16
| | | | | | | | | | | | | | | | | | | | | | | - Refined internal interface in keyboard drivers so that: 1. the side effect of device probe is kept minimal, 2. polling mode function is added, 3. and new ioctl and configuration options are added (see below). - Added new ioctl: KDSETREPEAT Set keyboard typematic rate. There has existed an ioctl command, KDSETRAD, for the same purpose. However, KDSETRAD is dependent on the AT keyboard. KDSETREPEAT provides more generic interface. KDSETRAD will still be supported in the atkbd driver. - Added new configuration options: ATKBD_DFLT_KEYMAP Specify a keymap to be used as the default, built-in keymap. (There has been undocumented options, DKKEYMAP, UKKEYMAP, GRKEYMAP, SWKEYMAP, RUKEYMAP, ESKEYMAP, and ISKEYMAP to set the default keymap. These options are now gone for good. The new option is more general.) KBD_DISABLE_KEYMAP_LOADING Don't allow the user to change the keymap.
* Expose a slightly-lower-level interface to timeouts which allows callerswollman1999-03-061-1/+3
| | | | | | | | to manage their own memory. Tested on my machine (make buildworld). I've made analogous changes on the alpha, but don't have a machine to test. Not-objected-to by: dg, gibbs
* Don't define MACHINE, MACHINE_ARCH, _MACHINE or _MACHINE_ARCH ifimp1999-03-011-1/+9
| | | | | | | | | already defined. This allows for cross building to work because we need to lie to make to tell it to use the target names rather than the host names. This should have no effect on either architecture. I've confirmed that the intel build by make buildworld's for the past 3 months.
* Removed all traces of `p_switchtime'. The relevant timestamp is per-cpu,bde1999-02-282-8/+2
| | | | | | | | | | | | | not per-process. Keep it in `switchtime' consistently. It is now clear that the timestamp is always valid in fork_trampoline() except when the child is running on a previously idle cpu, which can only happen if there are multiple cpus, so don't check or set the timestamp in fork_trampoline except in the (i386) SMP case. Just remove the alpha code for setting it unconditionally, since there is no SMP case for alpha and the code had rotted. Parts reviewed by: dfr, phk
* * Add support for hw.physmem and hw.usermem sysctls (this allows sysinstalldfr1999-02-271-2/+23
| | | | | | | | to calculate a reasonable size for the swap partition). * Fix a typo in remrq() where a process with idle priority would not be correctly removed from the relavent queue. Note that realtime and idle priorities are still not supported since the assembler code in cpu_switch() does not check the realtime and idle queues.
* Added a per-cpu variable `switchticks' for use in scheduling.bde1999-02-221-1/+2
|
* Introduce machine-dependent macro pgtok() to convert page count to numberluoqi1999-02-191-1/+3
| | | | | of kilobytes. Its definition for each architecture could be optimized to avoid potential numerical overflows.
* Hide access to vmspace:vm_pmap with inline function vmspace_pmap(). Thisluoqi1999-02-191-8/+8
| | | | | | | is the preparation step for moving pmap storage out of vmspace proper. Reviewed by: Alan Cox <alc@cs.rice.edu> Matthew Dillion <dillon@apollo.backplane.com>
OpenPOWER on IntegriCloud