summaryrefslogtreecommitdiff
path: root/sys/arch/i386
AgeCommit message (Collapse)Author
2007-05-27pagemove() is no longer used.Miod Vallat
2007-05-27We can now access curcpu() members through %fs instead of doing itArtur Grabowski
with the complicated and expensive macros. tom@ ok
2007-05-27Make sure the minaddr hint for uvm_km_suballoc() calls is always initialized.Miod Vallat
ok pedro@
2007-05-27fix another use of MAXNR for rijndaelTed Unangst
2007-05-27back out bio, breaks dlg's sparc64 v215Todd T. Fries
prompted by/ok dlg@ deraadt@
2007-05-27When deciding whether to allocate a bounce buffer, we need one ifTom Cosgrove
we are going to read exactly at 1 MB (i.e. fix an off-by-one that is already correct in the amd64 version of this file). ok toby@
2007-05-26Move cpu_info/curcpu to be mapped by the %fs segment. Extra input andTobias Weingartner
debugging by tom@, art@, kettenis@, and others. Testing by many others. ok art@, kettenis@, tom@
2007-05-26Dynamic buffer cache. Initial diff from mickey@, okay art@ beck@ toby@Pedro Martelletto
deraadt@ dlg@.
2007-05-26prodded by marco, enable bio everywhereTodd T. Fries
grudgingly ok deraadt@
2007-05-25"interupt" -> "interrupt" in various comments. Mostly from Diego Casati.Kenneth R Westerback
2007-05-25"boundries" -> "boundaries" in various comments. Started by Diego Casati.Kenneth R Westerback
2007-05-25Replace the overdesigned and overcomplicated tlb shootdown code withArtur Grabowski
very simple and dumb fast tlb IPI handlers that have in the order of the same amount of instructions as the old code had function calls. All TLB shootdowns are reorganized so that we always shoot the, without looking at PG_U and when we're shooting a range (primarily in pmap_remove), we shoot the range when there are 32 or less pages in it, otherwise we just nuke the whole TLB (this might need tweaking if someone is interested in micro-optimization). The IPIs are not handled through the normal interrupt vectoring code, they are not blockable and they only shoot one page or a range of pages or the whole tlb. This gives a 15% reduction in system time on my dual-core laptop during a kernel compile and an 18% reduction in real time on a quad machine doing bulk ports build. Tested by many, in snaps for a week, no slowdowns reported (although not everyone is seeing such huge wins).
2007-05-23Print real/available memory in MB as well as bytes in dmesg, and unifyPeter Valchev
architectures to print it the same way. ok henning, miod; i386 part from tom
2007-05-23timecounter support (e.g. soekris net4501); ok grange@Markus Friedl
2007-05-22enable uts(4) - USB touchscreen supportRobert Nagy
2007-05-21Implement deep interrupt swizzling by mapping all four PCI interrupt pinsMark Kettenis
for PCI-PCI bridges and passing the mapping to the attached bus device. MD code can use these when mapping PCI device interrupts. This diff adds such code for amd64 and i386. This fixes interrupt mapping for devices that sit behind two PCI-PCI bridges where the firmware only provides a mapping for the first PCI-PCI bridge. tested by sturm@, krw@, and a few others, ok deraadt@
2007-05-20addess -> addressMiod Vallat
2007-05-17Since we're initializing everything in pmap_pinit, it's probably a goodArtur Grabowski
idea to initialize pm_cpus as well. Otherwise we'll get stray tlb shootdowns and pm_cpus is not clear on exit sometimes.
2007-05-17There's no reason to keep track of gdt_count, we only use it forArtur Grabowski
copying the intial gdt when spinning up secondary cpus and then we can simply use gdt_size for that. From mickey, art@ ok
2007-05-16splassert_ctl defaults to 1 now, so dont wrap the checks forThordur I. Bjornsson
splassert_ctl > 0 in __predict_false(). ok deraadt@
2007-05-16The world of __HAVEs and __HAVE_NOTs is reducing. All architecturesArtur Grabowski
have cpu_info now, so kill the option. eyeballed by jsg@ and grange@
2007-05-15make splassert(IPL_NONE) work on i386/MP (the single-processor case isArtur Grabowski
a bit more hairy). deraadt@ ok
2007-05-15Remove the MI implementation of mutexes and remove the __HAVE_MUTEXArtur Grabowski
option. Every architecture implements mutexes now.
2007-05-15kill __HAVE_DEVICE_REGISTER by requiring all architectures to have aTheo de Raadt
device_register() function -- even if it does nothing. reduces the cpp-based blather different between architectures idea ok'd by miod; tested on all architectures (except a few miod will need to cleanup because he has them)
2007-05-14_bus_dmamap_sync() is unused; ok miodTheo de Raadt
2007-05-14SMALL_KERNEL unused bitsTheo de Raadt
2007-05-13Enable powernow on amd64 processors in the GENERIC.MP.Gordon Willem Klok
ok tedu
2007-05-11Don't use LK_CANRECURSE for the kernel lock, okay miod@ art@Pedro Martelletto
2007-05-09remove 'struct sr_attach_args' as it's now elsewhere with softraid definedTodd T. Fries
ok marco@
2007-05-09unused variableTheo de Raadt
2007-05-09only supply ldt_alloc() and ldt_free() if USER_LDTTheo de Raadt
2007-05-08backout while the amd64 puc situation is rethoughtTheo de Raadt
2007-05-08move com_activate() to where it belongsTheo de Raadt
2007-05-08put more foo_detach() routines where they are usedTheo de Raadt
2007-05-08process_s87_to_xmm() is only needed if PTRACETheo de Raadt
2007-05-08cpu_init() is only used for the MP case (for now)Theo de Raadt
2007-05-04make findblkmajor() and findblkname() MI; ok miodTheo de Raadt
2007-05-04Remove dead code.Artur Grabowski
2007-05-04Oops. Forgot to commit this part.Artur Grabowski
We need to include lock_machdep even on non-MP kernels now for rw_cas.
2007-05-04Implement rw_cas for i386.Artur Grabowski
It uses a function pointer to choose between the 386 and 486 versions. The 386 version is not MP safe, but we're not expecting MP support for 386 cpus. miod@ ok (and prodding)
2007-05-04Skip the kernel pmap when accounting for executability range changes.Artur Grabowski
This could lead to some heavy problems if called from kernel threads (which is the only way to get past the next test with the kernel pmap). From mickey. art@ toby@ ok.
2007-05-04setroot() was a ugly mix of MI and MD code, with different bugs on differentTheo de Raadt
machines. Instead -- build one solid clean MI version, and thenchange all the architectures to use it. ok various people, tested on almost all cases. (it is a 10094 line diff..)
2007-05-03Remove the pv stealing code. Other than being dangerous, it's alsoArtur Grabowski
slightly incorrect and didn't actually do much until a week ago or so when I fixed it when doing VM_PAGE_MD. deraadt@, miod@ ok
2007-05-02Support for mtrr on AMD opteron CPUs. Patch by Mickey and bluhm@, tweaksMatthieu Herrb
by dim@, ok deraadt@ and myself. (miod@ also found it sane).
2007-05-01support exit at boot -a timeTheo de Raadt
2007-05-01Missing RCS tag.Gordon Willem Klok
2007-04-28Fix pmap_extract to not return TRUE just because we have a PTP. Make sureArtur Grabowski
that the PTP and the PTE are valid before returning success. deraadt@ ok, tested by many.
2007-04-28Remove a duplicate copyright statement.Jonathan Gray
2007-04-27Check for Control key held down when starting, and don't read boot.confTom Cosgrove
if it is. This gives a way to recover from "switching to com0" when there's no serial cable handy. Bump version numbers. A similar change will be made to amd64 boot soon. ok toby@ deraadt@
2007-04-26Eliminate CPU_BIOS from userland and wd(4) by always using the BIOSKenneth R Westerback
geometry in the disklabel when there is a BIOS geometry to provide. This removes the option to set a disklabel to 'BIOS' geometry via the 'g b' command in the editor. Makes reported geometry more consistant and moves MD code to MD land where it should be. Doc help from jmc@, Feedback from millert@, marco@, weingart@, kettenis@. ok deraadt@