summaryrefslogtreecommitdiffstats
path: root/sys/amd64
Commit message (Collapse)AuthorAgeFilesLines
* Reserve space for FPU state in struct sigcontext. Fix some style bugsmarcel1999-11-121-11/+18
| | | | | | and comments while there. Submitted by: bde
* Change the type of sf_addr in struct {o}sigframe from char* tomarcel1999-11-122-10/+11
| | | | | | | | register_t. Fix some style bugs and bitrotted comments. Submitted by: bde
* Passing "0" or "FALSE" as the fourth argument to vm_fault is wrong. Italc1999-11-091-4/+6
| | | | should be "VM_FAULT_NORMAL".
* Patch got this one wrong, we want to check securelevel in open()phk1999-11-071-5/+5
|
* Remove the iskmemdev() function. Make it the responsibility of the mem.cphk1999-11-071-14/+5
| | | | drivers to enforce the securelevel checks.
* Remove the prototypes for two functions that were removed when thejhb1999-11-021-3/+0
| | | | CD9660_ROOT option was axed.
* This is a complete rewrite of vfs_conf.c, which changes the way the rootmsmith1999-11-011-259/+26
| | | | | | | | | | | | | | filesystem is discovered. Preference is given to using the kernel environment variable vfs.root.mountfrom, which is set by the loader according to the contents of /etc/fstab. Changes in the MD code provide fallback mechanisms for systems not using the loader. A more robust fallback path is also provided, with the last recourse being to prompt on the console for a root device. These changes drastically simplify the machine-dependant parts of the root configuration process. In addition, support for CDROM root devices has been removed; it was a nasty hack and didn't work.
* Update examples using 'disk' and 'tape' - they used to have magic meaningpeter1999-11-011-6/+6
| | | | | | | to config(8) for static device tables that have not existed for quite some time. They have been aliases for 'device' for a while, and "tape" went away entirely as it wasn't used anywhere (except in an example in LINT.. "fixed").
* The useracc() calls in osigreturn() and sigreturn() should specifyalc1999-10-311-2/+2
| | | | | | | VM_PROT_READ rather than VM_PROT_WRITE. (This mistake predates the B_READ/B_WRITE -> VM_PROT_READ/VM_PROT_WRITE change.) Submitted by: bde
* i8254_restore is called from apm_default_resume() to reloadiwasaki1999-10-303-0/+45
| | | | | | | | | | | | the countdown register. this should not be necessary but there are broken laptops that do not restore the countdown register on resume. when it happnes, it messes up the hardclock interval and system clock, which leads to the infamous "calcru: negative time" problem. Submitted by: kjc, iwasaki Reviewed by: Steve O'Hara-Smith <steveo@eircom.net> and committers. Obtained from: PAO3
* The core of this patch is to vm/vm_page.h. The effects are two-fold: (1) toalc1999-10-301-2/+2
| | | | | | | | | eliminate an extra (useless) level of indirection in half of the page queue accesses and (2) to use a single name for each queue throughout, instead of, e.g., "vm_page_queue_active" in some places and "vm_page_queues[PQ_ACTIVE]" in others. Reviewed by: dillon
* Change useracc() and kernacc() to use VM_PROT_{READ|WRITE|EXECUTE} for thephk1999-10-302-5/+6
| | | | | | | | | "rw" argument, rather than hijacking B_{READ|WRITE}. Fix two bugs (physio & cam) resulting by the confusion caused by this. Submitted by: Tor.Egge@fast.no Reviewed by: alc, ken (partly)
* useracc() the prequel:phk1999-10-296-6/+0
| | | | | | | | | | | Merge the contents (less some trivial bordering the silly comments) of <vm/vm_prot.h> and <vm/vm_inherit.h> into <vm/vm.h>. This puts the #defines for the vm_inherit_t and vm_prot_t types next to their typedefs. This paves the road for the commit to follow shortly: change useracc() to use VM_PROT_{READ|WRITE} rather than B_{READ|WRITE} as argument.
* Remove #ifdef notyet code for doing I/O in a way we never will do it.phk1999-10-291-47/+0
|
* Modify the entries regarding the 'ep' driver to take into accountmdodd1999-10-271-6/+3
| | | | my recent changes to that driver.
* Add text for the AMD-751 host-to-PCI and PCI-to-PCI (AGP) bridges.alc1999-10-252-0/+10
|
* Massive rewrite of pccard to convert it to newbus.imp1999-10-251-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o Gut the compatibility interface, you now must attach with newbus. o Unit numbers from pccardd are now ignored. This may change the units assigned to a card. It now uses the first available unit. o kill old skeleton code that is now obsolete. o Use newbus attachment code. o cleanup interfile dependencies some. o kill list of devices per slot. we use the device tree for what we need. o Remove now obsolete code. o The ep driver (and maybe ed) may need some config file tweaks to allow it to attach. See config files that were committed for examples on how to do this. Drivers to be commited shortly. This is an interrum fix until the new pccard. ed, ep and sio will be supported by me with this release, although others are welcome to try to support other devices before new pccard is working. I plan on doing minimal further work on this code base. Be careful when upgrading, since this code is known to work on my laptop and those of a couple others as well, but your milage may vary. BUGS TO BE FIXED: o system memory isn't allocated yet, it will be soon. o No devices actually have a pccard newbus attach in the tree. BUGS THAT MIGHT BE FIXED: o card removal, including suspend, usually hangs the system. Many thanks to Peter Wemm and Doug Rabson for helping me to fill in the missing bits of New Bus understanding at FreeBSD Con '99.
* Add text for the Athlon's MMX and 3DNow! (DSP) instruction extensionsalc1999-10-241-2/+2
| | | | to print_AMD_features.
* Adjust the buffer cache to better handle small-memory machines. Adillon1999-10-241-1/+1
| | | | | | | | | | | | | slightly older version of this code was tested by BDE and I. Also fixes a lockup situation when kva gets too fragmented. Remove the maxvmiobufspace variable and sysctl, they are no longer used. Also cleanup (remove) #if 0 sections from prior commits. This code is more of a hack, but presumably the whole buffer cache implementation is going to be rewritten in the next year so it's no big deal.
* From: src/sys/i386/conf/PCCARDn_hibma1999-10-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | revision 1.21 date: 1999/10/15 17:29:20; author: imp; state: Exp; lines: +3 -3 Reorganize the attachement point for pcic (it was unattached and floating before). Attach pccard devices to pcic, one per slot (although this may change to one per pcic). pcic is now attached to isa (to act as a bridge) and pccard is attached to pcic, cbb and pc98ic (the last two are card bus bridge and the pc98ic version of pcic, neither of which are in the tree yet). Move pccard compat code into pccard/pccard_compat.c. THIS REQUIRES A CONFIG FILE CHANGE. You must change your pcic/card entries to be: # PCCARD (PCMCIA) support controller pcic0 at isa? controller pcic1 at isa? controller card0 The old system was upside down and this corrects that problem. It will make it easier to add support for YENTA pccard/card bus bridges. Much more cleanup needs to happen before newbus devices can have pccard attachments. My previous commit's comments were premature. Forgotten by: imp
* Remove pccard attachment stub, this caused pccard unit 0 to be allocatedpeter1999-10-192-10/+0
| | | | | | | and unusable by the pccard system since pccard doesn't attach to the nexus any more. This was stopping my 3c589D from working as pccard unit 0 is used directly for resource allocation and this fails when unit 0 isn't actually attached to anything.
* Convert the mx driver to miibus.wpaul1999-10-161-1/+1
| | | | | | | | | | | | | | In order to make this work, I created a pseudo-PHY driver to deal with Macronix chips that use the built-in NWAY support and symbol mode port. This is actually all of them, with the exception of the original MX98713 which presents its NWAY support via the MII serial interface. The mxphy driver actually manipulates the controller registers directly rather than using the miibus_readreg()/miibus_writereg() bus interface since there are no MII registers to read. The mx driver itself pretends that the NWAY interface is a PHY locayed at MII address 31 for the sole purpose of allowing the mxphy_probe() routine to know when it needs to attach to a host controller.
* Eliminate remaining part of incorrect PCI bus numbering sanity check on ↵tegge1999-10-153-21/+0
| | | | systems with more than one PCI bus.
* Acutally our style is "options\x20\x09".obrien1999-10-151-4/+4
| | | | | | | As BDE says: "options\x09\x09foo" looks quite different from "options\x20\x09foo" after adding a one or two character prefix. Notice by: BDE
* * Implement bus_set/get/delete_resource for pci.dfr1999-10-141-2/+1
| | | | | | | * Change the hack used on the alpha for mapping devices into DENSE or BWX memory spaces to a simpler one. Its still a hack and should be a seperate api to explicitly map the resource. * Add $FreeBSD$ as necessary.
* * Add some verbose logging to the PnP parser and fix a couple of bugs.dfr1999-10-141-25/+48
| | | | | | | | | | | * Move pnp_eisaformat() to pnp.c, declared in <isa/pnpvar.h>. * Turn the pnpbios code into an enumerator for the isa bus. This allows all devices known to the bios to be probed automatically. Currently the pnpbios code is dependant on the PNPBIOS option. As the code is tested more and when more drivers are converted this will be made the default. I have PnP changes in the wings for fdc, atkbd, psm, pcaudio, and joy. Sio already works with pnpbios.
* Recognize Pentium II w/ CPUID = 0x6XX and Pentium III Xeon w/ CPUID =kato1999-10-141-2/+2
| | | | | | 0x7XX. Pointed out by: Brian Somers <brian@Awfulhak.org>
* Like it or not, we use ^I's not 0x20 to align things in this file.obrien1999-10-141-5/+5
|
* Fix a security bug. eflags was copied verbatim from userland.marcel1999-10-131-1/+2
| | | | Submitted by: bde
* Enable MTRR support for K7 (Athlon) processors, which happens to have thegreen1999-10-121-3/+4
| | | | | | | | | same interface as Intel's P6 family has. Incidentally, I had disabled it in the first place since I knew the K7s were coming out soon but did not want to assume they'd have the same MTRR interface as Intel's chips. Submitted by: Ville-Pertti Keinonen <will@iki.fi>
* * Add struct resource_list* argument to resource_list_alloc anddfr1999-10-121-11/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | resource_list_release. This removes the dependancy on the layout of ivars. * Move set_resource, get_resource and delete_resource from isa_if.m to bus_if.m. * Simplify driver code by providing wrappers to those methods: bus_set_resource(dev, type, rid, start, count); bus_get_resource(dev, type, rid, startp, countp); bus_get_resource_start(dev, type, rid); bus_get_resource_count(dev, type, rid); bus_delete_resource(dev, type, rid); * Delete isa_get_rsrc and use bus_get_resource_start instead. * Fix a stupid typo in isa_alloc_resource reported by Takahashi Yoshihiro <nyan@FreeBSD.org>. * Print a diagnostic message if we can't assign resources to a PnP device. * Change device_print_prettyname() so that it doesn't print "(no driver assigned)-1" for anonymous devices.
* Now that userland, including modules don't use the osig* syscallsmarcel1999-10-121-0/+1
| | | | | and the kernel itself doesn't use any SYS_osig* constants, change the syscalls to be of type COMPAT.
* Add a per-signal flag to mark handlers registered with osigaction, so weluoqi1999-10-118-81/+85
| | | | | | | | | | | | | | | can provide the correct context to each signal handler. Fix broken sigsuspend(): don't use p_oldsigmask as a flag, use SAS_OLDMASK as we did before the linuxthreads support merge (submitted by bde). Move ps_sigstk from to p_sigacts to the main proc structure since signal stack should not be shared among threads. Move SAS_OLDMASK and SAS_ALTSTACK flags from sigacts::ps_flags to proc::p_flag. Move PS_NOCLDSTOP and PS_NOCLDWAIT flags from proc::p_flag to procsig::ps_flag. Reviewed by: marcel, jdp, bde
* Trim some unused #includespeter1999-10-111-4/+0
| | | | Submitted by: phk
* Zap unneeded #includespeter1999-10-1112-27/+1
| | | | Submitted by: phk
* Simplification of the signal trampoline and other cleanups.marcel1999-10-079-94/+85
| | | | | | | | | | | | | | | o Remove unused defines from genassym.c that were needed by the trampoline. o Add load_gs_param function to support.s that catches a fault when %gs is loaded with an invalid descriptor. The function returns EFAULT in that case. o Remove struct trapframe from mcontext_t and replace it with the list of registers. o Modify sendsig and sigreturn accordingly. This commit contains a patch by bde. Reviewed by: luoqi, jdp
* Re-introduction of sigcontext.marcel1999-10-044-39/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | struct sigcontext and ucontext_t/mcontext_t are defined in such a way that both (ie struct sigcontext and ucontext_t) can be passed on to sigreturn. The signal handler is still given a ucontext_t for maximum flexibility. For backward compatibility sigreturn restores the state for the alternate signal stack from sigcontext.sc_onstack and not from ucontext_t.uc_stack. A good way to determine which value the application has set and thus which value to use, is still open for discussion. NOTE: This change should only affect those binaries that use sigcontext and/or ucontext_t. In the source tree itself this is only doscmd. Recompilation is required for those applications. This commit also fixes a lot of style bugs without hopefully adding new ones. NOTE: struct sigaltstack.ss_size now has type size_t again. For some reason I changed that into unsigned int. Parts submitted by: bde sigaltstack bug found by: bde
* Use the rev 1.1.2.1 code from RELENG_3 for atomic operations ratherpeter1999-10-041-19/+38
| | | | than the non-atomic C macros.
* Typo: s/__GNUC_MINOR_/__GNUC_MINOR__/peter1999-10-041-1/+1
| | | | (__GNUC_MINOR__ on egcs in -current is "91" and is going to be "95" soon)
* Fix style bug: order includesmarcel1999-10-041-1/+1
| | | | Submitted by: bde
* Allow compilation with older versions of GCC, in order to make it possibleeivind1999-10-031-0/+23
| | | | to bootstrap and work with -current from older versions of FreeBSD.
* Reinstate the 4th argument to old signal handlers. Don't set itmarcel1999-10-031-2/+2
| | | | when the handler uses siginfo_t.
* Fix style bugs caused by using the wrong file to copy from. That onemarcel1999-10-031-4/+12
| | | | | | | gets fixed later on. Reinstate the mysterious 4th argument to signal handlers and add some comments on that.
* Implement the use of si_addr in siginfo_t.marcel1999-10-011-0/+1
| | | | Suggested by: jdp
* Don't check %cs *after* it has being set in sigreturn. If the checkmarcel1999-10-011-5/+6
| | | | | | fails, applications could end up running in kernel mode (oops). Submitted by: bde
* sigset_t change (part 3 of 5)marcel1999-09-2910-158/+505
| | | | | | | | | | | | | | | | | | | | | | | | | | ----------------------------- By introducing a new sigframe so that the signal handler operates on the new siginfo_t and on ucontext_t instead of sigcontext, we now need two version of sendsig and sigreturn. A flag in struct proc determines whether the process expects an old sigframe or a new sigframe. The signal trampoline handles which sigreturn to call. It does this by testing for a magic cookie in the frame. The alpha uses osigreturn to implement longjmp. This means that osigreturn is not only used for compatibility with existing binaries. To handle the new sigset_t, setjmp saves it in sc_reserved (see NOTE). the struct sigframe has been moved from frame.h to sigframe.h to handle the complex header dependencies that was caused by the new sigframe. NOTE: For the i386, the size of jmp_buf has been increased to hold the new sigset_t. On the alpha this has been prevented by using sc_reserved in sigcontext.
* Fix from Tor so that if we enter the debugger in the tristate going tomjacob1999-09-251-0/+1
| | | | | | SMP (other CPUs stopped but SMP mode not really started). Obtained from:Tor.Egge@fast.no
* Fix from Tor so that if we enter the debugger in the tristate going tomjacob1999-09-251-1/+1
| | | | | | SMP (other CPUs stopped but SMP mode not really started). Obtained from: Tor.Egge@fast.no
* Remove five now unused fields from struct cdevsw. They should neverphk1999-09-251-5/+0
| | | | | | | | have been there in the first place. A GENERIC kernel shrinks almost 1k. Add a slightly different safetybelt under nostop for tty drivers. Add some missing FreeBSD tags
* Display CPU (BSP) clock speed on SMP systems.luoqi1999-09-221-4/+0
|
OpenPOWER on IntegriCloud