summaryrefslogtreecommitdiff
path: root/sys/arch/amd64
AgeCommit message (Collapse)Author
2012-10-12Build a 'fdboot' that will be used for floppy disk media. This can be madeJoel Sing
smaller than the normal 'boot', however for now it is identical. ok deraadt@
2012-10-11Initialise the protected mode IDT after zeroing .bss - otherwise we wipeJoel Sing
the IDT that we have just finishing building.
2012-10-10Oops. Need to handle the case of nfs diskless machines, where the blockTheo de Raadt
device name is NULL. From Tim Wiess
2012-10-10Add __BEGIN_DECLS so that programs using C++ can use functionsStuart Henderson
defined in sysarch.h again, they were broken following the change to NO_IMPLICIT_EXTERN_C. help/ok kettenis@
2012-10-09Bump boot versions due to recent changes.Joel Sing
2012-10-09Ensure that softraid keys are cleared if rebooting from the boot loader.Joel Sing
2012-10-09Teach amd64 boot(8) how to access a softraid crypto volume. This allows forJoel Sing
full disk encryption since the kernel can now be loaded directly from the crypto volume, instead of needing to be on FFS. This is currently disabled by default, however can be enabled by compiling with boot(8) 'make -DBOOT_CRYPTO'.
2012-10-09Allow boot(8) to pass information to the kernel, regarding the softraidJoel Sing
volume that it booted off.
2012-10-09Put the real mode IDT and the GDT back in .text - having them in .data onlyJoel Sing
works if .data is within the same segment.
2012-10-09Remove -noinhibit-exec now that we no longer have to deal withJoel Sing
"relocation truncated" linker errors.
2012-10-09Dynamically build the Interrupt Descriptor Table (IDT), instead of usingJoel Sing
a static table. This allows the IDT to be placed in .bss and avoids the "relocation truncated" errors that result from the linker trying to put a 32-bit address into a 16-bit hole. With input from Marco Peereboom. ok weingart@
2012-10-09Sync "Structured Extended Feature Flags" cpuid bits withJonathan Gray
the August 2012 revision of "Intel Architecture Instruction Set Extensions Programming Reference". Correct definitions of EREP and INVPCID, rename EREP to ERMS to match Intel's docs. Add some more Haswell feature bits.
2012-10-09Enable Supervisor Mode Execution Protection (SMEP), found in recentJonathan Gray
Intel chips. If the kernel is tricked into running code from a user page while in supervisor mode we'll now get a page fault and panic instead of running it. suggestions and ok guenther@, ok deraadt@
2012-10-08Revamp the sequences for suspend/hibernate -> resume so that the codeTheo de Raadt
paths are reflexive. It is now possible to fail part-way through a suspend sequence, and recover along the resume code path. Split DVACT_SUSPEND by adding a new DVACT_POWERDOWN method is used after hibernate (and suspend too) to finish the job. Some drivers must be converted at the same time to use this instead of shutdown hooks (the others will follow at a later time) ok kettenis mlarkin
2012-10-08enable 3 new OAK usb sensors on at least two architecturesTheo de Raadt
2012-10-08If we have booted from a disk that is a member of a bootable softraidJoel Sing
volume, always select the srX device unless the 'a' partition of the disk is FFS.
2012-10-08Avoid accessing .data or .bss from real mode, since they may not be withinJoel Sing
the current segment. Load and store the necessary BIOS registers from protected mode, preserving the register values across the real mode and protected mode switches by directly patching instructions. This allows for boot(8) to be larger than 64KB.
2012-10-08reduce the difference between i386 and amd64 versions of the speedstep codeJonathan Gray
2012-10-04Clean up uninitialized warnings from cryptosoft and aesni.Christiano F. Haesbaert
Part of the work to remove -Wno-uninitialized. ok mikeb@
2012-10-04Use information provided by ACPI to attach secondary PCI host bridges.Christian Ehrhardt
ok kettenis@
2012-09-27enable smscJonathan Gray
2012-09-27remove the zlib rfc text: these pages already point to gzip(1), whichJason McIntyre
has the references, and the rfc is not that relevant anyway;
2012-09-25Remove unused acpi locking code.Paul Irofti
To be replaced with higher level C routines once we settle for a common consistent set of atomic operations across platforms. Discussed with and okay by deraadt@ and kettenis@.
2012-09-25Reduce the diff between amd64/stand and i386/stand, requested by deraadt@.Pascal Stumpf
These create essentially the same bootblocks, so the build system should not be diverging too much, or at least easily diffable. There is still a lot of work to be done here, but this is the low-hanging fruit. ok jsing@
2012-09-19Set up PCI bus number resource accounting for the main PCI bus hierarchy.Mark Kettenis
2012-09-19Add support for the rdrand instruction found in recent Intel processors.Jonathan Gray
Joint work with naddy@ ok naddy@ deraadt@
2012-09-19Add new drivers for virtio network (vio) and block devices (vioblk, the disksStefan Fritsch
attach as scsi disks). These are paravirtualized devices offered by some hypervisors like kvm and virtualbox. The virtio transport driver has the pci specific parts separated out. This will make it easier to add support for mmio (e.g. for ARM) later. OK mikeb OK jasper "commit what you have" deraadt
2012-09-12Define empty CDIAGFLAGS for programs that use Werror.Christiano F. Haesbaert
Makes "make build" build with WARNINGS=Yes on amd64. ok espie
2012-09-11Remove the 'OLF method' used for the transition from a.out to ELF andTheo de Raadt
for all the compat layers which are now gone. Linux compat still works because it always used another method in any case, and nothing looks at p_os anymore. ok jsing
2012-09-07bump CPU feature strings to 12 chars since some names are now 8 charactersChristian Weisgerber
long, leaving no space for a trailing NUL; ok kettenis@
2012-09-07Implement pci_min_powerstate().Mark Kettenis
2012-09-07Implement pci_min_powerstate().Mark Kettenis
2012-08-30Use an explicit suffix for the "fld" instruction to shut up clang. The correctMark Kettenis
instruction is fldl sinze we try to load a double-precision value. GCC actually gets it wrong and emits "flds" (which is harmless). Pointed out by Brad. ok guenther@
2012-08-29Get rid of all NOPIE and NOPIE_FLAGS in amd64/stand and use -fno-pie and -nopiePascal Stumpf
directly instead. This will be the approach taken by every other arch too in the near future. It is easier than relying on bsd.own.mk to set these correctly. discussed with and ok deraadt@
2012-08-28Add -nopie to LINKFLAGS on ELF architectures. Note that this needs anPascal Stumpf
updated gcc and ld to understand the new -nopie flag. ok deraadt@
2012-08-24Synchronize CR4 and CPUID portions of <machine/specialreg.h> for i386 and amd64Philip Guenthe
Add display of more feature bits: DTES64 PCID DEADLINE F16C RDRAND Add display of "Structured Extended Feature Flags Parameters": FSGSBASE SMEP EREP INVPCID ok mikeb@
2012-08-23kill nnpfs deadTheo de Raadt
2012-08-22Convert cpp | as rules in bsd.lib.mk and lib/libc/sys/Makefile.inc to pure ccPascal Stumpf
invocations. This allows us to use the compiler builtin define __PIC__ to check for PIC/PIEness rather than passing -DPIC. Simplifies PIE work a lot. ok matthew@, conceptually ok kurt@
2012-08-22Build the kernel with -fno-pie. Just getting Ms out of my tree; this will bePascal Stumpf
cleaned up later. ok deraadt@
2012-08-21Add NOPIE= bits for sys/arch/*/stand to ensure that bootblocks will always bePascal Stumpf
built with -fno-pie. This gets the hairiest part of PIE out of the way ... ok deraadt@
2012-08-15use Lk for links;Jason McIntyre
2012-08-15add oce and mfii; ok deraadt dlgMike Belopuhov
2012-08-14enable mfii(4).David Gwynne
ok deraadt@
2012-08-10';;', even with a newline between the semicolons, doesn't make muchKenneth R Westerback
sense as a for() body. One semicolon is enough. From llvm via Brad.
2012-08-07Move the common bits of syscall invocation and return handling intoPhilip Guenthe
an MI file, <sys/syscall_mi.h>, correcting inconsistencies and the handling when copyin() of arguments fails. Tested on i386, amd64, sparc64, and alpha (thanks naddy@) Any issues with other platforms will be fixed in tree. header name from millert@; ok miod@
2012-08-03enable oce(4)Mike Belopuhov
2012-08-01Use mtrrmask instead of hardcoded values to accommodate newer CPUsMike Belopuhov
with a large physical address size (greater than 36 bit). Fixes a major performance hit seen on newer servers where an incorrectly programmed memory region length affects the PCI device mappings. While here, make sure to invalidate the TLB after programming MSRs and fix an incorrect behavior found by deraadt@ where MTRRdefType was updated outside of the protected region. The fix was partly obtained from FreeBSD, tested by many. With and OK deraadt
2012-07-13extraneous comment (corresponding code was removed a while back)Mike Larkin
2012-07-13Make amd64 look like i386 for hibernate resumeMike Larkin
2012-07-13Make amd64 like i386 for hibernate support in acpi_sleep_machdepMike Larkin
ok deraadt@