summaryrefslogtreecommitdiff
path: root/sys/arch/i386
AgeCommit message (Collapse)Author
2014-03-08Enable qlw(4) on alpha/amd64/i386/macppc/sgi/sparc64 to force people to test.Mark Kettenis
2014-03-07Remove superfluous 'return'.Gerhard Roth
ok deraadt@
2014-02-23Give drm(4) a console locator just like wsdisplay(4) such that we can makeMark Kettenis
sure /dev/drm0 always matches the primary display. ok mpi@
2014-02-19add qla and qle everywhere we currently have isp, commented out except forJonathan Matthew
qle in GENERIC on i386, amd64 and sparc64, where it's reasonably well tested and likely to be useful. requested by deraadt@ and kettenis@, ok dlg@
2014-02-18Bump version numbers.Joel Sing
2014-02-18Actually check to see if the CPU supports tsc, rather than assuming thatJoel Sing
it does and triggering an illegal instruction trap when it does not. Found the hard way and fix tested by nick@
2014-02-17iha and trm are good targets to avoid a space crisis on the install media;Theo de Raadt
we will revisit other solutions, but not this close to release.
2014-02-13Some Linux i915 drm "fast" path code relies on being able to "disable" pageMark Kettenis
faults to avoid sleeping. Implement this functionality for i386 and amd64 for faults in the user address space. If the ci_inatomic flag is set in struct cpu_info, copyin(9) and copyout(9) will return EFAULT when a user-space address needs to be faulted in. Use this to properly implement __copy_to_user_inatomic() and __copy_from_user_inatomic_nocache() in the inteldrm(4) code. ok krw@, guenther@
2014-01-30Move declaration of struct vm_page_md from <machine/vmparam.h> toMiod Vallat
<machine/pmap.h> where it belongs, and compensate in <uvm/uvm_extern.h> by including <uvm/uvm_pmap.h> before <uvm/uvm_page.h>. Tested on all MACHINE_ARCH but amd64 and i386 (and hppa64).
2014-01-24Disable lapic when halting CPUs. Allegedly this is necessary to makeMark Kettenis
suspend work on some machines. ok deraadt@, mlarkin@
2014-01-23unifdef -D__HAVE_VM_PAGE_MD - no functional change.Miod Vallat
2014-01-22tweak ubcmtp commentjoshua stein
2014-01-21Add virtio random driverStefan Fritsch
OK mikeb@ "seems fine" matthew@
2014-01-20Add sdmmc support to the install media, as proposed by Florian StinglmayrTheo de Raadt
2014-01-20add ubcmtp, a USB driver for Broadcom multitouch trackpads found onjoshua stein
newer Apple MacBook laptops enabling two-finger scrolling and other multi-finger gestures with the synaptics(4) driver mostly done at the t2k13 hackathon input from and ok mpi@
2014-01-20These fd0 testing things are not usedTheo de Raadt
2014-01-20Unlink the old amd64/i386 installboot.Joel Sing
2014-01-19Initialize ci_randseed better using arc4random() + a trick. Remove theTheo de Raadt
libkern srandom() API since it is not suitable for this use. ok kettenis miod
2014-01-18Fix comment re size of input buffer.Joel Sing
2014-01-06document random buffer must be multiple of 4 in sizeTheo de Raadt
2014-01-06Increase NPTECL, as cache-lines are 64-bytes nowadays.Stefan Fritsch
Also move it from pmap.h to pmap.c because it is an internal detail.
2014-01-05Don't use the first 64KB for anything, including tramps. Move tramps andMike Larkin
hibernate goo up after 64KB to avoid posible corruption by buggy BIOS SMM code. Diff also ensures the first 64KB doesn't get handed to UVM either. ok deraadt@, tested by many with no regressions reported
2014-01-02crank version after random instruction fix from jsingTheo de Raadt
2014-01-02Simplify things slightly by using four byte indexing.Joel Sing
2014-01-02Ensure that we preserve callee-save registers.Joel Sing
2013-12-28Further clean up and unification of the amd64 and i386 boot(8) makefiles.Joel Sing
2013-12-28crank the versionTheo de Raadt
2013-12-28Try to load entropy data from disk:/etc/random.seed, and additionallyTheo de Raadt
use a MD-supplied random function. Then, insert this into the ELF openbsd.randomdata of the kernel, so that it has entropy right from the start. Some help from jsing for the softraid aspects. Also tested by phessler
2013-12-28If we fail to decrypt the softraid keys, return EPERM rather than fallingJoel Sing
through and failing when we attempt to read and validate the disklabel. Also return ENOTSUP rather than EPERM if an attempt is made to write to a softraid volume.
2013-12-28Use preprocessor symbols where possible.Theo de Raadt
2013-12-28Add initial implementations of early MD random, for use in the boot code.Joel Sing
This makes use of rdrand if the CPU supports it, otherwise we fall back to using rdtsc. Further development will happen in the tree. Tested by phessler@ ok deraadt@
2013-12-27oops, correct wordingTheo de Raadt
2013-12-27correct comment about why first 16 pages are skipped: SMI corruptionTheo de Raadt
is the real cause discussed with mlarkin
2013-12-23Add an instruction barrier to bus_space_barrier(). From David Hill.Mark Kettenis
ok deraadt@
2013-12-22format string fix: %lx for register_tStefan Fritsch
2013-12-20Add vioscsi(4) driver.Matthew Dempsky
Still a work-in-progress, but functional enough to work with both Google Compute Engine and RHEVM. Committing so additional testing and cleanup can be handled in tree. thx Jiri B for RHEVM testing ok dlg, deraadt
2013-12-19oh sorry, I forgot two #ifdefTheo de Raadt
2013-12-19Mtrr stops being a pseudo-device. We need to probe the cpu type andTheo de Raadt
initialize the structures when we see the first cpu. We also need to initialize each cpu's properly (for PAT) before we setup mtrr on that cpu. On i386 (late hatch) we were getting this desperately wrong on the primary cpu. After suspend/resume, we also need to do the same work. re-initialize PAT before mtrr. On some laptops apparently PAT was not turned on by the BIOS, so we ended up with incorrect setup for the primary cpu. Oops. This makes mplayer on the x201 (and similar) machines work without weird pauses after a suspend/resume. Many other things are likely fixed. ok kettenis
2013-12-18Provide MI symbol _STACKALIGNBYTESTheo de Raadt
2013-12-12Remove the scatter/gather dma implementation as it is no longer used.Mark Kettenis
ok krw@, deraadt@
2013-12-09Remove MD intagp(4) code that is unused now that inteldrm(4) manages the GTTMark Kettenis
all by itself.
2013-12-08reflect reality, mark as NOOBJMarc Espie
"sure" deraadt@
2013-12-07Remove the agp-specific bus_dma code. It is no longer used now thatMark Kettenis
inteldrm(4) manages the GTT by itself. ok miod@
2013-12-07Errata 122 is currently disabled so stick amd64_errata_set4 under #if 0 tooBrad Smith
to appease the LLVM warning. amd64errata.c:103:22: error: unused variable 'amd64_errata_set4' [-Werror,-Wunused-const-variable] ok sthen@
2013-12-06Make clflush() flush the cache line specified by the address we pass itMark Kettenis
instead of the cache line containing the local variable used to specify the address. Fixes the gnome corruption and hangs people have been experiencing for the last couple of months or so. ok deraadt@, mlarkin@
2013-12-06Add a DVACT_WAKEUP op to the *_activate() API. This is called after theTheo de Raadt
kernel resumes normal (non-cold, able to run processes, etc) operation. Previously we were relying on specific DVACT_RESUME op's in drivers creating callback/threads themselves, but that has become too common, indicating the need for a built-in mechanism. ok dlg kettenis, tested by a sufficient amount of people
2013-12-05Correct spin timeout detection in __mp_lock debug code.Masao Uebayashi
OK pirofti@ krw@ miod@
2013-11-28Appease LLVM's integrated assembler.Brad Smith
error: ambiguous instructions require an explicit suffix (could be 'cmpb', 'cmpw', 'cmpl', or 'cmpq' error: unknown token in expression cmp -> cmpl, %cs:* -> *%cs: ok kettenis@
2013-11-261 << 31 cleanup. Eitan Adler pointed out that there has been aTheo de Raadt
resurrection of the bad idiom in the tree. sufficient review by miod, kettenis, tedu
2013-11-21remove the #define b_cylinder b_resid from bufs. i hated theDavid Gwynne
overloading of that thing. the only hardware that seems to care about cylinders in our tree are floppy drives, and the drivers for those calculate their own cylinders from logical block addresses and ignore whatever the rest of the kernel thought b_cylinders should be. most of this diff is moving the floppy drivers to using b_resid as a resid and using that as part of the calculation for real cylinder values. the rest of the diff is getting rid of the useless assignments to b_cylinder that dont get used by anything (now that disksort is gone). ok miod@