summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2007-11-06Close a race where we might save/drop the fpu state of the wrong process inMark Kettenis
the ipi handlers.
2007-11-06ramdisks should have the same behaviour as GENERICTheo de Raadt
2007-11-06Keep a pending software interrupts mask per processor, instead of having itMiod Vallat
global; and only schedule software interrupts on the currently running cpu.
2007-11-06Comment out the pmap fine grained locking stuff, it is not necessary for nowMiod Vallat
because of the global lock. It will get enabled again when locking work progresses.
2007-11-06Be sure to pmap_deactivate() a process during context switches, so thatMiod Vallat
the cpu which runs it is accounted correctly in MP kernels.
2007-11-06Remove the now unused idle_u, and call the secondary processors startupMiod Vallat
stack a startup stack.
2007-11-06Get rid of TC_IPL_xxx values and tc_intrlevel_t, and use IPL_xxx and int.Miod Vallat
No functional change.
2007-11-05I screwed the pooch. Fix the stack offsets.Tobias Weingartner
"That's much better." kettenis@
2007-11-05Sprinkle a few holy membars around memory writes.Miod Vallat
ok kettenis@
2007-11-05fix and use DEVICE_IS_VGA_PCI, makes vgafb_pci_match() much simplerMartin Reindl
ok oga@ brad@
2007-11-05temporary ddb buffers need to be a bit larger on 64 bit systems to cope withMiod Vallat
some radix configurations.
2007-11-05audio encoding conversion cleanupJacob Meuser
- the endianness of the conversions don't depend on the endianness of machine the conversions are built on, but the endianness of the audio data itself. choose encoding conversions explicitly, instead of relying on #defines based on the endianness of the machine. - replace home-grown conversions with comparable conversions in auconv.c and mulaw.c - use the proper conversion for ulinear_be:16 -> slinear_le:16 in auixp(4) thanks ajacoutot@ and sthen@ for !x86 testing
2007-11-04replace even more ctob/btoc with ptoa/atopMartin Reindl
2007-11-03Fix LKM support for amd64.Mike Belopuhov
ok deraadt weingart
2007-11-03Add acpi_acquire_global_lock(), and acpi_release_global_lock toGordon Willem Klok
amd64 the not ghetto architecture. ok toby@
2007-11-03use DEVICE_IS_VGA_PCI in vga_pci_match()Martin Reindl
ok brad@ fgsch@ also tested by oga@
2007-11-03don't spam dmesg with huge, whitespace padded bios strings.Chris Kuethe
ok beck, gwk
2007-11-03change what happens when acpi is enabled to include "relatively safe"Bob Beck
stuff and have acpi actually do something. note acpi is still disabled by default, but now will do more stuff when enabled with config -e/boot -c ok gwk@, weingart@, canacar@, deraadt@
2007-11-03APM switchto cleanup diff. This uses the switchto functionality toTobias Weingartner
significantly clean up the APM idle loop things. I actually can make sense of what the APM idle loop is supposed to do. Ok gwk@, beck@, and theo says ramdisks compile.
2007-11-03Add acpi_acquire_global_lock() and acpi_release_global_lock() in MD locore.sTobias Weingartner
because it is easier to write these here in asm than it is to put them inline with gcc's __asm() construct. Also, chances are amd64's versions will need to be written in a different manner. Basically yanked from ACPI spec V3, section 5.2.10.1. Ok canacar@, beck@, gwk@
2007-11-02replace ctob/btoc with ptoa/atop (plus the usual round_page() where needed)Martin Reindl
2007-11-02Use the same cache cleaning address computation as done in cpufunc_asm_xscale,Miod Vallat
for there be dragons in xscale cache and it would not be cleaned correctly, leading to wrong pcb data being restored on resume and eventually causing panics.
2007-11-01Remove curproc definition. It is supposed to be in proc.h only.Mike Belopuhov
ok kettenis
2007-10-31Overhaul fpu context save/restore code, making it more similar to what we doMark Kettenis
on i386 and amd64. Don't let IPIs in when saving fpu context by disabling interrupts.
2007-10-31Remove some XXX code that has been #ifdef'ed out for ages.Mark Kettenis
2007-10-31Remove idle_u; it's been unused for a while.Mark Kettenis
2007-10-31Remove some comments about 32-bit mode.Mark Kettenis
2007-10-31Garbage collect ienab_bis() and ienab_bic().Mark Kettenis
Suggested by miod@
2007-10-31for now, workaround MP timeout/splhigh/scsi race at reboot time using aTheo de Raadt
delay. will be revisited. ok art
2007-10-31comment fixes.Joel Sing
ok miod@
2007-10-30avoid intermediate files with same name (ie. a.out) for parallel makeTheo de Raadt
ok miod
2007-10-29run depend so that SFILES depend on assym.h, which allows them to buildMarc Espie
with make -j on fast SMP boxes. noticed by robert@, input by miod, kettenis, okay toby@, robert@, and tested to work if people build kernels correctly...
2007-10-29UltraSPARC CPUs (and other SPARC V9 implementations) don't have aMark Kettenis
floating-point deferred-trap queue. Remove redundant code inherited from sparc that deals with this. Also remove the code dealing with saving and restoring the FPU state from unaligned memory; we always allocate properly aligned memory for storing the FPU state.
2007-10-29Make sure the dma_cachectl*() functions actually do their work on allMiod Vallat
affected processors if option MULTIPROCESSOR. It's amazing bsd.mp could boot multiuser without this.
2007-10-29When a secondary cpu gets its interrupt pin stuck, be sure to savectxMiod Vallat
and put the process it was running back on the run queue (unless this was the idle proc).
2007-10-28This is a horrible kluge: invoke sched_init_cpu for seconday processorsMiod Vallat
before they are started (and not skipping gaps for machine setups with holes in cpu slots). Since we start secondary cpus very late in the boot process, and sched_init_cpu() has to be invoked before proc0 execve's init, I don't think there is a better way to do this. This lets MVME188 systems with more than one processor boot multiuser.
2007-10-28Start secondary processors synchronously. This only wins us a nicer dmesgMiod Vallat
output, and nothing else.
2007-10-28Do not flag a processor as ``alive'' until it really is ready to accept IPIs.Miod Vallat
2007-10-28add new envy(4) driver for ICE1712 (aka VIA Envy24) audio devices. TheAlexandre Ratchov
device uses 32bit samples, up to 96kHz sample rate, 12 input channels and 10 output channels. Currently AK4524 codecs are supported, so M-Audio Delta cards should work. Playback and capture work, but the mixer is still incomplete. ok jakemsr@
2007-10-28UltraSPARC CPUs don't have a floating-point queue, so cpu_reset_fpustate() isMark Kettenis
redundant since there is no queue to flush.
2007-10-28Match on compatible: 'pcf8584', such that we attach on the V210 again.Mark Kettenis
2007-10-28get rid of btoc/ctob in favor of atop/ptoaMartin Reindl
2007-10-28When handling a userland data fault occuring in kernel mode, take the kernelMiod Vallat
lock with KERNEL_LOCK, not KERNEL_PROC_LOCK. This lets bsd.mp run multiuser on a single-processor board.
2007-10-28Disable interrupts around changing curproc and curpcb so these always match.Miod Vallat
2007-10-27Grab kernel lock before calling interrupt handlers.Mark Kettenis
ok miod@, deraadt@
2007-10-27Grab kernel lock for EXC_DSI.Mark Kettenis
Requested by deraadt@
2007-10-27get rid of btoc/ctob in favor of atop/ptoaMartin Reindl
2007-10-27Use the same assembly constraints for all inline assembler xmem constructs.Miod Vallat
2007-10-27In __cpu_simple_lock() and __cpu_simple_lock_try(), use a local u_int insteadMiod Vallat
of a local __cpu_simple_lock_t (which is volatile), so that the compiler can optimize it to a register, instead of using a memory location (and doing stores into it when __cpu_simple_lock() is spinning). This makes the MP code a bit smaller and a bit faster.
2007-10-27No need for an explicit pipeline synchronization in invalidate_pte(), theMiod Vallat
xmem instruction does it for us.