summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2009-12-14Fix previous commit. I left out a small fragment and accidentally committedMark Kettenis
a change we're not readdy for yet.
2009-12-14Support for in-band descriptor mode (VIO_DESC_MODE) used by OBP.Mark Kettenis
2009-12-14Make sure interrupts are disabled when we don't have queues configured. ThisMark Kettenis
prevents interrupt storms I'm hitting when running OpenBSD as a control domain.
2009-12-14Add wrapper functions to enable/disable interrupts and manipulate their state.Mark Kettenis
2009-12-13bit less aggressive about hiding; ok miodTheo de Raadt
2009-12-12Protect more definitions userland doesn't need to care about with _KERNELMiod Vallat
2009-12-12Switch page size from 4KB to 16KB on R10k kernels without R5k supportMiod Vallat
(i.e. IP27 and IP30 sgi kernels).
2009-12-12Introduce various CPU_### options to enable cpu-specific code or workarounds;Miod Vallat
be sure to rerun config(8) on your kernel configuration files.
2009-12-12unifdef -D__LP64__Miod Vallat
2009-12-12Add missing splbio() protection when sending commands to the vDisk server.Mark Kettenis
2009-12-12Remove debug printf and properly dequeue command instead when a read times outMark Kettenis
on LOMLite2.
2009-12-11By popular demand and peer pressure, check-in work in progress work to supportMiod Vallat
the Yeelong Lemote mips-based netbook. Kernel bits only for now, needs polishing; most of this work done during h2k9 last month, although the porting effort started earlier this year.
2009-12-11By popular demand and peer pressure, check-in work in progress work to supportMiod Vallat
the Yeelong Lemote mips-based netbook. Kernel bits only for now, needs polishing; most of this work done during h2k9 last month, although the porting effort started earlier this year.
2009-12-11By popular demand and peer pressure, check-in work in progress work to supportMiod Vallat
the Yeelong Lemote mips-based netbook. Kernel bits only for now, needs polishing; most of this work done during h2k9 last month, although the porting effort started earlier this year.
2009-12-11More changes to avoid truncating 64 bit pointers to 32 bits and sign-extendingMiod Vallat
them; allows userland with stack beyond 2GB to run.
2009-12-10ansiTheo de Raadt
2009-12-10spacingTheo de Raadt
2009-12-09Resubmit any pending SCSI commands when we sucessfully (re)connect toMark Kettenis
a vDisk server. This makes OpenBSD running in a guest domain survive a reboot of a control domain or service domain.
2009-12-09this does not even compileTheo de Raadt
2009-12-09add uhts(4).Matthieu Herrb
2009-12-09By popular demand and peer pressure, check-in work in progress work to supportMiod Vallat
the Yeelong Lemote mips-based netbook. Kernel bits only for now, needs polishing; most of this work done during h2k9 last month, although the porting effort started earlier this year.
2009-12-09By popular demand and peer pressure, check-in work in progress work to supportMiod Vallat
the Yeelong Lemote mips-based netbook. Kernel bits only for now, needs polishing; most of this work done during h2k9 last month, although the porting effort started earlier this year.
2009-12-09sloppy oga, tsk tsk, you are scaring usTheo de Raadt
spotted by ckuethe and must be in immediately before my build gets there..
2009-12-09Don't try to shove I/O down the LDC if we're disconnected from the virtualMark Kettenis
disk server.
2009-12-09Remove the clean gdt bit and leave the idt part in.Paul Irofti
Fixes most laptops out there on resume. Okay deraadt@.
2009-12-09add two new MD only pmap apis to amd64 and i386 (not to be used in MIOwain Ainsworth
code): pmap_flush_cache(vaddr_t, vsize_t) and pmap_flush_page(paddr_t) to flush the cache for virtual addresses and physical pages respectively using the clflush instruction. These apis will shortly be used by the agp bus_dma functions to avoid doing a wbinvd on each dmamap_sync. ok kettenis@, some comments from miod@
2009-12-09add cpufunc functions for the clflush instruction and the mfenceOwain Ainsworth
instruction. ok kettenis@ as part of a larger diff.
2009-12-09Detect the cache line size for the clflush instruction when we identifyOwain Ainsworth
the cpu. ok kettenis@ as part of a larger diff.
2009-12-08Unconditionnaly move kernel virtual memory space to XKSEG, now that previousMiod Vallat
context.S fixes allows these settings to work for kernels linked in CKSEG0.
2009-12-08In cpu_switchto(), correctly ignore CKSEG0 curprocpaddr (and do not update theMiod Vallat
wired TLB entries).
2009-12-08Use a whole page for msgbuf if page size is larger than 4KB, instead ofMiod Vallat
the current 8KB.
2009-12-08Passing kva + size as the third argument to uvm_km_free() is a bad idea. ItMark Kettenis
unmaps quite a bit more than intended, which causes weird things like watchdog resets.
2009-12-08Base the revision string in the INQUIRY info on the version of the VIO protocolMark Kettenis
used by the virtual disk server.
2009-12-07Correctly skip available memory regions without (kernel) page alignedMiod Vallat
boundaries, entirely contained within a kernel page; issue raised by drahn@
2009-12-07Sync VM_MIN_ADDRESS with __LDPGSZ again.Miod Vallat
2009-12-07Support for 16KB page size kernels; page size is now set in <machine/param.h>Miod Vallat
rather than <mips64/param.h>. For now, kernels are kept at 4KB to give people some time to build 16KB compatible binaries; this will change before the end of this release cycle. Use of 16KB page size kernels yields a 18% speedup (which, offset by the 1.6% slowdown caused by the pmap changes, yields a 16.6% overall speedup).
2009-12-07If UPAGES would turn out to be 1, instead of using wired TLB entries to mapMiod Vallat
the u area after each context switch, simply convert it to an XKPHYS address, so that access to it never faults. Idea from NetBSD.
2009-12-07Use a pool to manage pmap pte pages and top level segment table, instead ofMiod Vallat
directly allocating pages from uvm; this will allow us to eventually use a different kernel page size without having to alter the pmap structures layout. No functional change; measured slowdown of 1.6% for 4KB page kernels.
2009-12-07When converting ARCBios memory spaces from ARCBios page size to the kernelMiod Vallat
page size, be sure to pick the strictest interval so as not to incorrectly claim ARCBios reserved data not (kernel) page size aligned as free memory. No functional change since the kernel uses the same page size as ARCBios (at the moment).
2009-12-07Be sure to always check tlbp return values for strictly negative valuesMiod Vallat
to consider the probe as failed; tlb pair #0 does not deserve to be magic in any way.
2009-12-07When netbooting the kernel image from ARCBios, our load address may not beMiod Vallat
honoured, and we may end up loaded at an uncached address (e.g. CKSEG1 on O2). This would cause the kernel to run with instruction cache disabled. Work around this by simply jumping to the address we really want to run at, at the beginning of locore.
2009-12-07When trying to return to ARCBios on a 32 bit ARCBios machine (such as the O2),Miod Vallat
disable interrupts and unconditionnaly use proc0 u area as the stack, so that once ARCBios loses the upper 32 bits of the stack pointer, accessing the stack does not fault (proc0 u area is allocated in CKSEG0 for this reason).
2009-12-04Send `* pwr d' instead of `pwr d' on powerdown, to have L1 broadcast theMiod Vallat
request to other bricks connected to our node.
2009-12-04ahc fits againTheo de Raadt
2009-12-03Stop using the linker script. Something is arranging memory just soTheo de Raadt
resulting in kernels starting up the other cpu's incorrectly on processors with very long pipelines, perhaps some bug instruction prefetch dependency in the mptramp.
2009-12-03RM7000 processors with 64 TLB pairs instead of the usual 48 use an externalMiod Vallat
control bit to enabled use of the extra 16, in order to be able to be used as drop-in R5000 replacement without modifying RM7000-unaware software. Because of this, when a 64 TLB RM7000 processor is detected, check that the upper 16 really will be used before deciding how many TLB the kernel needs to invalidate whe ASID wraps.
2009-12-02no firmware on ramdisks; ok kettenisTheo de Raadt
2009-12-02IPL_IPI priority raised to IPL_IPI > IPL_HIGH for handling TLB shootdown.Takuya ASADA
ok miod@
2009-12-02use kstack for curprocpaddr instead of proc0paddr.Takuya ASADA
ok miod@
2009-12-01Fix the mixer interface for the CE4231 sound card found in Sun machines. Still aEdd Barrett
lot of room for improvement in the driver, but atleast it works now. OK kettenis@, ratchov@