summaryrefslogtreecommitdiff
path: root/sys/arch/amd64
AgeCommit message (Collapse)Author
2010-12-06- use consistent 'include' rules without a full relative path.Jasper Lievisse Adriaanse
tested on a GENERIC config from all arches. ok deraadt@ miod@
2010-12-06- drop NENTS(), which was yet another copy of nitems().Jasper Lievisse Adriaanse
no binary change ok deraadt@
2010-12-04Introduce a new pci routine, pci_conf_size(), which returns the size of aMiod Vallat
given pcitag_t configuration address space. Currently, all pci controllers will return the usual 0x100 bytes of PCI configuration space, but this will eventually change on PCIe-capable controlers. ok kettenis@
2010-12-04The pm_cpus member of the pmap is now a 64bit integer: update the assemblyPhilip Guenthe
used in cpu_switch() for handling it. Also, delete an unnecessary instruction that I added while debugging the pm_cpus handling before ok kettenis@
2010-12-02After the most recent change, make it possible to make -j again. TheTheo de Raadt
early MD and late MI files must be split up so that vers.o can sneak between. Issue spotted by bluhm, repair discussed with miod
2010-12-02move vers.o to before the other objects, so that it is not linked last.Theo de Raadt
having it linked last is bad (on at least i386 and amd64) because the lapic is mapped over the start of the data segment -- savecore(8) then reads the version string for a fixed buffer space, and reads into the lapic area causing unintended side-effects (at least on Intel X5570 and X5680) found by pedro, discussed with kettenis and mpf and miod
2010-11-30Extend bitmasks to 64-bit such that we can support up to 64 CPU cores.Mark Kettenis
tested by dlg@, ok jsing@
2010-11-29double the default message buffer size. again.David Gwynne
requested by deraadt@
2010-11-29bump the number of supported cpus from 32 up to 64. lets me attach and useDavid Gwynne
all 48 cores in one of my boxes. requested by deraadt@ made possible by the recent pmap diff by kettenis@
2010-11-27Remove ddb single-step load and store counters. Most platforms do notMiod Vallat
implement them, and they are of questionable usefulness.
2010-11-27Make sure we don't attach more CPUs than we can handle. Prevents anMark Kettenis
out-of-bounds array access later on. Allows OpenBSD to boot on machines with more than 32 CPUs/cores. ok krw@, jsing@, dlg@
2010-11-26Disable uscanner(4) by default on all kernels which configure it. First stepMiod Vallat
until possible removal, if indeed this causes no regression for scanner users.
2010-11-26Nuke the unused variable cpus_attached. It is unused and 32 bitsKenneth R Westerback
aren't enough to keep track of possible cores these days anyway. 36-core amd64 box encountered by dlg@ ok dlg@ kettenis@
2010-11-23removed slot argument of function pckbc_cnattachAlexandr Shadchin
because it is always PCKBC_KBD_SLOT ok krw@, miod@
2010-11-22Remove old comment about constab[] being eventually generated by config(8).Miod Vallat
This has never happened and this wouldn't make much sense on anything but hp300, if at all, nowadays.
2010-11-22Remove prototypes for missing (removed) functions or already found in aMiod Vallat
MI header file.
2010-11-20typoMiod Vallat
2010-11-20This is a first step towards getting rid of avail_start and avail_end in theMiod Vallat
kernel, currently limited to low-hanging fruit: these variables were used by bus_dma to specify the range in which to allocate memory, back when uvm_pglistalloc() was stupid and would not walk the vm_physseg[]. Nowadays, except on some platforms for early initialization, these variables are not used, or do not need to be global variables. Therefore: - remove `extern' declarations of avail_start and avail_end (or close cousins, such as arm physical_start and physical_end) from files which no longer need to use them. - make them local variables whenever possible. - remove them when they are assigned to but no longer used.
2010-11-20__attribute__((packed)) -> __packed. The ioprbs.c chunk was commented out, andMiod Vallat
uncommenting it is intentional. ok deraadt@
2010-11-18Don'tMiod Vallat
#include "foo.h" #if NFOO > 0 (whole file) #endif since config(8) file inclusion rules already do it for you. ok deraadt@
2010-11-18Do not #include <sys/dkstat.h> if you don't need anything from it.Miod Vallat
ok krw@ deraadt@
2010-11-15rename aesni_sess to aesni_session; bugged me all the timeMike Belopuhov
2010-11-15do session allocations from the poolMike Belopuhov
2010-11-15thrash less cache lines and zero out only what we've touchedMike Belopuhov
2010-11-15convert one if-else instance to the switch to ease gcm integration;Mike Belopuhov
use proper define for the initial counter block
2010-11-15round up crd_len to the blocksize; will be needed for gcmMike Belopuhov
2010-11-15there's either mbuf or an iovec, no other option is possibleMike Belopuhov
2010-11-13Switch from TSS-per-process to TSS-per-CPU, placing the TSS rightPhilip Guenthe
next to the cpu's GDT, also making the double-fault stack per-CPU, leaving it at the top of the page of the CPU's idle process. Inline pmap_activate() and pmap_deactivate() into the asm cpu_switchto routine, adding a check for the new pmap already being marked as active on the CPU. Garbage collect the hasn't-been-used-in-years GDT update IPI. Tested by many; ok mikeb@, kettenis@
2010-11-12Push all potential (as in, all system MI not utilized by the bootblocks)Theo de Raadt
.h files into the ctags run as well to bring #define's and structs and such into scope. Problem reported by thib
2010-11-10pass aesni_ctr_enc an initial counter block instead of an initialization vectorMike Belopuhov
2010-11-05urtwn(4), a driver for Realtek RTL8188CU/RTL8192CU 802.11n USB devices.Damien Bergamini
these devices are different from the RTL8191SU/RTL8192SU ones that are not supported by this driver. requires a firmware (urtwn-firmware-1.0) committed over a Hercules HWNUp-150 (RTL8188CU). ok deraadt@
2010-11-03no need to specify the -t flag to ctagsTheo de Raadt
2010-11-03only let vmt match and therefore attach if mainbus is specifically askingDavid Gwynne
for vmt to attach after vmt_probe succeeds. this prevents vmt from appearing at other attach points hanging off mainbus. found by phessler@ and debugged gently by claudio@
2010-11-01use the amd64 name for this frame, instead of the i386 name, to bePeter Hessler
consistent with the rest of the file. requested to be a seperate commit by kettenis@
2010-11-01convert a trap that ends up in 'we_re_toast' from a boot(RB_HALT) into aPeter Hessler
real panic. this brings amd64 inline with all of the other arches. OK kettenis@, mikeb@, krw@, guenther@, thib@
2010-10-26The LDT is only used by dead compat code now, so load the ldtPhilip Guenthe
register with the null selector (disabling use of it), stop reloading it on every context switch, and blow away the table itself, as well as the pcb and pmap bits that were used to track it. Also, delete two other unused pcb members: pcb_usersp and pcb_flags. (Deleting pcb_usersp also keeps the pcb_savefpu member aligned properly.) Finally, delete the defines for the unimplemented AMD64_{GET,SET}_LDT sysarch() calls. Tested by various with both AMD and Intel chips ok mikeb@
2010-10-26enable vmt(4). hopefully it will get some use soon.David Gwynne
"sure." deraadt@
2010-10-14Clean up segment handling: switch user-space to using code and dataPhilip Guenthe
segments in the GDT instead of the LDT and eliminate the GDT slots that we don't actually use. tested on both amd and intel by several not really the right person, but ok: kettenis@
2010-10-06Correct the condition under which the x_wakeup_vector is cleared.Theo de Raadt
ok mlarkin
2010-10-04add support for midi(4) ports to envy(4)Alexandre Ratchov
2010-10-02turn off lid suspend if we doing halt -pTheo de Raadt
ok kettenis marco miod
2010-10-02unneccessary check before calling cpu_unidle; Vladimir KirillovTheo de Raadt
2010-10-02Ensure the caches are wbinvd'd before we say that the cpu is not runningTheo de Raadt
anymore. ok kettenis
2010-10-02make ci_flags volatile; some future MD code will depend on this.Theo de Raadt
ok kettenis
2010-09-29Back out previous, it appears to be broken.Joshua Elsasser
2010-09-29When reading MXCSR from userland sigcontext, mask out invalid bits.Joshua Elsasser
This prevents a protection fault if a userland signal handler scribbles all over it's struct sigcontext Help from and ok guenther@ kettenis@
2010-09-28Implement a per-cpu held mutex counter if DIAGNOSTIC on all non-x86 platforms,Miod Vallat
to complete matthew@'s commit of a few days ago, and drop __HAVE_CPU_MUTEX_LEVEL define. With help from, and ok deraadt@.
2010-09-28Correct the handling of GS.base when iretq faults: the fault happensPhilip Guenthe
with CPL == 0 but the user's GS.base, so the normal INTRENTRY handling won't work. Contrawise, the asm that trap() redirects us to when that happens (resume_iret) sees a trapframe showing CPL==3 but it's run with the kernel's GS.base, so INTRENTRY won't work there either. asm style fixes drahn@ and mikeb@ ok kettenis@
2010-09-27add support for tracing process stacks in ddb (trace /p).Mike Belopuhov
due to the way arguments are parsed, pid has to be specified in the hexadecimal notation. tested by me and sthen, ok sthen kettenis
2010-09-26Merge pmsi(4) into pms(4). From Alexandr Shadchin on tech@.Miod Vallat