Up to [cvs.NetBSD.org] / src / sys / arch / x86 / include
Request diff between arbitrary revisions
Default branch: MAIN
Current tag: MAIN
Revision 1.53 / (download) - annotate - [select for diffs], Sat Oct 27 17:18:13 2012 UTC (6 months, 4 weeks ago) by chs
Branch: MAIN
CVS Tags: yamt-pagecache-base8,
yamt-pagecache-base7,
yamt-pagecache-base6,
tls-maxphys-nbase,
tls-maxphys-base,
khorben-n900,
agc-symver-base,
agc-symver,
HEAD
Changes since 1.52: +1 -2
lines
Diff to previous 1.52 (colored)
split device_t/softc for all remaining drivers. replace "struct device *" with "device_t". use device_xname(), device_unit(), etc.
Revision 1.52 / (download) - annotate - [select for diffs], Sun Jul 15 15:17:56 2012 UTC (10 months, 1 week ago) by dsl
Branch: MAIN
Branch point for: tls-maxphys
Changes since 1.51: +1 -2
lines
Diff to previous 1.51 (colored)
Rename MDP_IRET to MDL_IRET since it is an lwp flag, not a proc one. Add an MDL_COMPAT32 flag to the lwp's md_flags, set it for 32bit lwps and use it to force 'return to user' with iret (as is done when MDL_IRET is set). Split the iret/sysret code paths much later. Remove all the replicated code for 32bit system calls - which was only needed so that iret was always used. frameasm.h for XEN contains '#define swapgs', while XEN probable never needs swapgs, this is likely to be confusing. Add a SWAPGS which is a nop on XEN and swapgs otherwise. (I've not yet checked all the swapgs in files that include frameasm.h) Simple x86 programs still work. Hijack 6.99.9 kernel bump (needed for compat32 modules)
Revision 1.51 / (download) - annotate - [select for diffs], Sat Jun 16 17:30:18 2012 UTC (11 months, 1 week ago) by chs
Branch: MAIN
Changes since 1.50: +2 -2
lines
Diff to previous 1.50 (colored)
rename the global variable "cpu" to "cputype" to avoid conflicting with dtrace, which wants to use "cpu" as a local variable.
Revision 1.50 / (download) - annotate - [select for diffs], Fri Apr 20 22:23:24 2012 UTC (13 months ago) by rmind
Branch: MAIN
CVS Tags: yamt-pagecache-base5,
jmcneill-usbmp-base9,
jmcneill-usbmp-base10
Changes since 1.49: +2 -4
lines
Diff to previous 1.49 (colored)
- Convert x86 MD code, mainly pmap(9) e.g. TLB shootdown code, to use kcpuset(9) and thus replace hardcoded CPU bitmasks. This removes the limitation of maximum CPUs. - Support up to 256 CPUs on amd64 architecture by default. Bug fixes, improvements, completion of Xen part and testing on 64-core AMD Opteron(tm) Processor 6282 SE (also, as Xen HVM domU with 128 CPUs) by Manuel Bouyer.
Revision 1.49 / (download) - annotate - [select for diffs], Fri Mar 2 16:43:31 2012 UTC (14 months, 3 weeks ago) by bouyer
Branch: MAIN
CVS Tags: yamt-pagecache-base4,
jmcneill-usbmp-base8,
jmcneill-usbmp-base7,
jmcneill-usbmp-base6,
jmcneill-usbmp-base4
Changes since 1.48: +1 -2
lines
Diff to previous 1.48 (colored)
Follow locore.S and move FPU handling from x86_64_switch_context() to x86_64_tls_switch(); raise IPL to IPL_HIGH in x86_64_switch_context() and test ci_fpcurlwp to decide to disable FPU or not. Change the Xen i386 context switch code to be like the amd64 one.
Revision 1.48 / (download) - annotate - [select for diffs], Fri Feb 17 18:40:18 2012 UTC (15 months, 1 week ago) by bouyer
Branch: MAIN
CVS Tags: jmcneill-usbmp-base5,
jmcneill-usbmp-base3,
jmcneill-usbmp-base2
Changes since 1.47: +4 -2
lines
Diff to previous 1.47 (colored)
Apply patch proposed in PR port-xen/45975 (this does not solve the exact problem reported here but is part of the solution): xen_kpm_sync() is not working as expected, leading to races between CPUs. 1 the check (xpq_cpu != &x86_curcpu) is always false because we have different x86_curcpu symbols with different addresses in the kernel. Fortunably, all addresses dissaemble to the same code. Because of this we always use the code intended for bootstrap, which doesn't use cross-calls or lock. 2 once 1 above is fixed, xen_kpm_sync() will use xcalls to sync other CPUs, which cause it to sleep and pmap.c doesn't like that. It triggers this KASSERT() in pmap_unmap_ptes(): KASSERT(pmap->pm_ncsw == curlwp->l_ncsw); 3 pmap->pm_cpus is not safe for the purpose of xen_kpm_sync(), which needs to know on which CPU a pmap is loaded *now*: pmap->pm_cpus is cleared before cpu_load_pmap() is called to switch to a new pmap, leaving a window where a pmap is still in a CPU's ci_kpm_pdir but not in pm_cpus. As a virtual CPU may be preempted by the hypervisor at any time, it can be large enough to let another CPU free the PTP and reuse it as a normal page. To fix 2), avoid cross-calls and IPIs completely, and instead use a mutex to update all CPU's ci_kpm_pdir from the local CPU. It's safe because we just need to update the table page, a tlbflush IPI will happen later. As a side effect, we don't need a different code for bootstrap, fixing 1). The mutex added to struct cpu needs a small headers reorganisation. to fix 3), introduce a pm_xen_ptp_cpus which is updated from cpu_pmap_load(), whith the ci_kpm_mtx mutex held. Checking it with ci_kpm_mtx held will avoid overwriting the wrong pmap's ci_kpm_pdir. While there I removed the unused pmap_is_active() function; and added some more details to DIAGNOSTIC panics.
Revision 1.47 / (download) - annotate - [select for diffs], Sun Feb 12 14:38:18 2012 UTC (15 months, 1 week ago) by jym
Branch: MAIN
CVS Tags: netbsd-6-base
Branch point for: netbsd-6
Changes since 1.46: +3 -3
lines
Diff to previous 1.46 (colored)
Xen clock management routines keep track of CPU (following MP merge). Reflect this change in the suspend/resume routines so they can cope with domU CPU suspend, instead of setting their cpu_info pointer to NULL. Avoid copy/pasting by using the resume routines during attachement. ok releng@. No regression observed, and allows domU to suspend successfully again. Restore is a different beast as PD/PT flags are marked "invalid" by Xen-4 hypervisor, and blocks resuming. Looking into it.
Revision 1.46 / (download) - annotate - [select for diffs], Sat Jan 28 07:19:17 2012 UTC (15 months, 3 weeks ago) by cherry
Branch: MAIN
Changes since 1.45: +4 -3
lines
Diff to previous 1.45 (colored)
stop using alternate pde mapping in xen pmap
Revision 1.45 / (download) - annotate - [select for diffs], Fri Dec 30 17:57:49 2011 UTC (16 months, 3 weeks ago) by cherry
Branch: MAIN
Changes since 1.44: +2 -2
lines
Diff to previous 1.44 (colored)
Move the per-cpu l3 page allocation code to a separate MD function. Avoids code duplication for xen PAE
Revision 1.44 / (download) - annotate - [select for diffs], Wed Dec 7 15:47:42 2011 UTC (17 months, 2 weeks ago) by cegger
Branch: MAIN
Changes since 1.43: +3 -3
lines
Diff to previous 1.43 (colored)
switch from xen3-public to xen-public.
Revision 1.43 / (download) - annotate - [select for diffs], Sat Nov 19 17:13:39 2011 UTC (18 months ago) by cherry
Branch: MAIN
CVS Tags: jmcneill-usbmp-pre-base2,
jmcneill-usbmp-base,
jmcneill-audiomp3-base,
jmcneill-audiomp3
Branch point for: jmcneill-usbmp
Changes since 1.42: +2 -1
lines
Diff to previous 1.42 (colored)
[merging from cherry-xenmp] bring in bouyer@'s changes via: http://mail-index.netbsd.org/source-changes/2011/10/22/msg028271.html From the Log: Log Message: Various interrupt fixes, mainly: keep a per-cpu mask of enabled events, and use it to get pending events. A cpu-specific event (all of them at this time) should not be ever masked by another CPU, because it may prevent the target CPU from seeing it (the clock events all fires at once for example).
Revision 1.42 / (download) - annotate - [select for diffs], Thu Nov 10 00:12:05 2011 UTC (18 months, 2 weeks ago) by jym
Branch: MAIN
CVS Tags: yamt-pagecache-base3
Changes since 1.41: +2 -2
lines
Diff to previous 1.41 (colored)
Turn the 'i386_use_pae' variable into simply 'use_pae'. Technically speaking we are also running with PAE enabled in long mode under amd64, so this variable will be used in various places across x86 machdep to branch at runtime to functions that require extra handling for PAE mode.
Revision 1.41 / (download) - annotate - [select for diffs], Sun Nov 6 15:18:18 2011 UTC (18 months, 2 weeks ago) by cherry
Branch: MAIN
CVS Tags: yamt-pagecache-base2
Changes since 1.40: +9 -11
lines
Diff to previous 1.40 (colored)
[merging from cherry-xenmp] make pmap_kernel() shadow PMD per-cpu and MP aware.
Revision 1.40 / (download) - annotate - [select for diffs], Tue Nov 1 21:21:32 2011 UTC (18 months, 3 weeks ago) by joerg
Branch: MAIN
CVS Tags: yamt-pagecache-base
Branch point for: yamt-pagecache
Changes since 1.39: +7 -2
lines
Diff to previous 1.39 (colored)
Reduce exposure of kernel internals for __KMEMUSER
Revision 1.39 / (download) - annotate - [select for diffs], Mon Oct 17 22:38:01 2011 UTC (19 months, 1 week ago) by jmcneill
Branch: MAIN
Changes since 1.38: +2 -1
lines
Diff to previous 1.38 (colored)
add a "vm" device class for cpufeaturebus
Revision 1.38 / (download) - annotate - [select for diffs], Tue Sep 20 00:12:23 2011 UTC (20 months ago) by jym
Branch: MAIN
Changes since 1.37: +3 -1
lines
Diff to previous 1.37 (colored)
Merge jym-xensuspend branch in -current. ok bouyer@. Goal: save/restore support in NetBSD domUs, for i386, i386 PAE and amd64. Executive summary: - split all Xen drivers (xenbus(4), grant tables, xbd(4), xennet(4)) in two parts: suspend and resume, and hook them to pmf(9). - modify pmap so that Xen hypervisor does not cry out loud in case it finds "unexpected" recursive memory mappings - provide a sysctl(7), machdep.xen.suspend, to command suspend from userland via powerd(8). Note: a suspend can only be handled correctly when dom0 requested it, so provide a mechanism that will prevent kernel to blindly validate user's commands The code is still in experimental state, use at your own risk: restore can corrupt backend communications rings; this can completely thrash dom0 as it will loop at a high interrupt level trying to honor all domU requests. XXX PAE suspend does not work in amd64 currently, due to (yet again!) page validation issues with hypervisor. Will fix. XXX secondary CPUs are not suspended, I will write the handlers in sync with cherry's Xen MP work. Tested under i386 and amd64, bear in mind ring corruption though. No build break expected, GENERICs and XEN* kernels should be fine. ./build.sh distribution still running. In any case: sorry if it does break for you, contact me directly for reports.
Revision 1.37 / (download) - annotate - [select for diffs], Thu Aug 11 18:11:17 2011 UTC (21 months, 2 weeks ago) by cherry
Branch: MAIN
CVS Tags: jym-xensuspend-nbase,
jym-xensuspend-base
Changes since 1.36: +3 -1
lines
Diff to previous 1.36 (colored)
Hide the MD details of specific IPIs behind semantically pleasing functions. This cleans up a couple of #ifdef XEN/#endif pairs
Revision 1.36 / (download) - annotate - [select for diffs], Wed Aug 10 06:40:35 2011 UTC (21 months, 2 weeks ago) by cherry
Branch: MAIN
Changes since 1.35: +19 -7
lines
Diff to previous 1.35 (colored)
Add Xen specific members to struct cpu_info, Add proper per-cpu curcpu() functionality
Revision 1.35 / (download) - annotate - [select for diffs], Sun Jun 12 03:35:50 2011 UTC (23 months, 2 weeks ago) by rmind
Branch: MAIN
Changes since 1.34: +2 -2
lines
Diff to previous 1.34 (colored)
Welcome to 5.99.53! Merge rmind-uvmplock branch: - Reorganize locking in UVM and provide extra serialisation for pmap(9). New lock order: [vmpage-owner-lock] -> pmap-lock. - Simplify locking in some pmap(9) modules by removing P->V locking. - Use lock object on vmobjlock (and thus vnode_t::v_interlock) to share the locks amongst UVM objects where necessary (tmpfs, layerfs, unionfs). - Rewrite and optimise x86 TLB shootdown code, make it simpler and cleaner. Add TLBSTATS option for x86 to collect statistics about TLB shootdowns. - Unify /dev/mem et al in MI code and provide required locking (removes kernel-lock on some ports). Also, avoid cache-aliasing issues. Thanks to Andrew Doran and Joerg Sonnenberger, as their initial patches formed the core changes of this branch.
Revision 1.34 / (download) - annotate - [select for diffs], Tue May 31 23:28:52 2011 UTC (23 months, 3 weeks ago) by dyoung
Branch: MAIN
CVS Tags: rmind-uvmplock-nbase,
rmind-uvmplock-base,
cherry-xenmp-base
Branch point for: cherry-xenmp
Changes since 1.33: +1 -3
lines
Diff to previous 1.33 (colored)
Don't use the C preprocessor to configure USERCONF. Instead, either do or do not link in subr_userconf.c and x86_userconf.c. Provide no-op stubs for userconf_bootinfo(), userconf_init(), and userconf_prompt(). Delete all occurrences of #include "opt_userconf.h" as well as USERCONF and __HAVE_USERCONF_BOOTINFO #ifdef'age.
Revision 1.33 / (download) - annotate - [select for diffs], Thu May 26 04:25:28 2011 UTC (2 years ago) by uebayasi
Branch: MAIN
Changes since 1.32: +3 -1
lines
Diff to previous 1.32 (colored)
Support userconf(4) command in boot(8)/boot.cfg(5) on i386/amd64. From jmmv@, no objections seen in the proposed thread: http://mail-index.netbsd.org/tech-kern/2009/01/22/msg004081.html
Revision 1.32 / (download) - annotate - [select for diffs], Wed Apr 13 06:29:30 2011 UTC (2 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.31: +7 -7
lines
Diff to previous 1.31 (colored)
move the include sys/types.h xor stdbool.h to the top of the file, so that "bool" will be present when used later in the file.
Revision 1.31 / (download) - annotate - [select for diffs], Thu Feb 24 15:42:17 2011 UTC (2 years, 3 months ago) by jruoho
Branch: MAIN
CVS Tags: bouyer-quota2-nbase
Changes since 1.30: +2 -2
lines
Diff to previous 1.30 (colored)
Fix autoconf(9) of cpufeaturebus.
Revision 1.30 / (download) - annotate - [select for diffs], Wed Feb 23 11:43:22 2011 UTC (2 years, 3 months ago) by jruoho
Branch: MAIN
Changes since 1.29: +2 -1
lines
Diff to previous 1.29 (colored)
Move ENHANCED_SPEEDSTEP, or henceforth est(4), to the cpufeaturebus.
Revision 1.29 / (download) - annotate - [select for diffs], Sun Feb 20 13:42:45 2011 UTC (2 years, 3 months ago) by jruoho
Branch: MAIN
Changes since 1.28: +2 -1
lines
Diff to previous 1.28 (colored)
Modularize coretemp(4). Ok jmcneill@.
Revision 1.28 / (download) - annotate - [select for diffs], Sun Feb 20 12:47:21 2011 UTC (2 years, 3 months ago) by jmcneill
Branch: MAIN
Changes since 1.27: +1 -2
lines
Diff to previous 1.27 (colored)
cpu.h no longer needs via_padlock.h
Revision 1.27 / (download) - annotate - [select for diffs], Sat Feb 19 13:52:28 2011 UTC (2 years, 3 months ago) by jmcneill
Branch: MAIN
Changes since 1.26: +2 -2
lines
Diff to previous 1.26 (colored)
modularize VIA PadLock support - retire options VIA_PADLOCK, replace with 'padlock0 at cpu0' - driver supports attach & detach - support building as a module
Revision 1.26 / (download) - annotate - [select for diffs], Wed Dec 22 04:15:01 2010 UTC (2 years, 5 months ago) by christos
Branch: MAIN
CVS Tags: uebayasi-xip-base7,
matt-mips64-premerge-20101231,
jruoho-x86intr-base,
bouyer-quota2-base
Branch point for: jruoho-x86intr,
bouyer-quota2
Changes since 1.25: +2 -2
lines
Diff to previous 1.25 (colored)
Make __HAVE_CPU_DATA_FIRST true
Revision 1.25 / (download) - annotate - [select for diffs], Mon Aug 16 19:39:06 2010 UTC (2 years, 9 months ago) by jym
Branch: MAIN
CVS Tags: yamt-nfs-mp-base11,
uebayasi-xip-base6,
uebayasi-xip-base5,
uebayasi-xip-base4,
uebayasi-xip-base3
Changes since 1.24: +2 -1
lines
Diff to previous 1.24 (colored)
Add machdep.pae sysctl(7) for i386. Thanks to Paul and Joerg for their reviews. In kernel, it matches the 'i386_use_pae' variable (0: kernel does not use PAE, 1: kernel uses PAE). Will be used by i386 kvm(3) to know the functions that should get called for VA => PA translations.
Revision 1.24 / (download) - annotate - [select for diffs], Wed Aug 4 10:02:11 2010 UTC (2 years, 9 months ago) by jruoho
Branch: MAIN
CVS Tags: yamt-nfs-mp-base10,
uebayasi-xip-base2
Changes since 1.23: +2 -1
lines
Diff to previous 1.23 (colored)
Store the MADT-derived CPU ID to <x86/cpu.h>. This is required to properly match the ACPI processor object ID with the ID available in the APIC table.
Revision 1.23 / (download) - annotate - [select for diffs], Sat Jul 24 00:45:56 2010 UTC (2 years, 10 months ago) by jym
Branch: MAIN
Changes since 1.22: +14 -1
lines
Diff to previous 1.22 (colored)
Welcome PAE inside i386 current.
This patch is inspired by work previously done by Jeremy Morse, ported by me
to -current, merged with the work previously done for port-xen, together with
additionals fixes and improvements.
PAE option is disabled by default in GENERIC (but will be enabled in ALL in
the next few days).
In quick, PAE switches the CPU to a mode where physical addresses become
36 bits (64 GiB). Virtual address space remains at 32 bits (4 GiB). To cope
with the increased size of the physical address, they are manipulated as
64 bits variables by kernel and MMU.
When supported by the CPU, it also allows the use of the NX/XD bit that
provides no-execution right enforcement on a per physical page basis.
Notes:
- reworked locore.S
- introduce cpu_load_pmap(), used to switch pmap for the curcpu. Due to the
different handling of pmap mappings with PAE vs !PAE, Xen vs native, details
are hidden within this function. This helps calling it from assembly,
as some features, like BIOS calls, switch to pmap_kernel before mapping
trampoline code in low memory.
- some changes in bioscall and kvm86_call, to reflect the above.
- the L3 is "pinned" per-CPU, and is only manipulated by a
reduced set of functions within pmap. To track the L3, I added two
elements to struct cpu_info, namely ci_l3_pdirpa (PA of the L3), and
ci_l3_pdir (the L3 VA). Rest of the code considers that it runs "just
like" a normal i386, except that the L2 is 4 pages long (PTP_LEVELS is
still 2).
- similar to the ci_pae_l3_pdir{,pa} variables, amd64's xen_current_user_pgd
becomes an element of cpu_info (slowly paving the way for MP world).
- bootinfo_source struct declaration is modified, to cope with paddr_t size
change with PAE (it is not correct to assume that bs_addr is a paddr_t when
compiled with PAE - it should remain 32 bits). bs_addrs is now a
void * array (in bootloader's code under i386/stand/, the bs_addrs
is a physaddr_t, which is an unsigned long).
- fixes in multiboot code (same reason as bootinfo): paddr_t size
change. I used Elf32_* types, use RELOC() where necessary, and move the
memcpy() functions out of the if/else if (I do not expect sym and str tables
to overlap with ELF).
- 64 bits atomic functions for pmap
- all pmap_pdirpa access are now done through the pmap_pdirpa macro. It
hides the L3/L2 stuff from PAE, as well as the pm_pdirpa change in
struct pmap (it now becomes a PDP_SIZE array, with or without PAE).
- manipulation of recursive mappings ( PDIR_SLOT_{,A}PTEs ) is done via
loops on PDP_SIZE.
See also http://mail-index.netbsd.org/port-i386/2010/07/17/msg002062.html
No objection raised on port-i386@ and port-xen@R for about a week.
XXX kvm(3) will be fixed in another patch to properly handle both PAE and !PAE
kernel dumps (VA => PA macros are slightly different, and need proper 64 bits
PA support in kvm_i386).
XXX Mixing PAE and !PAE modules may lead to unwanted/unexpected results. This
cannot be solved easily, and needs lots of thinking before being declared
safe (paddr_t/bus_addr_t size handling, PD/PT macros abstractions).
Revision 1.22 / (download) - annotate - [select for diffs], Sun May 9 20:32:41 2010 UTC (3 years ago) by rmind
Branch: MAIN
Changes since 1.21: +1 -4
lines
Diff to previous 1.21 (colored)
Drop x86 MD package/core/smt IDs and use MI.
Revision 1.21 / (download) - annotate - [select for diffs], Sun Apr 18 23:47:51 2010 UTC (3 years, 1 month ago) by jym
Branch: MAIN
CVS Tags: uebayasi-xip-base1
Changes since 1.20: +9 -9
lines
Diff to previous 1.20 (colored)
This patch fixes the NX regression issue observed on amd64 kernels, where per-page execution right was disabled (therefore leading to the inability of the kernel to detect fraudulent use of memory mappings marked as not being executable). - replace cpu_feature and ci_feature_flags variables by cpu_feature and ci_feat_val arrays. This makes it cleaner and brings kernel code closer to the design of cpuctl(8). A warning will be raised for each CPU that does not expose the same features as the Boot Processor (BP). - the blacklist of CPU features is now a macro defined in the specialreg.h header, instead of hardcoding it inside MD initialization code; fix comments. - replace checks against CPUID_TSC with the cpu_hascounter() function. - clean up the code in init_x86_64(), as cpu_feature variables are set inside cpu_probe(). - use cpu_init_msrs() for i386. It will be eventually used later for NX feature under i386 PAE kernels. - remove code that checks for CPUID_NOX in amd64 mptramp.S, this is already performed by cpu_hatch() through cpu_init_msrs(). - remove cpu_signature and feature_flags members from struct mpbios_proc (they were never used). This patch was tested with i386 MONOLITHIC, XEN3PAE_DOM0 and XEN3_DOM0 under a native i386 host, and amd64 GENERIC, XEN3_DOM0 via QEMU virtual machines. XXX Should kernel rev be bumped? XXX A similar patch should be pulled-up for NetBSD-5, hopefully tomorrow.
Revision 1.20 / (download) - annotate - [select for diffs], Mon Jan 18 16:40:17 2010 UTC (3 years, 4 months ago) by rmind
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9,
uebayasi-xip-base
Branch point for: uebayasi-xip,
rmind-uvmplock
Changes since 1.19: +2 -2
lines
Diff to previous 1.19 (colored)
x86_cpu_topology, not toplogy.
Revision 1.19 / (download) - annotate - [select for diffs], Sat Jan 9 20:56:17 2010 UTC (3 years, 4 months ago) by cegger
Branch: MAIN
Changes since 1.18: +5 -4
lines
Diff to previous 1.18 (colored)
add x2apic support. patch presented on current-users@, port-i386@ and port-amd64@ on 2009-12-22 No comments.
Revision 1.18 / (download) - annotate - [select for diffs], Sat Nov 21 03:11:01 2009 UTC (3 years, 6 months ago) by rmind
Branch: MAIN
CVS Tags: matt-premerge-20091211
Changes since 1.17: +2 -2
lines
Diff to previous 1.17 (colored)
Use lwp_getpcb() on x86 MD code, clean from struct user usage.
Revision 1.17 / (download) - annotate - [select for diffs], Thu Apr 30 00:07:23 2009 UTC (4 years ago) by rmind
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8,
yamt-nfs-mp-base7,
yamt-nfs-mp-base6,
yamt-nfs-mp-base5,
yamt-nfs-mp-base4,
yamt-nfs-mp-base3,
jymxensuspend-base
Changes since 1.16: +4 -1
lines
Diff to previous 1.16 (colored)
Move x86 CPU topology detection code into the separate file (as it was originally). OK by <yamt>.
Revision 1.16 / (download) - annotate - [select for diffs], Sun Apr 19 14:11:37 2009 UTC (4 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: nick-hppapmap-base4,
nick-hppapmap-base3,
nick-hppapmap-base
Changes since 1.15: +2 -1
lines
Diff to previous 1.15 (colored)
cpuctl: - Add interrupt shielding (direct hardware interrupts away from the specified CPUs). Not documented just yet but will be soon. - Redo /dev/cpu time_t compat so no kernel changes are needed. x86: - Make intr_establish, intr_disestablish safe to use when !cold. - Distribute hardware interrupts among the CPUs, instead of directing everything to the boot CPU. - Add MD code for interrupt sheilding. This works in most cases but there is a bug where delivery is not accepted by an LAPIC after redistribution. It also needs re-balancing to make things fair after interrupts are turned back on for a CPU.
Revision 1.15 / (download) - annotate - [select for diffs], Thu Apr 16 15:34:23 2009 UTC (4 years, 1 month ago) by rmind
Branch: MAIN
Changes since 1.14: +18 -1
lines
Diff to previous 1.14 (colored)
- Add macros to handle (some) trapframe registers for common x86 code. - Merge i386 and amd64 syscall.c into x86. No functional changes intended. Proposed on (port-i386 & port-amd64). Unfortunately, I cannot merge these lists into the single port-x86. :(
Revision 1.14 / (download) - annotate - [select for diffs], Mon Mar 30 09:51:37 2009 UTC (4 years, 1 month ago) by tsutsui
Branch: MAIN
Changes since 1.13: +3 -3
lines
Diff to previous 1.13 (colored)
#include <sys/types.h>, not <stdbool.h> for userland in defined(_STANDALONE) case too.
Revision 1.13 / (download) - annotate - [select for diffs], Sat Mar 28 21:34:17 2009 UTC (4 years, 1 month ago) by rmind
Branch: MAIN
Changes since 1.12: +2 -2
lines
Diff to previous 1.12 (colored)
kvtop: change return type to paddr_t.
Revision 1.12 / (download) - annotate - [select for diffs], Fri Mar 27 16:07:37 2009 UTC (4 years, 1 month ago) by dyoung
Branch: MAIN
Changes since 1.11: +7 -1
lines
Diff to previous 1.11 (colored)
If defined(_KERNEL), #include <sys/types.h>, otherwise #include <stdbool.h>, for the bool definition that we need. cpu.h only got the definition by chance, before.
Revision 1.11 / (download) - annotate - [select for diffs], Sat Mar 7 21:59:25 2009 UTC (4 years, 2 months ago) by ad
Branch: MAIN
Changes since 1.10: +3 -5
lines
Diff to previous 1.10 (colored)
Expose more stuff if _KMEMUSER is defined.
Revision 1.10 / (download) - annotate - [select for diffs], Mon Dec 29 19:59:09 2008 UTC (4 years, 4 months ago) by pooka
Branch: MAIN
CVS Tags: nick-hppapmap-base2,
mjf-devfs2-base
Branch point for: jym-xensuspend
Changes since 1.9: +2 -2
lines
Diff to previous 1.9 (colored)
_LKM -> _MODULE
Revision 1.9 / (download) - annotate - [select for diffs], Sat Oct 25 19:13:40 2008 UTC (4 years, 7 months ago) by mrg
Branch: MAIN
CVS Tags: netbsd-5-base,
netbsd-5-0-RELEASE,
netbsd-5-0-RC4,
netbsd-5-0-RC3,
netbsd-5-0-RC2,
netbsd-5-0-RC1,
netbsd-5-0-2-RELEASE,
netbsd-5-0-1-RELEASE,
matt-nb5-mips64-u2-k2-k4-k7-k8-k9,
matt-nb5-mips64-u1-k1-k5,
matt-nb5-mips64-premerge-20091211,
matt-nb4-mips64-k7-u2a-k9b,
haad-nbase2,
haad-dm-base2,
haad-dm-base,
ad-audiomp2-base,
ad-audiomp2
Branch point for: nick-hppapmap,
netbsd-5-0,
netbsd-5,
matt-nb5-mips64
Changes since 1.8: +2 -1
lines
Diff to previous 1.8 (colored)
this uses an evcnt so, include <sys/evcnt.h>
Revision 1.8 / (download) - annotate - [select for diffs], Mon Oct 13 21:11:47 2008 UTC (4 years, 7 months ago) by cegger
Branch: MAIN
CVS Tags: matt-mips64-base2,
haad-dm-base1
Changes since 1.7: +3 -2
lines
Diff to previous 1.7 (colored)
print features4: cpuid fn80000001 %ecx on AMD CPUs.
Revision 1.7 / (download) - annotate - [select for diffs], Fri May 30 11:03:29 2008 UTC (4 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base4,
yamt-pf42-base3,
wrstuden-revivesa-base-4,
wrstuden-revivesa-base-3,
wrstuden-revivesa-base-2,
wrstuden-revivesa-base-1,
wrstuden-revivesa-base,
simonb-wapbl-nbase,
simonb-wapbl-base,
simonb-wapbl
Branch point for: wrstuden-revivesa,
mjf-devfs2,
haad-dm
Changes since 1.6: +1 -2
lines
Diff to previous 1.6 (colored)
fillw is dead.
Revision 1.6 / (download) - annotate - [select for diffs], Wed May 28 11:50:01 2008 UTC (4 years, 11 months ago) by ad
Branch: MAIN
Changes since 1.5: +1 -3
lines
Diff to previous 1.5 (colored)
Remove X86_MAXPROCS. There is still a 32-cpu limit, but it's now using the MI constants.
Revision 1.5 / (download) - annotate - [select for diffs], Thu May 22 13:55:51 2008 UTC (5 years ago) by ad
Branch: MAIN
Changes since 1.4: +6 -2
lines
Diff to previous 1.4 (colored)
Mark x86_curlwp() with __attribute__ ((const)), so gcc can CSE it and know that it does not clobber global data.
Revision 1.4 / (download) - annotate - [select for diffs], Mon May 12 14:41:07 2008 UTC (5 years ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base2,
yamt-pf42-base,
yamt-nfs-mp-base2,
hpcarm-cleanup-nbase
Branch point for: yamt-pf42,
yamt-nfs-mp
Changes since 1.3: +2 -4
lines
Diff to previous 1.3 (colored)
- Make cpu_number() return MI index, otherwise the pmap cannot work on systems with lapic IDs > X86_MAXPROCS. - Kill cpu_info[] array and use MI cpu_lookup_byindex().
Revision 1.3 / (download) - annotate - [select for diffs], Sun May 11 16:23:05 2008 UTC (5 years ago) by ad
Branch: MAIN
Changes since 1.2: +2 -1
lines
Diff to previous 1.2 (colored)
Don't reload LDTR unless a new value, which only happens for USER_LDT.
Revision 1.2 / (download) - annotate - [select for diffs], Sun May 11 15:59:50 2008 UTC (5 years ago) by ad
Branch: MAIN
Changes since 1.1: +1 -2
lines
Diff to previous 1.1 (colored)
Stop using APIC IDs to identify CPUs for software purposes. Allows for APIC IDs beyond 31, which has been possible for some time now.
Revision 1.1 / (download) - annotate - [select for diffs], Sun May 11 15:32:20 2008 UTC (5 years ago) by ad
Branch: MAIN
Share cpu.h between the x86 ports.