summaryrefslogtreecommitdiff
path: root/sys/arch/i386
AgeCommit message (Collapse)Author
2003-05-14remove option LONGRUN; it's in everything but SMALL_KERNEL nowTed Unangst
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-14em* is starting to show up on lots of machines. for next release,Theo de Raadt
let us make sure it fits.
2003-05-14add {b,c}devsw_lookup convenience functions.Ted Unangst
move chrtoblk and blktochr into MI code. tested on several archs and ok deraadt@
2003-05-13Add option NO_PROPOLICE, which explicitely disables the use of the propoliceMiod Vallat
stack protection when building kernels. Intended to be used on installation media, with tight space constraints - currently, only added where SMALL_KERNEL was already defined. Not thoroughly tested, but requested by deraadt.
2003-05-13remove -fno-stack-protector (enable propolice)Ted Unangst
ok deraadt@
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-09Map page tables non-exec.Artur Grabowski
deraadt@ ok.
2003-05-08EXAMPLE -> EXAMPLES in .Sh section, as per mdoc template.Jason McIntyre
crunch stuff still needs a bit of work.
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-04mop-mop squeek-squeekMichael Shalayeff
2003-05-04snprintfTheo de Raadt
2003-05-04Set code segment register according to nxpages, copied from machdep.cDale Rahn
2003-05-04When a protection fault occurs, force %cr2 to contain the pc asDale Rahn
the fault address.
2003-05-04string cleaning. ok deraadt@Ted Unangst
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-30from netbsd:Michael Shalayeff
The AMD-K5 Model 0 gets the PGE bit in the CPU features word wrong using the APIC bit instead, according to the AMD Processor Recognition App. Note. Add a fixup routine to patch up cpu_feature in this case. XXX Need a way to kick the pmap to enable pmap_pg_g -- look at how the MP branch deals with this.
2003-04-27strcpy/sprintf cleanup of sys/dev. miod@, deraadt@ says to commit.Hakan Olsson
2003-04-26managment -> management;Jason McIntyre
ok mickey@
2003-04-25Enable lm(4) and viaenv(4).Alexander Yurchenko
ok miod@ deraadt@
2003-04-25Add lm(4) and viaenv(4). Commented out and i386-only for now.Alexander Yurchenko
2003-04-17there is no reason to keep both around. just renameMichael Shalayeff
2003-04-17A SEVERE hack given to me by mickey to draw the line in the sand at 1G.Dale Rahn
memory by default will be executable, above, non executable. If memory is requested to be exectable above 1G, this limit is relaxed.
2003-04-17i386 ELF bootloader. developed with weingart@Dale Rahn
2003-04-17i386 changes to move to ELF. asm cleanup. Change MAXDSIZ to 512M for 1Gsep.Dale Rahn
DARPA funded work.
2003-04-09Remove one of two identical comment blocksNiklas Hallqvist
2003-04-09Correct commentary describing page table layoutsNiklas Hallqvist
2003-04-07Spring cleaning: remove unused code.Niklas Hallqvist
2003-03-28add support for the i830 that has 8 pci irq lines configure by the extra ↵Michael Shalayeff
0x68 pci config reg. does not change the behaviour for the other chipsets; ho@ testing
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-28Fix VIA C3 comment.Tobias Weingartner
Ok deraadt@
2003-03-19Add i830 support from NetBSD via patch in kernel/3150.Todd C. Miller
Verified to not break i81[05] and tested on two i830s.
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-03-09autri now takes flags, provide sample 0x0000Ted Unangst
2003-03-07New athlon models, ok deraadt@Peter Stromberg
2003-03-06enable elansc; ok deraadt@Markus Friedl
2003-02-26eliminate some useless checks. yichen xie's checker.Ted Unangst
ok mickey@
2003-02-10Add hme at pciJason Wright
2003-02-07typos;Jason McIntyre
2003-02-01typos;Jason McIntyre
added .Fl to flags for boot_* ok deraadt@
2003-01-29typos;Jason McIntyre
many tweaks by millert@ (thanks) thanks mpech@ for help with adduser(8) ok millert@
2003-01-29fix typo. majver should be minverTed Unangst
ok mickey@
2003-01-21add elan520 from netbsd; adapted to watchdog sysctl interface;Markus Friedl
ok mickey@, jakob@, henric@, fgsch@
2003-01-21Get rid of vm_{offset,size}_t on i386.Artur Grabowski
deraadt@ ok.
2003-01-17allow setting com baudrate up to 115200; req and testing by Sourabh Ladha ↵Michael Shalayeff
<ladha@mail.eecis.udel.edu>
2003-01-16slightely better memory regions validity check; weingart@ idea and okMichael Shalayeff
2003-01-16getting rid of vm_offset_t.Artur Grabowski
2003-01-16Getting rid of vm_offset_tArtur Grabowski
2003-01-15skip zero-sized memory regions, which pass otherwise due to the address ↵Michael Shalayeff
rounding and such; from Carson Harding <harding@motd.ca>
2003-01-12more kernel growth requires me to remove uhaTheo de Raadt