summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2018-05-11Compile the EFI bootloader with -mfloat-abi=soft to prevent the compiler fromMark Kettenis
using FPU instructions. Makes the bootloader work again after we switched clang to use -mfloat-abi=softfp by default. ok jsg@, patrick@
2018-05-09Fix a linking error in the IP26 kernel. This is a regression causedVisa Hankala
by the addition of db_save_stack_trace(). sys/arch/mips64/mips64/trap.c:(.text+0x410): undefined reference to `u_intr' Pointed out by deraadt@
2018-05-09Avoid locking two vm_pages simultaneously in pmap_enter(). To achieveVisa Hankala
that, remove any existing mapping before locking the new vm_page. This fix prevents a deadlock. Issue pointed out by witness(4).
2018-05-09vm_page lookup does not need locking. Hoist it outside the pmap lock.Visa Hankala
2018-05-09Implement stack trace saving on mips64.Visa Hankala
OK mpi@
2018-05-08Print xHCI revision in dmesg.Martin Pieuchot
ok patrick@, kettenis@
2018-05-07Use speed from device tree for serial console on armv7 too.Mark Kettenis
ok visa@, patrick@
2018-05-06Use speed from device tree for serial console. Makes it possible to bootMark Kettenis
and install systems where the firmware uses a non-standard speed. This is important for various boards that use a Rockchip SoC where the vendor thinks using 1500000 bps as the serial console speed is a good idea (it isn't). ok deraadt@, visa@, patrick@
2018-05-05Enable octcrypto(4).Visa Hankala
2018-05-04Add a common rules file for ofw sources to help keep the configurationsVisa Hankala
of fdt-enabled platforms in sync. OK deraadt@
2018-05-04Fix WITNESS build on arm64.Visa Hankala
OK guenther@
2018-05-04Add stack trace saving for arm64.Visa Hankala
OK guenther@
2018-05-04Initialize st_count in db_save_stack_trace().Visa Hankala
OK guenther@
2018-05-04Leave out an unnecessary symbol lookup.Visa Hankala
OK guenther@
2018-05-03Add support for SMCCC 1.1 which provides proper support for the firmware-basedMark Kettenis
workaround for branch target injection attacks (CVE 2017-5715). ok patrick@, jsg@
2018-05-02Fix build. The power domain API is needed by r1.9 of xhci_fdt.c.Visa Hankala
2018-05-02Add imxpd(4) which is a power domain controller driver thatPatrick Wildt
essentially calls into ATF to make it supply power. ok kettenis@
2018-05-02Implement a power domain framework to turn on/off so-called powerPatrick Wildt
domains. This mechanism is used by the newer i.MX8M SoCs so that drivers can call into ATF to supply power to e.g. a USB port. ok kettenis@
2018-05-02Remove proc from the parameters of vn_lock(). The parameter isVisa Hankala
unnecessary because curproc always does the locking. OK mpi@
2018-05-01vmmci(4) depends on pvbus(4) being available, unbreakPeter Hessler
from mlarkin@
2018-04-30vmd(8): unbreak i386Mike Larkin
2018-04-28replace add_*_randomness with enqueue_randomness()Jasper Lievisse Adriaanse
this gets rid of the source annotation which doesn't really add anything other than adding complexitiy. randomess is generally good enough that the few extra bits that the source type would add are not worth it. ok mikeb@ deraadt@
2018-04-28Clean up the parameters of VOP_LOCK() and VOP_UNLOCK(). It is alwaysVisa Hankala
curproc that does the locking or unlocking, so the proc parameter is pointless and can be dropped. OK mpi@, deraadt@
2018-04-27rasops: implement scrollbackJoshua Stein
activate it for efifb and inteldrm ok kettenis
2018-04-27use nitems()Jasper Lievisse Adriaanse
verified md5 sum on amd64 ok mlarkin@
2018-04-27-fretpoline for non-RAMDISK kernels. Skylake product needs it, andTheo de Raadt
therefore all other x86 cpus must pay the performance price of the hazard workaround until Skylake disappears from the ecosystem eventually like 486. This returns your cpu's performance to pre-inflated performance. ok mlarkin guenther
2018-04-27vmm(4): pass through ELCRx ports to vmd(8)Mike Larkin
These ports are used for Edge/Level control on the legacy PIC and will be needed for a subsequent commit.
2018-04-27Fix the prologue detection to match amd64 opcodes, not i386 opcodesPhilip Guenther
ok mlarkin@
2018-04-26vmm(4): passthrough port 0x61 to vmd(8)Mike Larkin
ok guenther
2018-04-26Oups, we only need vmmci(4) for the ramdisk, not the whole vmm(4).Peter Hessler
noticed by deraadt@ and mlarkin@
2018-04-26enable vmmci(4) on the ramdisks, so bsd.rd plays nicer when it powers offPeter Hessler
OK mlarkin@
2018-04-26vmm(4): Rearrange some interrupt window exiting codeMike Larkin
Simplify some code and reduce the number of places we are handling VINTR exits. ok brynet
2018-04-26Prefer leaq+%rip-relative over movabsqPhilip Guenther
xrstor_resume must not have profile prologue, so use NENTRY Don't use _C_LABEL() with some pure-ASM labels
2018-04-26Reorder trapframe/intrframe to put %rbp next to %rip and make itPhilip Guenther
behave like a real call frame, thus vastly simplifying the ddb back trace logic. based on whinging from deraadt@ ok jasper@ mpi@ phessler@
2018-04-26vmm(4): remove some unnecessary kernel lock code from the SVM guest loopMike Larkin
that is not needed; this code deals with delaying the relocking of the kernel lock until after interrupts are processed during external interrupt exiting, but this is handled differently on SVM. External interrupts are automatically handled by the CPU as soon as stgi() is performed after exit. (The original code came from the VMX/Intel guest loop.) ok guenther@
2018-04-26vmm(4): ensure SVM_INTERCEPT_INTR is always enabled before enteringMike Larkin
guest VM.
2018-04-26Drop into ddb(4) if pmap_tlb_shoot*() take too much time in MP_LOCKDEBUGMartin Pieuchot
kernels. While here sync all MP_LOCKDEBUG/while loops. ok mlarkin@, visa@
2018-04-25Simplify the handling of faults in iretq and xrstor by doing thePhilip Guenther
handling purely in ASM instead of fixing up the state to call into C...all in order to return back into a chunk of custom ASM which was longer than the direct solution! ok mlarkin@
2018-04-25vmm(4): clarify whose FPU state we are saving (change in a comment)Mike Larkin
no code change
2018-04-25Add a way to reattach efifb(4). This will be used when radeondrm(4)Jonathan Gray
attaches and claims glass console but after root is mounted if firmware is not found efifb gets reattached to have a useable glass console.
2018-04-24Move code into inline functions to hide #ifdefs and improve readability.Philip Guenther
Constipate a couple variables. Delete IDTVEC() macro and code handling 32bit-only traps (panic instead). ok mlarkin@
2018-04-24vmm(4): fix lockups on SVM hosts when booting Linux guestsMike Larkin
The previous version of the code used "disable_intr" as a protection around the FPU state saving routine, which left host RFLAGS.IF=0 when entering the guest. If the guest ended up in a non-exitable condition, the machine could hang due to missed TLB flush IPIs (and eventual kernel lock contention and starvation). tested by brynet@ ok guenther@
2018-04-24<machine/i82489reg.h> isn't used herePhilip Guenther
ok mlarkin@
2018-04-24account for FPU context switch (uvm statistic only)Mike Larkin
2018-04-24make the check for XSAVE the same as it is later in the file, forMike Larkin
consistency. ok guenther note - there is no equivalent diff here for i386 since XSAVE is not used there.
2018-04-24Enable gpioiic(4) and gpioow(4). From Artturi Alm.Mark Kettenis
2018-04-24Enable em(4) on loongson.Visa Hankala
2018-04-24Do not lock the kernel when expanding the working buffer.Visa Hankala
malloc(9) and free(9) are MP-safe nowadays. OK mpi@
2018-04-23Move efi_cleanup() to before the mem_pass() since efi_cleanup() mightYASUOKA Masahiko
change the memory map. diff from Ryan Lennox ok kettenis
2018-04-22Add reference counting that prevents freeing of busy aesni sessions.Visa Hankala
The early freeing has become possible because aesni_process() and crypto_freesession() are no longer serialized by the kernel lock. The flaw has caused kernel panics with IPsec traffic. Issue seen by some, fix tested by mabi on bugs@ OK mikeb@, mpi@