summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2014-04-21Fix off-by-one error in PG_LGFRAME maskPhilip Guenther
ok mlarkin@
2014-04-20emc on my cx500 works as well as rdac on all my rebadged engenio kit.David Gwynne
2014-04-19Don't panic if we're trying to disestablish an MSI but the hardware is gone.Mark Kettenis
tested by & ok mlarkin@
2014-04-18rename wd33c93 to wd33c93ctrl (but keep the filenames as is) so we canJasper Lievisse Adriaanse
add attributes to it later; as wd33c93 is not a valid device name. ok miod@
2014-04-18Have each thread keeps its own (counted!) reference to the process's ucredsPhilip Guenther
to avoid possible use-after-free references when swapping ids in threaded processes. "Do I have the right creds?" checks are always made with the threads creds. Inspired by FreeBSD and NetBSD "right time" deraadt@
2014-04-16Add generic driver for "NEC PC-9801(*) extension board slot" onKenji Aoyama
LUNA-88K. LUNA-88K{,2} has one or two slot(s) that can attach the extension board designed for PC-9801. This driver provides dedicated mmap(2) and capability for waiting specified interrupt on that slot so that we can use the extension board from userland program. (*)PC-9801 is a Japanese popular personal computer, mainly used in 1980-90's. (see http://en.wikipedia.org/wiki/NEC_PC-9801) ok miod@, and man pages jmc@
2014-04-14Fewer <uvm/uvm.h>Martin Pieuchot
2014-04-14move the hardware structures into ahcireg.h.David Gwynne
2014-04-13Clean up last bits of TCP_WRAPPERS and ELF_TOOLCHAIN.Brad Smith
ok miod@
2014-04-12Delete unused variable.Kenji Aoyama
2014-04-09Make trapDump() take the printf-like function as a 2nd parameter.Miod Vallat
No functional change; helps non-released kernels with extra debugging code (-:
2014-04-08Fewer <uvm/uvm.h>!Martin Pieuchot
2014-04-08Less <uvm/uvm.h>Martin Pieuchot
2014-04-08No need for <uvm/uvm_page.h>Martin Pieuchot
2014-04-08Add rgephy(4) for axe(4) and axen(4).Brad Smith
2014-04-07Enable upd(4) on archs where uhidev(4) is present, requested by mpi@.andre
2014-04-07increase MSGBUFSIZETheo de Raadt
2014-04-07Add axen(4) wherever axe(4) is.Brad Smith
ok mpi@ yuo@
2014-04-05enable hds, and give up on ispTheo de Raadt
2014-04-05qla and qle are working well enough, so just delete use of isp. don'tTheo de Raadt
even comment the lines.
2014-04-04Second step of the R4000 EOP errata WAR: when pmap invalidates a page whichMiod Vallat
is currently being covered by the wired TLB entries, flush them, so that, if the process' pc is still running in a vulnerable page, the WAR will reapply immediately and fault the next page.
2014-04-04If the PDC_COPROC call fails, and we are running on a PA 1.1 system, assumeMiod Vallat
the usual 1.1 coprocessor mask, instead of using zero and having every userland process dying with signal 4. The circumstances under which this call fails are unclear and could be tied to specific PROM version (I have tried overzealous stack alignment and other tricks, to no avail). Interestingly enough, the 715/75 system which hits this problem, only triggers it when booting from disk, and never when booting from network. This diff is an ugly bandaid until the problem is better understood. Or maybe it is not worth investigating, seeing that Linux hardcodes the coprocessor mask and never issues PDC_COPROC calls; I wonder what HP/UX does. In my tree for over 18 months; "Looks like a nice hack" deraadt@ 715/75 system provided by Sebastiaan Indesteege, thanks!
2014-04-04It seems that, when the on-board USB controller is an ALI M5237 USB and itsMiod Vallat
interrupt is routed through the ISA PIC, the interrupt is edge-triggered (despite PCI interrupts being level-triggered). Attempt to recognize this and correctly setup the PIC ELCR register to `edge'. This allows ES40 systems (and maybe others, but apparently all the other alpha systems with on-board M5237 correctly route its interrupt as a PCI interrupt) to reliably boot multiuser without suffering from USB interrupt storms (this is especially noticeable when using glass console which, unlike serial console, does not trigger other interrupts to give other devices a chance to run). However, this is not enough yet to allow for proper USB device usage; your mileage may vary. Tested by bluhm@ and me. Putting it early in the release cycle so that regressions on other systems, if any, can hopefully get noticed soon enough.
2014-04-04let device_register match scsi devices to anything hanging off aDavid Gwynne
scsibus. this lets path drivers get matched instead of just sd(4). ask mpath to maybe swap a path with a disk via mpath. ok deraadt@
2014-04-03Do not keep the EOP check bits in PGF_PRESERVE.Miod Vallat
2014-04-03enable hdsDavid Gwynne
2014-04-03More uvm_extern.h cleanup.Martin Pieuchot
2014-04-03Use <uvm/uvm_extern.h> if it's enough.Martin Pieuchot
2014-04-03Moar <uvm/uvm.h> -> <uvm/uvm_extern.h> love.Martin Pieuchot
2014-04-02enable hdsTheo de Raadt
2014-04-02enable mpathTheo de Raadt
2014-04-01Remove the almost unused abstraction around "struct firmware" and useMartin Pieuchot
instead a single function ppc_mem_regions() required by the ppc pmap. ok kettenis@
2014-04-01Remove the almost unused abstraction around "struct firmware" and useMartin Pieuchot
instead a single function ppc_mem_regions() required by the ppc pmap. ok kettenis@
2014-04-01More <uvm/uvm.h> -> <uvm/uvm_extern.h> cleaning.Martin Pieuchot
ok kettenis@, deraadt@
2014-03-31Use extent_alloc_with_descr(9) and add a mutex to protect the extent.Mark Kettenis
This should make bus_dmamap_load(9) and bus_dmamap_unload(9) "mpsafe". As a bonus this gets rid of a potential memory allocation in the IO path. ok miod@
2014-03-31Due the virtually indexed nature of the L1 instruction cache on most mipsMiod Vallat
processors, every time a new text page is mapped in a pmap, the L1 I$ is flushed for the va spanned by this page. Since we map pages of our binaries upon demand, as they get faulted in, but uvm_fault() tries to map the few neighbour pages, this can end up in a bunch of pmap_enter() calls in a row, for executable mappings. If the L1 I$ is small enough, this can cause the whole L1 I$ cache to be flushed several times. Change pmap_enter() to postpone these flushes by only registering the pending flushes, and have pmap_update() perform them. The cpu-specific cache code can then optimize this to avoid unnecessary operations. Tested on R4000SC, R4600SC, R5000SC, RM7000, R10000 with 4KB and 16KB page sizes (coherent and non-coherent designs), and Loongson 2F by mikeb@ and me. Should not affect anything on Octeon since there is no way to flush a subset of I$ anyway.
2014-03-31Including <uvm/uvm_extern.h> is enough, no need for <uvm/uvm.h> or more.Martin Pieuchot
2014-03-31Change the order of operations during a suspend/resume cycle andMartin Pieuchot
call bufq_quiesce() after executing the DVACT_QUIESCE handlers. This should be safe since no disk nor controller drivers have such handler but it will allow us to detach sd(4) devices attached to a USB bus. Another benefit pointed out by kettenis@ is that drivers that need to read a firmware from the disk should be able to do it at resume time in a DVACT_WAKEUP handler. ok kettenis@, deraadt@
2014-03-31give up on isp, and only use ql[wae]Theo de Raadt
Be a bit cynical about firmware fitting, of course.. ok jmatthew
2014-03-30Eliminates struct pcred by moving the real and saved ugids intoPhilip Guenther
struct ucred; struct process then directly links to the ucred Based on a discussion at c2k10 or so before noting that FreeBSD and NetBSD did this too. ok matthew@
2014-03-30Close the kernel fd before attempting to load /etc/random.seed, and reopen itMiod Vallat
afterwards, for some prom misbehave if the network interface is opened twice; repairs boot.net operation on at least SS5 PROM v2.21; found the hard way by sebastia@. Crank boot version; verified not to hurt disk boot.
2014-03-30Drop isp(4) to make the kernel fit again.Mark Kettenis
ok deraadt@
2014-03-29Update the loongson codebase to recognize the so-called `EFI-like' interfaceMiod Vallat
supposedly provided by newer PMON firmware (on Loongson 2Gq and Loongson 3A systems).
2014-03-29It's been a quarter century: we can assume volatile is present with that name.Philip Guenther
ok dlg@ mpi@ deraadt@
2014-03-29Do not play with the xmapmode register, for its layout seems to differ betweenMiod Vallat
board revisions < 4 (found on Indigo) and >= 4 (found on Indy and Indigo2). Paint the cursor as an inverted glyph, instead of exchanging bg and fg colours (matching the current practice on other frame buffers). Speed-up overlapping copy operations by attempting to perform them in larger chunks whenever possible; this speeds up console jump scrolling.
2014-03-28Add commented out entries for xhci(4).Brad Smith
ok mpi@
2014-03-28enable mpath plus sym and rdac on some archs so we can learn about whatDavid Gwynne
the effects will be. sgi will follow after i fix some known fallout first.
2014-03-27Remove dependency from wscons_machdep upon bonito. Instead of hardcoding bonitoMiod Vallat
as the northbridge, have the per-platform early setup code register functions providing access to the PCI configuration space, for the wscons code to walk the PCI space in search of a graphics board. No functional change yet.
2014-03-27Make sure the HIBERNATE pages get reserved regardless of the memory layout.Miod Vallat
2014-03-27Increase VM_PHYSSEG_MAX, necessary for systems with non-contiguous memoryMiod Vallat
(such as 2E and 3A systems).