summaryrefslogtreecommitdiff
path: root/sys/arch/i386/include
AgeCommit message (Collapse)Author
2004-04-02K6-2/3 powernow driver. not without quirks, but mostly working.Ted Unangst
testing by david@ ok deraadt@
2004-02-19- split intel686_cpu_setup() into two parts: common for familyAlexander Yurchenko
0x6 and 0xf and only for family 0x6 - use intel686_p4_cpu_setup() for family 0xf cpus - msr-based hw.cpuspeed for pentium 4 - use pentium_mhz for hw.cpuspeed if there's nothing better (diff from tedu@) Ok tedu@
2004-02-14Simplify hw.{cpuspeed,setperf} api moving all the sysctl stuffAlexander Yurchenko
from the underlying callbacks. Testing hppa mickey@, ppc drahn@ Ok markus@ tedu@
2004-02-06some cpus start to have a NX oriented PGEX_ITheo de Raadt
2004-02-052 new cpuid ecx features in prescottTheo de Raadt
2004-02-03move VIA xcrypt-* options to specialreg.hTheo de Raadt
2004-02-02PSL_XCRYPT is 0x40000000Theo de Raadt
2004-02-01Enable FXSR all the time, and cope with NPX/FXSR conversions; from netbsd.Theo de Raadt
Pass SSE/SSE2/XCRYPT flags out via syctl, and prepare for being able to do xcrypt-* in userland; ok naddy, tested a lot by pvalchev and jolan, also works on amd64 in 32bit mode
2004-02-01Sync user ldt code with NetBSD:Alexander Yurchenko
- finally remove it from pcb, it's a pmap thing only - more sanity checks - better lockin - may be something else Fixes panics when using apps requiring it (mplayer-win32 e.g.). Problem found and test espie@. OKs from miod@ (sshhh, don't tell anyone) and art@.
2004-01-31rename SIMD/SIMD2 to SSE/SSE2Theo de Raadt
2004-01-28sniff. first file i add'd is first to be rm'dTed Unangst
2004-01-14Revert previous; this will cause issues on some machines, says drahn@Miod Vallat
2004-01-13Fix KERNTEXTOFF value (long) after the move to ELF.Miod Vallat
tricked-to-commit-into-i386-land millert@
2004-01-06adjust pentium_mhz when cpu speed changes. ok deraadtTed Unangst
2004-01-03put an mi wrapper around stdarg.h/varargs.h. gcc3 moved stdarg/varargs macrosMarc Espie
to built-ins, so eventually we will have one version of these files. Special adjustments for the kernel to cope: machine/stdarg.h -> sys/stdarg.h and machine/ansi.h needs to have a _BSD_VA_LIST_ for syslog* prototypes. okay millert@, drahn@, miod@.
2004-01-01Crank SHMMAXPGS from 2048 to 8192. Other platforms where peopleTodd C. Miller
are using lots of shm may also wish to also increase SHMMAXPGS. OK deraadt@
2003-12-29Properly recognize SiS CPU family;Alexander Yurchenko
tested by Ian Zagorskih <ianzag@megasignal.com>. ok mickey@
2003-12-20add pentium 4 thermal control circuit (tcc) driver. can use this toTed Unangst
limit power consumption with the hw.setperf sysctl. tested by beck and grange
2003-12-19add cpu_ecxfeature to cpu.h, and stop locally externing it and cpu_feature.Ted Unangst
ok deraadt@
2003-12-18add new hw sysctls, cpuspeed and setperf to control cpu frequency.Ted Unangst
convert longrun support to use new sysctls. add enhanced speedstep support, based on code by Michael Eriksson. idea, help testing & ok deraadt@
2003-11-27This var is volatile. gcc3 complains if the CV qualifiers don't match.Marc Espie
ok toby, mickey
2003-11-16convert __attribute__((__packed__)) to __packed so that parsers unawareAnil Madhavapeddy
of gcc extensions have more of a chance. ok mcbride@, no objections from millert@, deraadt@
2003-10-28guard cpu register functions from userland, otherwise they appear whenAnil Madhavapeddy
including stuff like <sys/sysctl.h> deraadt@ ok
2003-10-24No need to have several implementations of {read,write}_eflags(),Alexander Yurchenko
put it to cpufunc.h. ok weingart@ tedu@
2003-09-23Replace select backends with poll backends. selscan() and pollscan()Todd C. Miller
now call the poll backend. With this change we implement greater poll(2) functionality instead of emulating it via the select backend. Adapted from NetBSD and including some changes from FreeBSD. Tested by many, deraadt@ OK
2003-09-08match size of fpreg w/ the save87 structs as figured in discussion w/ jason ↵Michael Shalayeff
two months ago and the rediscovered by grange@ and then probably by some more other people in mongolia who had no inet to report it unfortunately; this also fixes problem w/ catching sigsegv after recent bcopy(,,sizeof) fixes; deraadt@ ok
2003-08-21fix symbol name error in mcount functionality in a.out->ELF transition.Dale Rahn
This changes the real definition to __mcount, but with a weak mcount for compat. On the next major bump the weak alias should be removed. Without this diff the compiler symbol mcount conflicts with the user mcount() function.
2003-07-28nuke more MATH_EMULATEJason Wright
2003-07-25s/CPUID_SYS2/CPUID_SEP/ to avoid confusionMichael Shalayeff
2003-07-25make sure SYSENTER registers are 0 at boot time. should fix an unusualTed Unangst
DOS reported by Michal Zalewski to bugtraq. ok mickey@ toby@
2003-07-07function for cpuid instruction. pulled from longrun into generic code.Ted Unangst
ok deraadt mickey
2003-06-06Identify Pentium M CPUAndreas Gunnarsson
Recognize more feature flags deraadt@ ok
2003-06-03remove some term 3 & 4 for niklasTheo de Raadt
2003-06-03three four killMichael Shalayeff
2003-06-02Remove the advertising clause in the UCB license which BerkeleyTodd C. Miller
rescinded 22 July 1999. Proofed by myself and Theo.
2003-05-27change .byte for the correct opcodes now that gas can handle'em.Federico G. Schwindt
art@ toby@ ok.
2003-05-26pmap_protect strikes again.Artur Grabowski
Not only do we have to think about PROT_EXEC while dealing with it, but we also have to think about wiring. sigh. We'll have to fix this with an API change. fixes the mlockall problem.
2003-05-18Add 'machine sysregs' command to ddb for 1386; show idtr, gdtr, ldtr, trAndreas Gunnarsson
and cr0-ct4 OK by niklas@ and more or less by ho@
2003-05-14Support for Transmeta CPU power management, called LongRun.Ted Unangst
option LONGRUN enables a new sysctl, allowing a userland program to read the current CPU frequency and voltage and also set the mininum and maximum frequencies to operate between, and switch between performance mode and battery mode. ok mickey@
2003-05-13The current solution to handle the protection fault trap is notArtur Grabowski
correct. It breaks down if we're trying to jump through a function pointer. The protection fault trap on i386 must be one of the most braindead traps ever invented in the history of humankind. It doesn't give you any information about what went wrong except the instruction that faulted. Since the problem we're trying to deal with is a segmentation problem, we don't get the desitination that we want to jump to, we just get the instruction and we won't add a disassembler to trap handling just to try to figure out what went wrong. What we want to do is to handle this as a normal fault to let noexec accounting in pmap_enter deal with the changes to the code segment. Unfortunately that's impossible. We don't know the faulting address, so we need to change how the exec accounting works. Basically the code segment must already cover the address we want to execute before we can fault it in. New scheme: o Start with conservative code segment. o If we get a protection fault, go through all mappings in the process and find the highest executable mapping, fix up the code segment and record that address. If the code segment didn't change, the protection fault wasn't fixable - just die. o If the highest executable mapping is removed, just reset the code segment to something conservative and let the next protection fault deal with it. We can't read all the vm mappings of the process from the pmap because of locking hell. This should allow floating code segment whenever someone implements that. Also, fix the pmap_protect function to behave more like the other pmaps we have and be slightly more agressive to force more proper protection changes. ok:ed by various people.
2003-05-05Move exec base to 0x1c000000, exe/data gap to 512MB. Allows betterDale Rahn
interleave of exe/shared libs. Raise MAXDSIZ back to 1G. This change REQUIRES a binary update on i386.
2003-05-02when flipping the code descriptors also update cs in theMichael Shalayeff
tss and not only in the frame since we might be returning that way too. add a heuristic for detecting an exec protection fault: iff we get a read protection fault (which we normally never get due to our segments being always readable) we assume that it was an exec protection indeed and go to page fault routine which will decide the rest for us (including sending a signal should that be needed). problem found by drahn@ and testing by many ppl.
2003-04-17i386 changes to move to ELF. asm cleanup. Change MAXDSIZ to 512M for 1Gsep.Dale Rahn
DARPA funded work.
2003-04-09Correct commentary describing page table layoutsNiklas Hallqvist
2003-04-07Spring cleaning: remove unused code.Niklas Hallqvist
2003-03-28Add a sysctl to option USER_LDT, to control its behaviour, which will beMiod Vallat
disabled by default. Enable with sysctl -w machdep.userldt=1 This will allow people to use the few ports that require this functionality to work without requiring the user to recompile a kernel. The option USER_LDT remains in order to not increase size on the installation media. It is now enabled in GENERIC. Per espie@'s idea, but my diff was much simpler than his; ok deraadt@
2003-03-14Support for the VIA C3 Nehemiah on-cpu random number generator. This chipTheo de Raadt
will be shipping soon (we have nice prototypes). Written by toby.
2003-01-21Get rid of vm_{offset,size}_t on i386.Artur Grabowski
deraadt@ ok.
2003-01-16Getting rid of vm_offset_tArtur Grabowski
2003-01-09Remove fetch(9) and store(9) functions from the kernel, and replace the fewMiod Vallat
remaining instances of them with appropriate copy(9) usage. ok art@, tested on all arches unless my memory is non-ECC