The NetBSD Project

CVS log for src/sys/arch/i386/include/cpu.h

[BACK] Up to [cvs.NetBSD.org] / src / sys / arch / i386 / include

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.185 / (download) - annotate - [select for diffs], Mon Sep 4 20:58:52 2023 UTC (7 months, 2 weeks ago) by mrg
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, HEAD
Changes since 1.184: +13 -2 lines
Diff to previous 1.184 (colored) to selected 1.177.2.1 (colored)

x86: avoid annoying GCC 12 bounds check in curcpu() and curlwp().

these functions read %gs and return an pointer at an offset from this
value (the current cpu, or lwp pointers), and GCC is complaining that
they're accessing a array cpu_info[0] (ie, zero length, no storage.)

several attempts to workaround it have failed, and because of the
asm volatile nature of this, it seems very unlikely a compiler would
take this and do something wrong with it.

Revision 1.184 / (download) - annotate - [select for diffs], Sun Apr 9 08:18:03 2023 UTC (12 months, 1 week ago) by riastradh
Branch: MAIN
Changes since 1.183: +3 -3 lines
Diff to previous 1.183 (colored) to selected 1.177.2.1 (colored)

i386: Make curlwp and curcpu() flushable.

The only effect of the `volatile' qualifier on an asm block with
outputs is to force the instructions to appear in the generated code,
even if the outputs end up being unused.  Since these instructions
have no (architectural) side effects -- provided %fs is set
correctly, which must be the case here -- there's no need for the
volatile qualifier, so nix it.

Revision 1.183 / (download) - annotate - [select for diffs], Tue Nov 2 11:26:04 2021 UTC (2 years, 5 months ago) by ryo
Branch: MAIN
CVS Tags: netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Changes since 1.182: +2 -2 lines
Diff to previous 1.182 (colored) to selected 1.177.2.1 (colored)

In order to prevent _mcount() from being recursively called when built with COPTS=-O0,
sprinkle `__always_inline' to make _mcount() be generated as a single function.

Revision 1.179.4.2 / (download) - annotate - [select for diffs], Wed Apr 8 14:07:40 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.179.4.1: +1 -12 lines
Diff to previous 1.179.4.1 (colored) to branchpoint 1.179 (colored) next main 1.180 (colored) to selected 1.177.2.1 (colored)

Merge changes from current as of 20200406

Revision 1.182 / (download) - annotate - [select for diffs], Thu Nov 21 19:24:00 2019 UTC (4 years, 4 months ago) by ad
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-futex, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Changes since 1.181: +1 -12 lines
Diff to previous 1.181 (colored) to selected 1.177.2.1 (colored)

mi_userret(): take care of calling preempt(), set spc_curpriority directly,
and remove MD code that does the same.

Revision 1.179.4.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:06:20 2019 UTC (4 years, 10 months ago) by christos
Branch: phil-wifi
Changes since 1.179: +6 -1 lines
Diff to previous 1.179 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD

Revision 1.181 / (download) - annotate - [select for diffs], Mon Feb 11 14:59:32 2019 UTC (5 years, 2 months ago) by cherry
Branch: MAIN
CVS Tags: phil-wifi-20191119, phil-wifi-20190609, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, isaki-audio2-base, isaki-audio2
Changes since 1.180: +4 -4 lines
Diff to previous 1.180 (colored) to selected 1.177.2.1 (colored)

We reorganise definitions for XEN source support as follows:

XEN - common sources required for baseline XEN support.
XENPV - sources required for support of XEN in PV mode.
XENPVHVM - sources required for support for XEN in HVM mode.
XENPVH - sources required for support for XEN in PVH mode.

Revision 1.179.2.1 / (download) - annotate - [select for diffs], Mon Nov 26 01:52:25 2018 UTC (5 years, 4 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.179: +6 -1 lines
Diff to previous 1.179 (colored) next main 1.180 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD, resolve a couple of conflicts

Revision 1.180 / (download) - annotate - [select for diffs], Sun Nov 18 23:50:48 2018 UTC (5 years, 5 months ago) by cherry
Branch: MAIN
CVS Tags: pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126
Changes since 1.179: +6 -1 lines
Diff to previous 1.179 (colored) to selected 1.177.2.1 (colored)

On Xen, copy just the bits we need from the trapframe for hardclock(9)
and statclock(9).

Current, the macros that use the trapframe are:
CLKF_USERMODE()
CLKF_PC()
CLKF_INTR()

Of these, CLKF_INTR() already ignores the frame and uses the ci_idepth
variable to do its job.

Convert the two remaining ones to do this, but only for XEN.

Revision 1.178.6.1 / (download) - annotate - [select for diffs], Sun Dec 3 11:36:17 2017 UTC (6 years, 4 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.178: +2 -2 lines
Diff to previous 1.178 (colored) next main 1.179 (colored) to selected 1.177.2.1 (colored)

update from HEAD

Revision 1.179 / (download) - annotate - [select for diffs], Sun Sep 17 09:41:35 2017 UTC (6 years, 7 months ago) by maxv
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, phil-wifi-base, pgoyette-compat-base, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315
Branch point for: phil-wifi, pgoyette-compat
Changes since 1.178: +2 -2 lines
Diff to previous 1.178 (colored) to selected 1.177.2.1 (colored)

Remove the second argument from USERMODE and KERNELMODE, it is unused
now that we don't have vm86 anymore.

Revision 1.177.2.1 / (download) - annotate - [selected], Tue Apr 17 00:06:29 2012 UTC (12 years ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.177: +5 -1 lines
Diff to previous 1.177 (colored) next main 1.178 (colored)

sync with head

Revision 1.177.6.1 / (download) - annotate - [select for diffs], Sat Feb 18 07:32:22 2012 UTC (12 years, 2 months ago) by mrg
Branch: jmcneill-usbmp
Changes since 1.177: +5 -1 lines
Diff to previous 1.177 (colored) next main 1.178 (colored) to selected 1.177.2.1 (colored)

merge to -current.

Revision 1.178 / (download) - annotate - [select for diffs], Fri Dec 30 17:57:49 2011 UTC (12 years, 3 months ago) by cherry
Branch: MAIN
CVS Tags: yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, rmind-smpnet-nbase, rmind-smpnet-base, rmind-smpnet, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, nick-nhusb, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb8-mediatek-base, matt-nb8-mediatek, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, localcount-20160914, khorben-n900, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, agc-symver-base, agc-symver
Branch point for: tls-maxphys
Changes since 1.177: +5 -1 lines
Diff to previous 1.177 (colored) to selected 1.177.2.1 (colored)

Move the per-cpu l3 page allocation code to a separate MD function. Avoids code duplication for xen PAE

Revision 1.176.2.1 / (download) - annotate - [select for diffs], Sat Aug 27 15:37:25 2011 UTC (12 years, 7 months ago) by jym
Branch: jym-xensuspend
Changes since 1.176: +2 -1 lines
Diff to previous 1.176 (colored) next main 1.177 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD. Most notably: uvm/pmap work done by rmind@, and MP Xen
work of cherry@.

No regression observed on suspend/restore.

Revision 1.176.12.1 / (download) - annotate - [select for diffs], Wed Aug 17 09:40:39 2011 UTC (12 years, 8 months ago) by cherry
Branch: cherry-xenmp
Changes since 1.176: +2 -1 lines
Diff to previous 1.176 (colored) next main 1.177 (colored) to selected 1.177.2.1 (colored)

Pullup relevant changes from -current

Revision 1.177 / (download) - annotate - [select for diffs], Tue Jul 26 12:56:39 2011 UTC (12 years, 8 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jym-xensuspend-nbase, jym-xensuspend-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Changes since 1.176: +2 -1 lines
Diff to previous 1.176 (colored) to selected 1.177.2.1 (colored)

whitespace

Revision 1.167.2.2 / (download) - annotate - [select for diffs], Mon May 4 08:11:17 2009 UTC (14 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.167.2.1: +3 -3 lines
Diff to previous 1.167.2.1 (colored) to branchpoint 1.167 (colored) next main 1.168 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.175.6.1 / (download) - annotate - [select for diffs], Mon Jan 19 13:16:20 2009 UTC (15 years, 3 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.175: +2 -2 lines
Diff to previous 1.175 (colored) next main 1.176 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.161.6.3 / (download) - annotate - [select for diffs], Sat Jan 17 13:28:04 2009 UTC (15 years, 3 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.161.6.2: +1 -1 lines
Diff to previous 1.161.6.2 (colored) to branchpoint 1.161 (colored) next main 1.162 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.176 / (download) - annotate - [select for diffs], Mon Dec 29 19:59:09 2008 UTC (15 years, 3 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base7, uebayasi-xip-base6, uebayasi-xip-base5, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, mjf-devfs2-base, matt-premerge-20091211, matt-mips64-premerge-20101231, jymxensuspend-base, jruoho-x86intr-base, jruoho-x86intr, cherry-xenmp-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: jym-xensuspend, cherry-xenmp
Changes since 1.175: +2 -2 lines
Diff to previous 1.175 (colored) to selected 1.177.2.1 (colored)

_LKM -> _MODULE

Revision 1.169.2.1 / (download) - annotate - [select for diffs], Mon Jun 23 04:30:26 2008 UTC (15 years, 9 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.169: +5 -446 lines
Diff to previous 1.169 (colored) next main 1.170 (colored) to selected 1.177.2.1 (colored)

Sync w/ -current. 34 merge conflicts to follow.

Revision 1.165.2.2 / (download) - annotate - [select for diffs], Wed Jun 4 02:04:47 2008 UTC (15 years, 10 months ago) by yamt
Branch: yamt-pf42
Changes since 1.165.2.1: +2 -2 lines
Diff to previous 1.165.2.1 (colored) to branchpoint 1.165 (colored) next main 1.166 (colored) to selected 1.177.2.1 (colored)

sync with head

Revision 1.161.6.2 / (download) - annotate - [select for diffs], Mon Jun 2 13:22:17 2008 UTC (15 years, 10 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.161.6.1: +14 -434 lines
Diff to previous 1.161.6.1 (colored) to branchpoint 1.161 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.175 / (download) - annotate - [select for diffs], Thu May 22 13:55:51 2008 UTC (15 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, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, 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, netbsd-5-0, netbsd-5, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap
Changes since 1.174: +2 -2 lines
Diff to previous 1.174 (colored) to selected 1.177.2.1 (colored)

Mark x86_curlwp() with __attribute__ ((const)), so gcc can CSE it and know
that it does not clobber global data.

Revision 1.165.2.1 / (download) - annotate - [select for diffs], Sun May 18 12:32:13 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-pf42
Changes since 1.165: +15 -435 lines
Diff to previous 1.165 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.167.2.1 / (download) - annotate - [select for diffs], Fri May 16 02:22:37 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.167: +15 -441 lines
Diff to previous 1.167 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.174 / (download) - annotate - [select for diffs], Sun May 11 16:57:43 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base2, yamt-nfs-mp-base2, hpcarm-cleanup-nbase
Changes since 1.173: +5 -1 lines
Diff to previous 1.173 (colored) to selected 1.177.2.1 (colored)

Wrap stuff in #ifdef _KERNEL

Revision 1.173 / (download) - annotate - [select for diffs], Sun May 11 15:32:20 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
Changes since 1.172: +2 -416 lines
Diff to previous 1.172 (colored) to selected 1.177.2.1 (colored)

Share cpu.h between the x86 ports.

Revision 1.172 / (download) - annotate - [select for diffs], Sun May 11 14:44:54 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
Changes since 1.171: +4 -36 lines
Diff to previous 1.171 (colored) to selected 1.177.2.1 (colored)

Simplify x86 identcpu code, and share between i386/amd64.

Revision 1.171 / (download) - annotate - [select for diffs], Sat May 10 16:12:32 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
Changes since 1.170: +2 -4 lines
Diff to previous 1.170 (colored) to selected 1.177.2.1 (colored)

Improve x86 tsc handling:

- Ditch the cross-CPU calibration stuff. It didn't work properly, and it's
  near impossible to synchronize the CPUs in a running system, because bus
  traffic will interfere with any calibration attempt, messing up the
  timings.

- Only enable the TSC on CPUs where we are sure it does not drift. If we are
  On a known good CPU, give the TSC high timecounter quality, making it the
  default.

- When booting CPUs, detect TSC skew and account for it. Most Intel MP
  systems have synchronized counters, but that need not be true if the
  system has a complicated bus structure. As far as I know, AMD systems
  do not have synchronized TSCs and so we need to handle skew.

- While an AP is waiting to be set running, try and make the TSC drift by
  entering a reduced power state. If we detect drift, ensure that the TSC
  does not get a high timecounter quality. This should not happen and is
  only for safety.

- Make cpu_counter() stuff LKM safe.

Revision 1.170 / (download) - annotate - [select for diffs], Fri May 9 18:11:28 2008 UTC (15 years, 11 months ago) by joerg
Branch: MAIN
Changes since 1.169: +4 -1 lines
Diff to previous 1.169 (colored) to selected 1.177.2.1 (colored)

Make cpu_idle a macro calling a function pointer on x86.
Select the Xen idle routine for Xen, mwait if supported by the CPU and
it is not AMD and halt otherwise. As reported by Christoph Egger,
AMD Barcelona keeps the CPU in C0 state with MWAIT, contrary to HLT,
which uses C1 and therefore much less power.

Revision 1.169 / (download) - annotate - [select for diffs], Wed Apr 30 12:44:27 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
Branch point for: wrstuden-revivesa
Changes since 1.168: +6 -2 lines
Diff to previous 1.168 (colored) to selected 1.177.2.1 (colored)

Avoid unneeded AST faults.

Revision 1.168 / (download) - annotate - [select for diffs], Mon Apr 28 22:47:37 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
Changes since 1.167: +15 -4 lines
Diff to previous 1.167 (colored) to selected 1.177.2.1 (colored)

Add support for kernel preeemption to the i386 and amd64 ports. Notes:

- I have seen one isolated panic in the x86 pmap, but otherwise i386
  seems stable with preemption enabled.

- amd64 is missing the FPU handling changes and it's not yet safe to
  enable it there.

- The usual level for kern.sched.kpreempt_pri will be 128 once enabled
  by default. For testing, setting it to 0 helps to shake out bugs.

Revision 1.167 / (download) - annotate - [select for diffs], Thu Apr 24 11:26:52 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: yamt-nfs-mp-base
Branch point for: yamt-nfs-mp
Changes since 1.166: +6 -5 lines
Diff to previous 1.166 (colored) to selected 1.177.2.1 (colored)

- Give ci_want_resched a single cache line, and align. This is for monitor/
  mwait. At least one errata sheet from Intel notes that a single line
  should be used.
- Align cc_microtime.

Revision 1.166 / (download) - annotate - [select for diffs], Mon Apr 21 15:15:34 2008 UTC (16 years ago) by cegger
Branch: MAIN
Changes since 1.165: +6 -1 lines
Diff to previous 1.165 (colored) to selected 1.177.2.1 (colored)

Access Xen's vcpu info structure per-CPU.
Tested on i386 and amd64 (both dom0 and domU) by me.
Xen2 tested (both dom0 and domU) by bouyer.
OK bouyer

Revision 1.161.6.1 / (download) - annotate - [select for diffs], Thu Apr 3 12:42:18 2008 UTC (16 years ago) by mjf
Branch: mjf-devfs2
Changes since 1.161: +12 -31 lines
Diff to previous 1.161 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.161.2.1 / (download) - annotate - [select for diffs], Mon Mar 24 07:14:59 2008 UTC (16 years ago) by keiichi
Branch: keiichi-mipv6
Changes since 1.161: +12 -31 lines
Diff to previous 1.161 (colored) next main 1.162 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.143.10.3 / (download) - annotate - [select for diffs], Sun Mar 23 02:04:07 2008 UTC (16 years, 1 month ago) by matt
Branch: matt-armv6
Changes since 1.143.10.2: +40 -43 lines
Diff to previous 1.143.10.2 (colored) to branchpoint 1.143 (colored) next main 1.144 (colored) to selected 1.177.2.1 (colored)

sync with HEAD

Revision 1.117.4.11 / (download) - annotate - [select for diffs], Mon Mar 17 09:14:20 2008 UTC (16 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.10: +5 -22 lines
Diff to previous 1.117.4.10 (colored) to branchpoint 1.117 (colored) next main 1.118 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.165 / (download) - annotate - [select for diffs], Wed Feb 27 20:18:56 2008 UTC (16 years, 1 month ago) by xtraeme
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, ad-socklock-base1
Branch point for: yamt-pf42
Changes since 1.164: +11 -2 lines
Diff to previous 1.164 (colored) to selected 1.177.2.1 (colored)

Add back the CPU_TMLR_* definitions for binary sysctl compatibility
with NetBSD pre-2.0, and use them in the longrun driver again.

Requested by cube@.

Revision 1.164 / (download) - annotate - [select for diffs], Wed Feb 27 18:26:15 2008 UTC (16 years, 1 month ago) by xtraeme
Branch: MAIN
Changes since 1.163: +1 -14 lines
Diff to previous 1.163 (colored) to selected 1.177.2.1 (colored)

Remove CTL_MACHDEP_NAMES, it's not used anywhere.

Ok by martin@.

Revision 1.163 / (download) - annotate - [select for diffs], Wed Feb 27 17:39:37 2008 UTC (16 years, 1 month ago) by xtraeme
Branch: MAIN
Changes since 1.162: +2 -15 lines
Diff to previous 1.162 (colored) to selected 1.177.2.1 (colored)

- Fixup the machdep.tm_longrun_* sysctl nodes creation.
- The CTL_TMLR_ static definitions for CTL_MACHDEP are not needed anymore.

Revision 1.117.4.10 / (download) - annotate - [select for diffs], Wed Feb 27 08:36:21 2008 UTC (16 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.9: +9 -11 lines
Diff to previous 1.117.4.9 (colored) to branchpoint 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.162 / (download) - annotate - [select for diffs], Tue Feb 26 18:24:28 2008 UTC (16 years, 1 month ago) by xtraeme
Branch: MAIN
CVS Tags: hpcarm-cleanup-base
Changes since 1.161: +9 -11 lines
Diff to previous 1.161 (colored) to selected 1.177.2.1 (colored)

Split off the Transmeta Crusoe Longrun code into its own file, that
way identcpu.c and machdep.c are not cluttered with foreign code.

The driver is built by default as before, but the sysctl subtree will
only be created if longrun is detected and not always as the old code
did. This matches what the FreeBSD code does.

Ok by christos@.

Revision 1.150.2.3 / (download) - annotate - [select for diffs], Mon Feb 18 21:04:40 2008 UTC (16 years, 2 months ago) by mjf
Branch: mjf-devfs
Changes since 1.150.2.2: +42 -17 lines
Diff to previous 1.150.2.2 (colored) to branchpoint 1.150 (colored) next main 1.151 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.117.4.9 / (download) - annotate - [select for diffs], Mon Feb 11 14:59:27 2008 UTC (16 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.8: +3 -3 lines
Diff to previous 1.117.4.8 (colored) to branchpoint 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.161 / (download) - annotate - [select for diffs], Sun Feb 10 14:37:41 2008 UTC (16 years, 2 months ago) by ad
Branch: MAIN
CVS Tags: nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base
Branch point for: mjf-devfs2, keiichi-mipv6
Changes since 1.160: +3 -3 lines
Diff to previous 1.160 (colored) to selected 1.177.2.1 (colored)

Align cc_microtime and struct cpu_info to 64b.

Revision 1.117.4.8 / (download) - annotate - [select for diffs], Mon Jan 21 09:37:07 2008 UTC (16 years, 3 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.7: +67 -18 lines
Diff to previous 1.117.4.7 (colored) to branchpoint 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head

Revision 1.151.4.4 / (download) - annotate - [select for diffs], Sat Jan 19 12:14:21 2008 UTC (16 years, 3 months ago) by bouyer
Branch: bouyer-xeni386
Changes since 1.151.4.3: +2 -8 lines
Diff to previous 1.151.4.3 (colored) to branchpoint 1.151 (colored) next main 1.152 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD

Revision 1.160 / (download) - annotate - [select for diffs], Wed Jan 16 09:37:08 2008 UTC (16 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: bouyer-xeni386-nbase, bouyer-xeni386-base
Changes since 1.159: +1 -7 lines
Diff to previous 1.159 (colored) to selected 1.177.2.1 (colored)

Remove options MATH_EMULATE.

Revision 1.159 / (download) - annotate - [select for diffs], Tue Jan 15 14:50:09 2008 UTC (16 years, 3 months ago) by joerg
Branch: MAIN
Changes since 1.158: +3 -3 lines
Diff to previous 1.158 (colored) to selected 1.177.2.1 (colored)

Introduce optional cpu_offline_md to execute MD actions at the end of
cpu_offline. Use this on amd64/i386 to force a FPU save. As this was
triggered by npxsave_cpu/fpusave_cpu not working for a different CPU,
remove the cpu_info argument and adjust npxsave_*/fpusave_* to use bool
for the save.

OK ad@

Revision 1.158 / (download) - annotate - [select for diffs], Fri Jan 11 20:00:15 2008 UTC (16 years, 3 months ago) by bouyer
Branch: MAIN
Changes since 1.157: +25 -3 lines
Diff to previous 1.157 (colored) to selected 1.177.2.1 (colored)

Merge the bouyer-xeni386 branch to head, at tag bouyer-xeni386-merge1 (the
branch is still active and will see i386PAE support developement).
Sumary of changes:
- switch xeni386 to the x86/x86/pmap.c, and the xen/x86/x86_xpmap.c
  pmap bootstrap.
- merge back most of xen/i386/ to i386/i386
- change the build to reduce diffs between i386 and amd64 in file locations
- remove include files that were identical to the i386/amd64 counterparts,
  the build will find them via the xen-ma/machine link.

Revision 1.143.10.2 / (download) - annotate - [select for diffs], Wed Jan 9 01:46:41 2008 UTC (16 years, 3 months ago) by matt
Branch: matt-armv6
Changes since 1.143.10.1: +42 -8 lines
Diff to previous 1.143.10.1 (colored) to branchpoint 1.143 (colored) to selected 1.177.2.1 (colored)

sync with HEAD

Revision 1.151.4.3 / (download) - annotate - [select for diffs], Tue Jan 8 22:10:03 2008 UTC (16 years, 3 months ago) by bouyer
Branch: bouyer-xeni386
CVS Tags: bouyer-xeni386-merge1
Changes since 1.151.4.2: +8 -4 lines
Diff to previous 1.151.4.2 (colored) to branchpoint 1.151 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD

Revision 1.151.4.2 / (download) - annotate - [select for diffs], Sun Jan 6 18:29:44 2008 UTC (16 years, 3 months ago) by bouyer
Branch: bouyer-xeni386
Changes since 1.151.4.1: +25 -2 lines
Diff to previous 1.151.4.1 (colored) to branchpoint 1.151 (colored) to selected 1.177.2.1 (colored)

Merge needed changes to genassym.cf and locore.S for xeni386 back to
arch/i386. Switch xeni386 to use the arch/i386 cpu.h.

Revision 1.157 / (download) - annotate - [select for diffs], Sat Jan 5 21:45:00 2008 UTC (16 years, 3 months ago) by yamt
Branch: MAIN
CVS Tags: matt-armv6-base
Changes since 1.156: +1 -7 lines
Diff to previous 1.156 (colored) to selected 1.177.2.1 (colored)

move IOMAP_INVALOFF from cpu.h to tss.h

Revision 1.156 / (download) - annotate - [select for diffs], Sat Jan 5 21:37:25 2008 UTC (16 years, 3 months ago) by yamt
Branch: MAIN
Changes since 1.155: +1 -2 lines
Diff to previous 1.155 (colored) to selected 1.177.2.1 (colored)

g/c ci_idle_pcb_paddr

Revision 1.155 / (download) - annotate - [select for diffs], Fri Jan 4 15:55:33 2008 UTC (16 years, 3 months ago) by yamt
Branch: MAIN
Changes since 1.154: +14 -2 lines
Diff to previous 1.154 (colored) to selected 1.177.2.1 (colored)

i386:
	- make tss per-cpu.  this considerably speeds up context switch for,
	  at least, pentium4, where ltr instruction seems very slow.
i386, xen:
	- kill cpu_maxproc.
kvm86:
	- adapt to per-cpu tss.
	- cleanup and simplify.
	- move kvm86_mp_lock to more meaningful place.
	- disable preemption during a call.

Revision 1.151.4.1 / (download) - annotate - [select for diffs], Wed Jan 2 21:48:21 2008 UTC (16 years, 3 months ago) by bouyer
Branch: bouyer-xeni386
Changes since 1.151: +34 -6 lines
Diff to previous 1.151 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD

Revision 1.154 / (download) - annotate - [select for diffs], Tue Jan 1 20:32:11 2008 UTC (16 years, 3 months ago) by yamt
Branch: MAIN
Changes since 1.153: +5 -1 lines
Diff to previous 1.153 (colored) to selected 1.177.2.1 (colored)

try to detect processor resource sharing topologies.  ie. package/core/smt IDs.

Revision 1.150.2.2 / (download) - annotate - [select for diffs], Thu Dec 27 00:43:10 2007 UTC (16 years, 3 months ago) by mjf
Branch: mjf-devfs
Changes since 1.150.2.1: +28 -4 lines
Diff to previous 1.150.2.1 (colored) to branchpoint 1.150 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.150.4.4 / (download) - annotate - [select for diffs], Wed Dec 26 21:38:46 2007 UTC (16 years, 3 months ago) by ad
Branch: vmlocking2
Changes since 1.150.4.3: +30 -6 lines
Diff to previous 1.150.4.3 (colored) to branchpoint 1.150 (colored) next main 1.151 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.150.4.3 / (download) - annotate - [select for diffs], Wed Dec 26 17:55:05 2007 UTC (16 years, 3 months ago) by ad
Branch: vmlocking2
Changes since 1.150.4.2: +1 -4 lines
Diff to previous 1.150.4.2 (colored) to branchpoint 1.150 (colored) to selected 1.177.2.1 (colored)

Back out the dumppcb changes for the time being.

Revision 1.153 / (download) - annotate - [select for diffs], Tue Dec 25 18:33:33 2007 UTC (16 years, 3 months ago) by perry
Branch: MAIN
CVS Tags: vmlocking2-base3
Changes since 1.152: +3 -3 lines
Diff to previous 1.152 (colored) to selected 1.177.2.1 (colored)

Convert many of the uses of __attribute__ to equivalent
__packed, __unused and __dead macros from cdefs.h

Revision 1.152 / (download) - annotate - [select for diffs], Tue Dec 18 07:17:15 2007 UTC (16 years, 4 months ago) by joerg
Branch: MAIN
Changes since 1.151: +28 -4 lines
Diff to previous 1.151 (colored) to selected 1.177.2.1 (colored)

Add new IPI for saving CPU state explicitly, share high-level part of
ACPI wakeup code and teach it how to start the APs again. As a side
effect the CPU_START interface allows choosing between different
bootstrap codes more easily now.

Revision 1.150.4.2 / (download) - annotate - [select for diffs], Wed Dec 12 22:05:41 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking2
Changes since 1.150.4.1: +4 -1 lines
Diff to previous 1.150.4.1 (colored) to branchpoint 1.150 (colored) to selected 1.177.2.1 (colored)

- Dump basic trap and register info before entering the debugger, in
  case ddb screws the machine up further.
- Fill dumppcb asap so that gdb has less chance to get confused.

Revision 1.143.8.6 / (download) - annotate - [select for diffs], Sun Dec 9 19:35:24 2007 UTC (16 years, 4 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.143.8.5: +2 -1 lines
Diff to previous 1.143.8.5 (colored) to branchpoint 1.143 (colored) next main 1.144 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.150.2.1 / (download) - annotate - [select for diffs], Sat Dec 8 18:17:11 2007 UTC (16 years, 4 months ago) by mjf
Branch: mjf-devfs
Changes since 1.150: +2 -1 lines
Diff to previous 1.150 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.150.4.1 / (download) - annotate - [select for diffs], Sat Dec 8 17:56:23 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking2
Changes since 1.150: +2 -1 lines
Diff to previous 1.150 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.117.4.7 / (download) - annotate - [select for diffs], Fri Dec 7 17:25:02 2007 UTC (16 years, 4 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.6: +2 -1 lines
Diff to previous 1.117.4.6 (colored) to branchpoint 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head

Revision 1.151 / (download) - annotate - [select for diffs], Mon Dec 3 22:17:28 2007 UTC (16 years, 4 months ago) by joerg
Branch: MAIN
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base2, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, jmcneill-pm-base, cube-autoconf-base, cube-autoconf
Branch point for: bouyer-xeni386
Changes since 1.150: +2 -1 lines
Diff to previous 1.150 (colored) to selected 1.177.2.1 (colored)

Add a CPU local timer based on the LAPIC. This is consistently faster
than TSC, but doesn't suffer from SpeedStep as TSC does.

The default quality is higher than HPET for UP, but -100 for
MULTIPROCESSOR as it needs CPU local state which doesn't exist yet.

Revision 1.135.2.14 / (download) - annotate - [select for diffs], Mon Dec 3 18:36:50 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.13: +4 -4 lines
Diff to previous 1.135.2.13 (colored) next main 1.136 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.117.4.6 / (download) - annotate - [select for diffs], Thu Nov 15 11:42:58 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.5: +2 -2 lines
Diff to previous 1.117.4.5 (colored) to branchpoint 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.146.2.2 / (download) - annotate - [select for diffs], Tue Nov 13 15:58:35 2007 UTC (16 years, 5 months ago) by bouyer
Branch: bouyer-xenamd64
Changes since 1.146.2.1: +3 -3 lines
Diff to previous 1.146.2.1 (colored) to branchpoint 1.146 (colored) next main 1.147 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD

Revision 1.143.10.1 / (download) - annotate - [select for diffs], Tue Nov 6 23:17:40 2007 UTC (16 years, 5 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.143: +37 -37 lines
Diff to previous 1.143 (colored) to selected 1.177.2.1 (colored)

sync with HEAD

Revision 1.143.8.5 / (download) - annotate - [select for diffs], Mon Oct 29 02:57:22 2007 UTC (16 years, 5 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.143.8.4: +2 -2 lines
Diff to previous 1.143.8.4 (colored) to branchpoint 1.143 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.150 / (download) - annotate - [select for diffs], Mon Oct 29 01:35:36 2007 UTC (16 years, 5 months ago) by ad
Branch: MAIN
CVS Tags: vmlocking2-base1, vmlocking-nbase, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base
Branch point for: vmlocking2, mjf-devfs
Changes since 1.149: +2 -2 lines
Diff to previous 1.149 (colored) to selected 1.177.2.1 (colored)

Mark cpu_info::ci_tlbstate volatile to ensure that the compiler doesn't
reorder accesses to it. It's updated from the TLB IPI handlers and we don't
block those, so the order in which things are read/updated is important.

Revision 1.143.8.4 / (download) - annotate - [select for diffs], Sun Oct 28 20:10:39 2007 UTC (16 years, 5 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.143.8.3: +3 -3 lines
Diff to previous 1.143.8.3 (colored) to branchpoint 1.143 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.117.4.5 / (download) - annotate - [select for diffs], Sat Oct 27 11:26:43 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.4: +27 -27 lines
Diff to previous 1.117.4.4 (colored) to branchpoint 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.143.8.3 / (download) - annotate - [select for diffs], Fri Oct 26 15:42:37 2007 UTC (16 years, 5 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.143.8.2: +2 -3 lines
Diff to previous 1.143.8.2 (colored) to branchpoint 1.143 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.

Revision 1.149 / (download) - annotate - [select for diffs], Fri Oct 26 13:24:40 2007 UTC (16 years, 5 months ago) by joerg
Branch: MAIN
Changes since 1.148: +3 -3 lines
Diff to previous 1.148 (colored) to selected 1.177.2.1 (colored)

Match delay/DELAY on x86 with delay(9). It takes an unsigned int as
argument. Use this and replace the inline assembly (mul + div using the
64bit intermediate result) with normal 32bit multiplication and
division. The compiler can turn the division into a multiplication and
shift, making it even cheaper then the original assembly. For extreme
long delays, just use 64bit arithmetic.

Revision 1.146.2.1 / (download) - annotate - [select for diffs], Thu Oct 25 22:35:52 2007 UTC (16 years, 5 months ago) by bouyer
Branch: bouyer-xenamd64
Changes since 1.146: +2 -3 lines
Diff to previous 1.146 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.135.2.13 / (download) - annotate - [select for diffs], Tue Oct 23 20:13:06 2007 UTC (16 years, 5 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.12: +2 -3 lines
Diff to previous 1.135.2.12 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.148 / (download) - annotate - [select for diffs], Thu Oct 18 15:28:37 2007 UTC (16 years, 6 months ago) by yamt
Branch: MAIN
Changes since 1.147: +2 -3 lines
Diff to previous 1.147 (colored) to selected 1.177.2.1 (colored)

merge yamt-x86pmap branch.

- reduce differences between amd64 and i386.  notably, share pmap.c
  between them.  it makes several i386 pmap improvements available to
  amd64, including tlb shootdown reduction and bug fixes from Stephan Uphoff.
- implement deferred pmap switching for amd64.
- remove LARGEPAGES option.  always use large pages if available.
  also, make it work on amd64.

Revision 1.147 / (download) - annotate - [select for diffs], Wed Oct 17 19:54:56 2007 UTC (16 years, 6 months ago) by garbled
Branch: MAIN
CVS Tags: yamt-x86pmap-base4
Changes since 1.146: +1 -1 lines
Diff to previous 1.146 (colored) to selected 1.177.2.1 (colored)

Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree.  Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches.  The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.

Revision 1.135.2.12 / (download) - annotate - [select for diffs], Wed Oct 10 21:25:56 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.11: +1 -3 lines
Diff to previous 1.135.2.11 (colored) to selected 1.177.2.1 (colored)

Share cpu_intr_p() between amd64/i386.

Revision 1.135.2.11 / (download) - annotate - [select for diffs], Tue Oct 9 15:22:06 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.10: +24 -23 lines
Diff to previous 1.135.2.10 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.144.2.3 / (download) - annotate - [select for diffs], Sun Oct 7 13:24:32 2007 UTC (16 years, 6 months ago) by yamt
Branch: yamt-x86pmap
Changes since 1.144.2.2: +1 -2 lines
Diff to previous 1.144.2.2 (colored) to branchpoint 1.144 (colored) next main 1.145 (colored) to selected 1.177.2.1 (colored)

g/c nkpde.

Revision 1.144.2.2 / (download) - annotate - [select for diffs], Sat Oct 6 15:34:55 2007 UTC (16 years, 6 months ago) by yamt
Branch: yamt-x86pmap
Changes since 1.144.2.1: +24 -23 lines
Diff to previous 1.144.2.1 (colored) to branchpoint 1.144 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.140.2.3 / (download) - annotate - [select for diffs], Wed Oct 3 19:23:51 2007 UTC (16 years, 6 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.140.2.2: +33 -34 lines
Diff to previous 1.140.2.2 (colored) to branchpoint 1.140 (colored) next main 1.141 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD

Revision 1.143.8.2 / (download) - annotate - [select for diffs], Tue Oct 2 18:27:24 2007 UTC (16 years, 6 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.143.8.1: +24 -23 lines
Diff to previous 1.143.8.1 (colored) to branchpoint 1.143 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.146 / (download) - annotate - [select for diffs], Wed Sep 26 19:48:41 2007 UTC (16 years, 6 months ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base3, yamt-x86pmap-base2, vmlocking-base, ppcoea-renovation-base
Branch point for: bouyer-xenamd64
Changes since 1.145: +24 -22 lines
Diff to previous 1.145 (colored) to selected 1.177.2.1 (colored)

x86 changes for pcc and LKMs.

- Replace most inline assembly with proper functions. As a side effect
  this reduces the size of amd64 GENERIC by about 120kB, and i386 by a
  smaller amount. Nearly all of the inlines did something slow, or something
  that does not need to be fast.
- Make curcpu() and curlwp functions proper, unless __GNUC__ && _KERNEL.
  In that case make them inlines. Makes curlwp LKM and preemption safe.
- Make bus_space and bus_dma more LKM friendly.
- Share a few more files between the ports.
- Other minor changes.

Revision 1.145 / (download) - annotate - [select for diffs], Tue Sep 25 17:08:09 2007 UTC (16 years, 6 months ago) by ad
Branch: MAIN
Changes since 1.144: +1 -2 lines
Diff to previous 1.144 (colored) to selected 1.177.2.1 (colored)

ci_astpending is no more.

Revision 1.129.6.1.2.1 / (download) - annotate - [select for diffs], Sun Sep 23 21:36:18 2007 UTC (16 years, 6 months ago) by wrstuden
Branch: wrstuden-fixsa
Changes since 1.129.6.1: +1 -5 lines
Diff to previous 1.129.6.1 (colored) next main 1.129.6.2 (colored) to selected 1.177.2.1 (colored)

Sync with somewhat-recent netbsd-4.

Revision 1.144.2.1 / (download) - annotate - [select for diffs], Sun Sep 23 18:28:17 2007 UTC (16 years, 6 months ago) by yamt
Branch: yamt-x86pmap
Changes since 1.144: +2 -2 lines
Diff to previous 1.144 (colored) to selected 1.177.2.1 (colored)

- sync with amd64.
- pmap_alloc_level: remove fast call special case.
- tweak some printf to work for both of LP64 and LP32.
- remove machdep.nkpde sysctl.
- remove automatic adjustment of nkpde for now.  will revisit later.

Revision 1.129.6.2 / (download) - annotate - [select for diffs], Wed Sep 12 10:05:02 2007 UTC (16 years, 7 months ago) by msaitoh
Branch: netbsd-4
CVS Tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-1-RELEASE, netbsd-4-0, matt-nb4-arm-base, matt-nb4-arm
Changes since 1.129.6.1: +1 -5 lines
Diff to previous 1.129.6.1 (colored) to branchpoint 1.129 (colored) next main 1.130 (colored) to selected 1.177.2.1 (colored)

Pull up following patches (requested by xtraeme in ticket #809)

	share/man/man4/options.4		patch
	sys/arch/i386/conf/files.i386		patch
	sys/arch/i386/i386/est.c		delete
	sys/arch/i386/i386/identcpu.c		patch
	sys/arch/i386/include/cpu.h		patch
	sys/arch/x86/conf/files.x86		patch
	sys/arch/x86/include/cpuvar.h		patch
	sys/arch/x86/x86/est.c			new file
	sys/arch/x86/x86/intel_busclock.c	new file
	sys/arch/amd64/amd64/identcpu.c		patch
	sys/arch/amd64/conf/GENERIC		patch

 Add support for the VIA C7-M and Eden processors in the Enhanced
 Speedstep driver.
 amd64: The Enhanced Speedstep driver is now able to work on EM64T
 CPUs running in 64bit mode.

Revision 1.143.8.1 / (download) - annotate - [select for diffs], Mon Sep 3 16:47:25 2007 UTC (16 years, 7 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.143: +10 -10 lines
Diff to previous 1.143 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.117.4.4 / (download) - annotate - [select for diffs], Mon Sep 3 14:26:47 2007 UTC (16 years, 7 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.3: +17 -38 lines
Diff to previous 1.117.4.3 (colored) to branchpoint 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.143.4.1 / (download) - annotate - [select for diffs], Mon Sep 3 10:19:04 2007 UTC (16 years, 7 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.143: +10 -10 lines
Diff to previous 1.143 (colored) next main 1.144 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.144 / (download) - annotate - [select for diffs], Wed Aug 29 23:38:04 2007 UTC (16 years, 7 months ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base, nick-csl-alignment-base5
Branch point for: yamt-x86pmap
Changes since 1.143: +10 -10 lines
Diff to previous 1.143 (colored) to selected 1.177.2.1 (colored)

Merge most x86 changes from the vmlocking branch, except the threaded soft
interrupt stuff. This is mostly comprised of changes to the pmap modules to
work on multiprocessor systems without kernel_lock, and changes to speed up
tlb shootdowns.

Revision 1.135.2.10 / (download) - annotate - [select for diffs], Tue Aug 21 10:36:53 2007 UTC (16 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.9: +3 -1 lines
Diff to previous 1.135.2.9 (colored) to selected 1.177.2.1 (colored)

- Add ci_cpumask and use in preference to (1 << ci_cpuid). Some processors
  are bad at shifting by non-constant amounts.
- pmap_tlb_shootdown() must be called with preemption disabled.
- Defer waiting for tlb shootdown to complete after kenter_pa()/kremove().
  Spin in pmap_update() and in pmap_detactivate(), in case the LWP has been
  preempted
- When preparing to send a multicast shootdown IPI, avoid scanning the list
  of CPUs if the pmap's bitmask indicates that it's only active locally.

Revision 1.135.2.9 / (download) - annotate - [select for diffs], Sun Jul 29 10:18:50 2007 UTC (16 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.8: +8 -11 lines
Diff to previous 1.135.2.8 (colored) to selected 1.177.2.1 (colored)

- When zeroing/copying pages, use SSE2 movtni to avoid polluting the cache.
- By default, align assembly routines on 32-byte starting boundaries.
- There are now 8 interrupt priority levels, half of which are softints.
  Update intrdefs.h to match.
- Always clear/set spinlock words - removes lots of ifdefs.
- Remove the horrible ci_self150 hack that I introduced.
- Overhaul how TLB shootdown is performed. Inspired by a similar change in
  OpenBSD but implemented quite differently. This should be a lot faster
  but I have not benchmarked it yet.

Revision 1.136.2.1 / (download) - annotate - [select for diffs], Wed Jul 11 20:00:07 2007 UTC (16 years, 9 months ago) by mjf
Branch: mjf-ufs-trans
Changes since 1.136: +6 -27 lines
Diff to previous 1.136 (colored) next main 1.137 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.143 / (download) - annotate - [select for diffs], Mon Jul 9 20:52:17 2007 UTC (16 years, 9 months ago) by ad
Branch: MAIN
CVS Tags: nick-csl-alignment-base, mjf-ufs-trans-base, matt-mips64-base, matt-mips64, hpcarm-cleanup
Branch point for: nick-csl-alignment, matt-armv6, jmcneill-pm
Changes since 1.142: +1 -3 lines
Diff to previous 1.142 (colored) to selected 1.177.2.1 (colored)

Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements

Revision 1.140.2.2 / (download) - annotate - [select for diffs], Tue Jun 26 18:12:44 2007 UTC (16 years, 9 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.140.2.1: +1 -9 lines
Diff to previous 1.140.2.1 (colored) to branchpoint 1.140 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.135.2.8 / (download) - annotate - [select for diffs], Sun Jun 17 21:30:40 2007 UTC (16 years, 10 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.7: +3 -1 lines
Diff to previous 1.135.2.7 (colored) to selected 1.177.2.1 (colored)

- Increase the number of thread priorities from 128 to 256. How the space
  is set up is to be revisited.
- Implement soft interrupts as kernel threads. A generic implementation
  is provided, with hooks for fast-path MD code that can run the interrupt
  threads over the top of other threads executing in the kernel.
- Split vnode::v_flag into three fields, depending on how the flag is
  locked (by the interlock, by the vnode lock, by the file system).
- Miscellaneous locking fixes and improvements.

Revision 1.135.2.7 / (download) - annotate - [select for diffs], Sat Jun 9 23:55:13 2007 UTC (16 years, 10 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.6: +1 -9 lines
Diff to previous 1.135.2.6 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.142 / (download) - annotate - [select for diffs], Sun Jun 3 19:32:28 2007 UTC (16 years, 10 months ago) by xtraeme
Branch: MAIN
Changes since 1.141: +1 -9 lines
Diff to previous 1.141 (colored) to selected 1.177.2.1 (colored)

Make the Enhanced Speedstep driver available for i386 and amd64.
To use it on EM64T CPUs supporting the EST CPUID feature. Note that
some CPUs still don't work with this driver, like Xeon or Pentium 4.

Move the p[34]_get_bus_clock functions into its own file,
intel_busclock.c and remove this code from i386/identcpu.c.

Tested on i386 by myself and amd64 by Tonerre.

Revision 1.135.2.6 / (download) - annotate - [select for diffs], Sun May 27 12:27:33 2007 UTC (16 years, 10 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.5: +6 -17 lines
Diff to previous 1.135.2.5 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.140.2.1 / (download) - annotate - [select for diffs], Tue May 22 17:27:01 2007 UTC (16 years, 11 months ago) by matt
Branch: ppcoea-renovation
Changes since 1.140: +4 -15 lines
Diff to previous 1.140 (colored) to selected 1.177.2.1 (colored)

Update to HEAD.

Revision 1.141 / (download) - annotate - [select for diffs], Thu May 17 14:51:22 2007 UTC (16 years, 11 months ago) by yamt
Branch: MAIN
Changes since 1.140: +4 -15 lines
Diff to previous 1.140 (colored) to selected 1.177.2.1 (colored)

merge yamt-idlelwp branch.  asked by core@.  some ports still needs work.

from doc/BRANCHES:

	idle lwp, and some changes depending on it.

	1. separate context switching and thread scheduling.
	   (cf. gmcgarry_ctxsw)
	2. implement idle lwp.
	3. clean up related MD/MI interfaces.
	4. make scheduler(s) modular.

Revision 1.133.2.8 / (download) - annotate - [select for diffs], Mon May 7 10:54:58 2007 UTC (16 years, 11 months ago) by yamt
Branch: yamt-idlelwp
Changes since 1.133.2.7: +3 -3 lines
Diff to previous 1.133.2.7 (colored) to branchpoint 1.133 (colored) next main 1.134 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.135.2.5 / (download) - annotate - [select for diffs], Sun Apr 29 12:37:41 2007 UTC (16 years, 11 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.4: +1 -3 lines
Diff to previous 1.135.2.4 (colored) to selected 1.177.2.1 (colored)

Replace another simplelock.

Revision 1.135.2.4 / (download) - annotate - [select for diffs], Sat Apr 28 21:05:54 2007 UTC (16 years, 11 months ago) by ad
Branch: vmlocking
Changes since 1.135.2.3: +2 -2 lines
Diff to previous 1.135.2.3 (colored) to selected 1.177.2.1 (colored)

- Make the PV cache per-CPU and eliminate the global pvalloc_lock. Cuts
  contention on the freelist locks by a factor of ~50 on a dual core box.
- Mirror a patch for amd64 posted by oster@, and make the TLB shootdown
  freelist per-CPU. Increase the number of TLB shootdown jobs from 16
  to 32 per CPU.

Revision 1.129.6.1 / (download) - annotate - [select for diffs], Fri Apr 20 20:31:26 2007 UTC (17 years ago) by bouyer
Branch: netbsd-4
CVS Tags: netbsd-4-0-RC1
Branch point for: wrstuden-fixsa
Changes since 1.129: +2 -2 lines
Diff to previous 1.129 (colored) to selected 1.177.2.1 (colored)

Pull up following revision(s) (requested by mlelstv in ticket #575):
	sys/arch/i386/i386/est.c		sync with 1.37
	sys/arch/i386/i386/ipifuncs.c		sync with 1.16
	sys/arch/x86/include/cpu_msr.h		sync with 1.4
	sys/arch/x86/include/intrdefs.h		sync with 1.8
	sys/arch/x86/include/powernow.h		sync with 1.9
	sys/arch/x86/x86/powernow_k8.c		sync with 1.20
	sys/arch/x86/x86/msr_ipifuncs.c		sync with 1.8
	sys/arch/amd64/amd64/ipifuncs.c		sync with 1.9
	sys/arch/i386/i386/identcpu.c		patch
	sys/arch/i386/i386/machdep.c		patch
	sys/arch/i386/include/cpu.h		patch
	sys/arch/x86/conf/files.x86		patch
	sys/arch/x86/x86/x86_machdep.c		patch
	sys/arch/amd64/amd64/machdep.c		patch
Add MSR write IPI handler for x86. Use it and the RUN_ONCE framework
to make est and powernow drivers work properly with SMP.

Revision 1.140 / (download) - annotate - [select for diffs], Mon Apr 16 19:12:18 2007 UTC (17 years ago) by ad
Branch: MAIN
CVS Tags: yamt-idlelwp-base8
Branch point for: ppcoea-renovation
Changes since 1.139: +3 -3 lines
Diff to previous 1.139 (colored) to selected 1.177.2.1 (colored)

Share the sysarch stuff between the x86 ports. PR kern/36046.

Revision 1.135.2.3 / (download) - annotate - [select for diffs], Tue Apr 10 13:23:06 2007 UTC (17 years ago) by ad
Branch: vmlocking
Changes since 1.135.2.2: +2 -2 lines
Diff to previous 1.135.2.2 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.135.2.2 / (download) - annotate - [select for diffs], Thu Apr 5 21:53:36 2007 UTC (17 years ago) by ad
Branch: vmlocking
Changes since 1.135.2.1: +2 -1 lines
Diff to previous 1.135.2.1 (colored) to selected 1.177.2.1 (colored)

Fix the pmap locking.

Revision 1.136.4.1 / (download) - annotate - [select for diffs], Thu Mar 29 19:27:28 2007 UTC (17 years ago) by reinoud
Branch: reinoud-bufcleanup
Changes since 1.136: +2 -2 lines
Diff to previous 1.136 (colored) next main 1.137 (colored) to selected 1.177.2.1 (colored)

Pullup to -current

Revision 1.133.2.7 / (download) - annotate - [select for diffs], Sat Mar 24 14:54:46 2007 UTC (17 years ago) by yamt
Branch: yamt-idlelwp
Changes since 1.133.2.6: +2 -2 lines
Diff to previous 1.133.2.6 (colored) to branchpoint 1.133 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.139 / (download) - annotate - [select for diffs], Wed Mar 21 18:20:59 2007 UTC (17 years, 1 month ago) by xtraeme
Branch: MAIN
CVS Tags: thorpej-atomic-base, thorpej-atomic
Changes since 1.138: +1 -3 lines
Diff to previous 1.138 (colored) to selected 1.177.2.1 (colored)

- Remove ci_msr_rvalue, it's not useful anymore as yamt@ pointed out.
- Remove completely debug from msr_ipifuncs, now it's known to work.

Revision 1.138 / (download) - annotate - [select for diffs], Tue Mar 20 21:07:39 2007 UTC (17 years, 1 month ago) by xtraeme
Branch: MAIN
Changes since 1.137: +3 -1 lines
Diff to previous 1.137 (colored) to selected 1.177.2.1 (colored)

MSR read and write IPI handlers for x86. A MSR will be read or written
in all CPUs available in the system. This adds another member
to struct cpu_info, ci_msr_rvalue; it will contain the value of the MSR
in a previous operation.

Tested with clockmod in UP and SMP by me, tested with est in SMP
by Daniel Carosone and Michael Van Elst.

Ok'ed by Andrew Doran and Matthew R. Green.

Revision 1.137 / (download) - annotate - [select for diffs], Sun Mar 18 07:21:41 2007 UTC (17 years, 1 month ago) by xtraeme
Branch: MAIN
Changes since 1.136: +2 -2 lines
Diff to previous 1.136 (colored) to selected 1.177.2.1 (colored)

There's no need to run est_init or k8_powernow_init on each CPU.
Just run it once (in the first cpu probed) with the RUN_ONCE(9)
framework.

Change the argument of est_init and k8_powernow_init to void, we don't
need cpu_info * anymore.

Suggested by tls@ and mrg@.

Revision 1.133.2.6 / (download) - annotate - [select for diffs], Sat Mar 17 17:42:24 2007 UTC (17 years, 1 month ago) by rmind
Branch: yamt-idlelwp
Changes since 1.133.2.5: +2 -2 lines
Diff to previous 1.133.2.5 (colored) to branchpoint 1.133 (colored) to selected 1.177.2.1 (colored)

Backport lock.h split into the simplelock.h and other #include changes
from HEAD. This fixes the problems with circular includes.

Revision 1.135.2.1 / (download) - annotate - [select for diffs], Tue Mar 13 16:50:00 2007 UTC (17 years, 1 month ago) by ad
Branch: vmlocking
Changes since 1.135: +2 -2 lines
Diff to previous 1.135 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.136 / (download) - annotate - [select for diffs], Mon Mar 12 16:43:30 2007 UTC (17 years, 1 month ago) by ad
Branch: MAIN
Branch point for: reinoud-bufcleanup, mjf-ufs-trans
Changes since 1.135: +2 -2 lines
Diff to previous 1.135 (colored) to selected 1.177.2.1 (colored)

Include sys/simplelock.h, not sys/lock.h.

Revision 1.133.2.5 / (download) - annotate - [select for diffs], Mon Mar 12 05:48:36 2007 UTC (17 years, 1 month ago) by rmind
Branch: yamt-idlelwp
Changes since 1.133.2.4: +3 -3 lines
Diff to previous 1.133.2.4 (colored) to branchpoint 1.133 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.135 / (download) - annotate - [select for diffs], Mon Mar 5 16:51:02 2007 UTC (17 years, 1 month ago) by drochner
Branch: MAIN
Branch point for: vmlocking
Changes since 1.134: +2 -2 lines
Diff to previous 1.134 (colored) to selected 1.177.2.1 (colored)

clean up how cpus and ioapics are attached at the mainbus:
Seperate "cpubus" and "ioapicbus" -- while they share a common "address
space" (the apic id), the kernel doesn't use this fact. There are different
data passed to cpus and apics, which caused some ugly polymorphism. This
also saves the special "submatch" functions needed to distingush cpus
and ioapics for autoconf. (And it makes that "apid" locators wired
in the kernel configuration are honored now; this allows one to dumb down
an mp box to singleprocessor by userconfig.)
Print "apid" locators in the buses "print" function "as everyone does",
so the per-port cpu drivers don't need to do it.
Being here, constify "struct cpu_functions" and g/c the unused MP_PICMODE
flag.

Revision 1.134 / (download) - annotate - [select for diffs], Sun Mar 4 05:59:58 2007 UTC (17 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.133: +2 -2 lines
Diff to previous 1.133 (colored) to selected 1.177.2.1 (colored)

Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.133.2.4 / (download) - annotate - [select for diffs], Sat Mar 3 09:23:29 2007 UTC (17 years, 1 month ago) by yamt
Branch: yamt-idlelwp
Changes since 1.133.2.3: +2 -2 lines
Diff to previous 1.133.2.3 (colored) to branchpoint 1.133 (colored) to selected 1.177.2.1 (colored)

curpcb: wrap the definition with parenthesises.

Revision 1.117.4.3 / (download) - annotate - [select for diffs], Mon Feb 26 09:07:01 2007 UTC (17 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.2: +28 -30 lines
Diff to previous 1.117.4.2 (colored) to branchpoint 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.133.2.3 / (download) - annotate - [select for diffs], Fri Feb 23 15:57:46 2007 UTC (17 years, 1 month ago) by yamt
Branch: yamt-idlelwp
Changes since 1.133.2.2: +1 -7 lines
Diff to previous 1.133.2.2 (colored) to branchpoint 1.133 (colored) to selected 1.177.2.1 (colored)

- introduce sys/cpu.h which has cpu_idle and cpu_need_resched.
- use it where appropriate.
- while i'm here, remove several unnecessary #include.

Revision 1.133.2.2 / (download) - annotate - [select for diffs], Sat Feb 17 10:30:49 2007 UTC (17 years, 2 months ago) by yamt
Branch: yamt-idlelwp
Changes since 1.133.2.1: +495 -0 lines
Diff to previous 1.133.2.1 (colored) to branchpoint 1.133 (colored) to selected 1.177.2.1 (colored)

- separate context switching and thread scheduling.
- introduce idle lwp.
- change some related MD/MI interfaces and implement i386 version.

Revision 1.133.2.1, Sat Feb 17 00:28:25 2007 UTC (17 years, 2 months ago) by yamt
Branch: yamt-idlelwp
Changes since 1.133: +0 -500 lines
FILE REMOVED

file cpu.h was added on branch yamt-idlelwp on 2007-02-17 10:30:49 +0000

Revision 1.133 / (download) - annotate - [select for diffs], Sat Feb 17 00:28:25 2007 UTC (17 years, 2 months ago) by daniel
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Branch point for: yamt-idlelwp
Changes since 1.132: +6 -1 lines
Diff to previous 1.132 (colored) to selected 1.177.2.1 (colored)

Add an opencrypto provider for the AES xcrypt instructions found on VIA
C5P and later cores (also known as 'ACE', which is part of the VIA PadLock
security engine). Ported from OpenBSD.

Reviewed on tech-crypto and port-i386, no objections to commiting this.

Revision 1.132 / (download) - annotate - [select for diffs], Fri Feb 16 02:53:46 2007 UTC (17 years, 2 months ago) by ad
Branch: MAIN
Changes since 1.131: +1 -6 lines
Diff to previous 1.131 (colored) to selected 1.177.2.1 (colored)

Remove spllowersoftclock() and CLKF_BASEPRI(), and always dispatch callouts
via a soft interrupt. In the near future, softclock will be run from process
context.

Revision 1.131 / (download) - annotate - [select for diffs], Fri Feb 9 21:55:05 2007 UTC (17 years, 2 months ago) by ad
Branch: MAIN
CVS Tags: post-newlock2-merge
Changes since 1.130: +23 -25 lines
Diff to previous 1.130 (colored) to selected 1.177.2.1 (colored)

Merge newlock2 to head.

Revision 1.129.2.5 / (download) - annotate - [select for diffs], Sat Jan 27 07:09:02 2007 UTC (17 years, 2 months ago) by ad
Branch: newlock2
Changes since 1.129.2.4: +10 -3 lines
Diff to previous 1.129.2.4 (colored) to branchpoint 1.129 (colored) next main 1.130 (colored) to selected 1.177.2.1 (colored)

If running on a PPro or later, at boot patch in versions of spllower() and
similar that use cmpxchg8b instead of cli/sti. Cuts the clock cycles for
splx() by a factor of ~6 on the P4, and ~3 on the PIII when bracketed by
serializing instructions (and hopefully more when not).

Revision 1.129.2.4 / (download) - annotate - [select for diffs], Fri Jan 12 01:00:50 2007 UTC (17 years, 3 months ago) by ad
Branch: newlock2
Changes since 1.129.2.3: +3 -2 lines
Diff to previous 1.129.2.3 (colored) to branchpoint 1.129 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.129.2.3 / (download) - annotate - [select for diffs], Thu Jan 11 22:22:57 2007 UTC (17 years, 3 months ago) by ad
Branch: newlock2
Changes since 1.129.2.2: +2 -1 lines
Diff to previous 1.129.2.2 (colored) to branchpoint 1.129 (colored) to selected 1.177.2.1 (colored)

Checkpoint work in progress.

Revision 1.117.4.2 / (download) - annotate - [select for diffs], Sat Dec 30 20:46:11 2006 UTC (17 years, 3 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117.4.1: +8 -7 lines
Diff to previous 1.117.4.1 (colored) to branchpoint 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.129.4.1 / (download) - annotate - [select for diffs], Sun Dec 10 07:16:11 2006 UTC (17 years, 4 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.129: +3 -2 lines
Diff to previous 1.129 (colored) next main 1.130 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.130 / (download) - annotate - [select for diffs], Fri Dec 8 15:05:18 2006 UTC (17 years, 4 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, newlock2-nbase, newlock2-base
Changes since 1.129: +3 -2 lines
Diff to previous 1.129 (colored) to selected 1.177.2.1 (colored)

- pass intrframe by-pointer, not by-value.
- make i386 and xen use per-cpu interrupt stack.

xen part is reviewed by Manuel Bouyer.

Revision 1.129.2.2 / (download) - annotate - [select for diffs], Fri Nov 17 16:34:33 2006 UTC (17 years, 5 months ago) by ad
Branch: newlock2
Changes since 1.129.2.1: +3 -1 lines
Diff to previous 1.129.2.1 (colored) to branchpoint 1.129 (colored) to selected 1.177.2.1 (colored)

Checkpoint work in progress.

Revision 1.129.2.1 / (download) - annotate - [select for diffs], Fri Oct 20 21:26:44 2006 UTC (17 years, 6 months ago) by ad
Branch: newlock2
Changes since 1.129: +11 -23 lines
Diff to previous 1.129 (colored) to selected 1.177.2.1 (colored)

- Make ASTs per-LWP.
- The signal stack and signal mask will be per-LWP shortly.

need_resched(), need_proftick(), signotify():

- Prefix with cpu_
- Make per-LWP.
- Send an IPI if the LWP is on another CPU.

Revision 1.121.2.1 / (download) - annotate - [select for diffs], Sat Sep 9 02:40:14 2006 UTC (17 years, 7 months ago) by rpaulo
Branch: rpaulo-netinet-merge-pcb
Changes since 1.121: +8 -9 lines
Diff to previous 1.121 (colored) next main 1.122 (colored) to selected 1.177.2.1 (colored)

sync with head

Revision 1.125.2.4 / (download) - annotate - [select for diffs], Thu Sep 7 14:00:04 2006 UTC (17 years, 7 months ago) by tron
Branch: abandoned-netbsd-4
Changes since 1.125.2.3: +3 -0 lines
Diff to previous 1.125.2.3 (colored) to branchpoint 1.125 (colored) next main 1.126 (colored) to selected 1.177.2.1 (colored)

Pull up following revision(s) (requested by xtraeme in ticket #114):
	sys/arch/i386/include/cpu.h: revision 1.129
	sys/arch/i386/i386/identcpu.c: revision 1.40
Conditionalize *_get_bus_clock() functions inside of
#ifdef ENHANCED_SPEEDSTEP to fix build when ENHANCED_SPEEDSTEP is not
defined.
Reported by Geoff Wing.

Revision 1.125.2.3 / (download) - annotate - [select for diffs], Wed Sep 6 21:39:04 2006 UTC (17 years, 7 months ago) by riz
Branch: abandoned-netbsd-4
Changes since 1.125.2.2: +2 -1 lines
Diff to previous 1.125.2.2 (colored) to branchpoint 1.125 (colored) to selected 1.177.2.1 (colored)

Pull up following revision(s) (requested by xtraeme in ticket #111):
	sys/arch/x86/include/specialreg.h: revision 1.11
	sys/arch/i386/i386/identcpu.c: revision 1.39
	sys/arch/i386/include/cpu.h: revision 1.128
	sys/arch/i386/i386/est.c: revision 1.26
Update the enhanced speedstep driver and sync the code with OpenBSD:
est.c:
* Use a quintuplet (vendor, MHz_hi, mV_hi, MHz_lo, mV_lo } to match
  CPUs more correctly than parsing the brand string.
* Add support for a bunch of models.
* Create a fake table on the fly if the CPU is unknown (there's no
  table for it) with the current/highest/lowest frequency.
specialreg.h:
* Add some MSRs needed to get the bus clock value.
identcpu.c:
* Add functions specific to Pentium III, Pentium M and Pentium 4 to
  get the bus clock value.
Note that the new fake table code from Simon Burge is not included on
this commit.
Ok'ed by simonb and dogcow.

Revision 1.123.2.3 / (download) - annotate - [select for diffs], Sun Sep 3 15:23:05 2006 UTC (17 years, 7 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.123.2.2: +6 -6 lines
Diff to previous 1.123.2.2 (colored) to branchpoint 1.123 (colored) next main 1.124 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.129 / (download) - annotate - [select for diffs], Sun Sep 3 09:21:26 2006 UTC (17 years, 7 months ago) by xtraeme
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2, yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, rpaulo-netinet-merge-pcb-base, netbsd-4-base
Branch point for: yamt-splraiseipl, newlock2, netbsd-4
Changes since 1.128: +4 -1 lines
Diff to previous 1.128 (colored) to selected 1.177.2.1 (colored)

Conditionalize *_get_bus_clock() functions inside of
#ifdef ENHANCED_SPEEDSTEP to fix build when ENHANCED_SPEEDSTEP is not
defined.

Reported by Geoff Wing.

Revision 1.128 / (download) - annotate - [select for diffs], Sun Sep 3 06:49:57 2006 UTC (17 years, 7 months ago) by xtraeme
Branch: MAIN
Changes since 1.127: +3 -2 lines
Diff to previous 1.127 (colored) to selected 1.177.2.1 (colored)

Update the enhanced speedstep driver and sync the code with OpenBSD:

est.c:

* Use a quintuplet (vendor, MHz_hi, mV_hi, MHz_lo, mV_lo } to match
  CPUs more correctly than parsing the brand string.
* Add support for a bunch of models.
* Create a fake table on the fly if the CPU is unknown (there's no
  table for it) with the current/highest/lowest frequency.

specialreg.h:

* Add some MSRs needed to get the bus clock value.

identcpu.c:

* Add functions specific to Pentium III, Pentium M and Pentium 4 to
  get the bus clock value.

Note that the new fake table code from Simon Burge is not included on
this commit.

Ok'ed by simonb and dogcow.

Revision 1.125.2.2 / (download) - annotate - [select for diffs], Sun Aug 27 22:27:42 2006 UTC (17 years, 7 months ago) by tron
Branch: abandoned-netbsd-4
Changes since 1.125.2.1: +0 -4 lines
Diff to previous 1.125.2.1 (colored) to branchpoint 1.125 (colored) to selected 1.177.2.1 (colored)

Pull up following revision(s) (requested by xtraeme in ticket #57):
	sys/arch/i386/i386/identcpu.c: revision 1.37
	sys/arch/x86/include/powernow.h: revision 1.4
	sys/arch/i386/include/cpu.h: revision 1.127
- Move k7_powernow_* prototypes from i386/include/cpu.h to
  x86/include/powernow.h
- Protect k[78]_powernow_init() functions with #ifdef POWERNOW_K[78] to
  make it build without these options.
This fixes the problem reported by hubertf.

Revision 1.127 / (download) - annotate - [select for diffs], Wed Aug 23 22:59:45 2006 UTC (17 years, 7 months ago) by xtraeme
Branch: MAIN
Changes since 1.126: +1 -5 lines
Diff to previous 1.126 (colored) to selected 1.177.2.1 (colored)

- Move k7_powernow_* prototypes from i386/include/cpu.h to
  x86/include/powernow.h
- Protect k[78]_powernow_init() functions with #ifdef POWERNOW_K[78] to
  make it build without these options.

This fixes the problem reported by hubertf.

Revision 1.123.2.2 / (download) - annotate - [select for diffs], Fri Aug 11 15:41:54 2006 UTC (17 years, 8 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.123.2.1: +3 -3 lines
Diff to previous 1.123.2.1 (colored) to branchpoint 1.123 (colored) to selected 1.177.2.1 (colored)

sync with head

Revision 1.125.2.1 / (download) - annotate - [select for diffs], Fri Aug 11 05:09:17 2006 UTC (17 years, 8 months ago) by riz
Branch: abandoned-netbsd-4
Changes since 1.125: +2 -1 lines
Diff to previous 1.125 (colored) to selected 1.177.2.1 (colored)

Pull up following revision(s) (requested by xtraeme in ticket #10):
	sys/arch/i386/include/cpu.h: revision 1.126
	sys/lkm/arch/i386/powernow/lkminit_powernow.c: revision 1.5
- Add k7_powernow_destroy() prototype into cpu.h.
- Call k7_powernow_destroy() unloading the module.

Revision 1.126 / (download) - annotate - [select for diffs], Tue Aug 8 21:04:30 2006 UTC (17 years, 8 months ago) by xtraeme
Branch: MAIN
CVS Tags: yamt-pdpolicy-base7
Changes since 1.125: +2 -1 lines
Diff to previous 1.125 (colored) to selected 1.177.2.1 (colored)

- Add k7_powernow_destroy() prototype into cpu.h.
- Call k7_powernow_destroy() unloading the module.

Revision 1.125 / (download) - annotate - [select for diffs], Sun Aug 6 16:05:07 2006 UTC (17 years, 8 months ago) by xtraeme
Branch: MAIN
CVS Tags: abandoned-netbsd-4-base
Branch point for: abandoned-netbsd-4
Changes since 1.124: +2 -3 lines
Diff to previous 1.124 (colored) to selected 1.177.2.1 (colored)

* Sync powernow_k7.c driver with OpenBSD, it seems to work much
  better finding PST tables.
* Use functions defined in powernow_common.c to detect if the
  CPU can run powernow.
* Update the LKM with current code.

Revision 1.123.2.1 / (download) - annotate - [select for diffs], Mon Jun 26 12:44:53 2006 UTC (17 years, 9 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.123: +2 -4 lines
Diff to previous 1.123 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.117.4.1 / (download) - annotate - [select for diffs], Wed Jun 21 14:52:30 2006 UTC (17 years, 10 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.117: +29 -25 lines
Diff to previous 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.123.8.1 / (download) - annotate - [select for diffs], Mon Jun 19 03:44:26 2006 UTC (17 years, 10 months ago) by chap
Branch: chap-midi
Changes since 1.123: +2 -4 lines
Diff to previous 1.123 (colored) next main 1.124 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.124 / (download) - annotate - [select for diffs], Wed Jun 7 22:37:58 2006 UTC (17 years, 10 months ago) by kardel
Branch: MAIN
CVS Tags: yamt-pdpolicy-base6, gdamore-uart-base, gdamore-uart, chap-midi-nbase, chap-midi-base
Changes since 1.123: +2 -4 lines
Diff to previous 1.123 (colored) to selected 1.177.2.1 (colored)

convert to timecounters (from branch simonb-timecounters)

Revision 1.122.2.3 / (download) - annotate - [select for diffs], Sat Apr 22 11:37:33 2006 UTC (18 years ago) by simonb
Branch: simonb-timecounters
CVS Tags: simonb-timcounters-final
Changes since 1.122.2.2: +2 -2 lines
Diff to previous 1.122.2.2 (colored) next main 1.123 (colored) to selected 1.177.2.1 (colored)

Sync with head.

Revision 1.122.2.2 / (download) - annotate - [select for diffs], Tue Feb 28 20:47:32 2006 UTC (18 years, 1 month ago) by kardel
Branch: simonb-timecounters
Changes since 1.122.2.1: +2 -2 lines
Diff to previous 1.122.2.1 (colored) to selected 1.177.2.1 (colored)

initrtclock() now gets the frequency as parameter

Revision 1.120.2.2 / (download) - annotate - [select for diffs], Sat Feb 18 15:38:37 2006 UTC (18 years, 2 months ago) by yamt
Branch: yamt-uio_vmspace
Changes since 1.120.2.1: +4 -3 lines
Diff to previous 1.120.2.1 (colored) next main 1.121 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.123 / (download) - annotate - [select for diffs], Thu Feb 16 20:17:13 2006 UTC (18 years, 2 months ago) by perry
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, simonb-timecounters-base, peter-altq-base, peter-altq, elad-kernelauth-base, elad-kernelauth
Branch point for: yamt-pdpolicy, chap-midi
Changes since 1.122: +2 -2 lines
Diff to previous 1.122 (colored) to selected 1.177.2.1 (colored)

Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.

Revision 1.122.2.1 / (download) - annotate - [select for diffs], Sat Feb 4 15:11:54 2006 UTC (18 years, 2 months ago) by simonb
Branch: simonb-timecounters
Changes since 1.122: +1 -3 lines
Diff to previous 1.122 (colored) to selected 1.177.2.1 (colored)

Remove port-specific microtime() function support.

Revision 1.122 / (download) - annotate - [select for diffs], Fri Feb 3 02:37:57 2006 UTC (18 years, 2 months ago) by xtraeme
Branch: MAIN
Branch point for: simonb-timecounters
Changes since 1.121: +3 -2 lines
Diff to previous 1.121 (colored) to selected 1.177.2.1 (colored)

Fix "hard reboot" problem reported by Rhialto weeks ago on current-users@.
The problem was that pnowk7_init() was called too early in the boot
process, at this point the required calls were not available.

Thanks to Rhialto for testing and cube/christos for comments.

Revision 1.120.2.1 / (download) - annotate - [select for diffs], Sun Jan 15 10:02:38 2006 UTC (18 years, 3 months ago) by yamt
Branch: yamt-uio_vmspace
Changes since 1.120: +4 -1 lines
Diff to previous 1.120 (colored) to selected 1.177.2.1 (colored)

sync with head.

Revision 1.121 / (download) - annotate - [select for diffs], Sat Dec 31 17:55:55 2005 UTC (18 years, 3 months ago) by xtraeme
Branch: MAIN
Branch point for: rpaulo-netinet-merge-pcb
Changes since 1.120: +4 -1 lines
Diff to previous 1.120 (colored) to selected 1.177.2.1 (colored)

AMD PowerNow K7 driver written by Martin Vegiard via PR port-i386/26239.

Enabled by default on GENERIC and GENERIC_LAPTOP.

Imported 1 year later... but it's here finally.

Revision 1.120 / (download) - annotate - [select for diffs], Mon Dec 26 19:23:59 2005 UTC (18 years, 3 months ago) by perry
Branch: MAIN
Branch point for: yamt-uio_vmspace
Changes since 1.119: +18 -18 lines
Diff to previous 1.119 (colored) to selected 1.177.2.1 (colored)

u_intN_t -> uintN_t

Revision 1.119 / (download) - annotate - [select for diffs], Sat Dec 24 20:07:10 2005 UTC (18 years, 3 months ago) by perry
Branch: MAIN
Changes since 1.118: +3 -3 lines
Diff to previous 1.118 (colored) to selected 1.177.2.1 (colored)

Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.

Revision 1.102.2.6 / (download) - annotate - [select for diffs], Thu Nov 10 13:56:53 2005 UTC (18 years, 5 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.102.2.5: +6 -4 lines
Diff to previous 1.102.2.5 (colored) next main 1.103 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD. Here we go again...

Revision 1.118 / (download) - annotate - [select for diffs], Thu Aug 11 20:32:55 2005 UTC (18 years, 8 months ago) by cube
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Changes since 1.117: +6 -4 lines
Diff to previous 1.117 (colored) to selected 1.177.2.1 (colored)

Change all archs that did:

#define clockframe somethingelse

to:

struct clockframe {
	struct somethingelse cf_se;
};

and change access macros accordingly.

That means that, at least for that very issue, things will not go
ka-boomy if you don't have the actual definition of struct clockframe
before including systm.h.

Revision 1.116.4.1 / (download) - annotate - [select for diffs], Fri Apr 29 11:28:13 2005 UTC (18 years, 11 months ago) by kent
Branch: kent-audio2
Changes since 1.116: +2 -1 lines
Diff to previous 1.116 (colored) next main 1.117 (colored) to selected 1.177.2.1 (colored)

sync with -current

Revision 1.116.6.1 / (download) - annotate - [select for diffs], Sat Mar 19 08:33:04 2005 UTC (19 years, 1 month ago) by yamt
Branch: yamt-km
Changes since 1.116: +2 -1 lines
Diff to previous 1.116 (colored) next main 1.117 (colored) to selected 1.177.2.1 (colored)

sync with head.  xen and whitespace.  xen part is not finished.

Revision 1.102.2.5 / (download) - annotate - [select for diffs], Fri Mar 4 16:38:47 2005 UTC (19 years, 1 month ago) by skrll
Branch: ktrace-lwp
Changes since 1.102.2.4: +2 -1 lines
Diff to previous 1.102.2.4 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Hi Perry!

Revision 1.117 / (download) - annotate - [select for diffs], Mon Feb 21 15:10:51 2005 UTC (19 years, 2 months ago) by he
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3, kent-audio2-base
Branch point for: yamt-lazymbuf
Changes since 1.116: +2 -1 lines
Diff to previous 1.116 (colored) to selected 1.177.2.1 (colored)

Probe and print the Intel Extended Feature Bits, as documented
in the CPUID instruction description in the "Intel Extended Memory 64
Technology Software Developer's Guide, Volume 1 of 2" available at
ftp://download.intel.com/technology/64bitextensions/30083402.pdf

This presently consists of the SYSCALL/SYSRET and the EM64T features.
CPUs with the EM64T feature available should be able to run amd64 code.

Reviewed by fvdl

Revision 1.102.2.4 / (download) - annotate - [select for diffs], Fri Sep 24 10:53:16 2004 UTC (19 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.102.2.3: +5 -19 lines
Diff to previous 1.102.2.3 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.116 / (download) - annotate - [select for diffs], Wed Sep 22 11:32:02 2004 UTC (19 years, 7 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-km-base2, yamt-km-base, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: yamt-km, kent-audio2
Changes since 1.115: +5 -19 lines
Diff to previous 1.115 (colored) to selected 1.177.2.1 (colored)

move some per-cpu data definitions to MI place so that they can be modified
without touching all ports.  discussed on tech-kern@.

Revision 1.102.2.3 / (download) - annotate - [select for diffs], Tue Sep 21 13:16:56 2004 UTC (19 years, 7 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.102.2.2: +1 -1 lines
Diff to previous 1.102.2.2 (colored) to selected 1.177.2.1 (colored)

Fix the sync with head I botched.

Revision 1.102.2.2 / (download) - annotate - [select for diffs], Sat Sep 18 14:35:40 2004 UTC (19 years, 7 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.102.2.1: +0 -0 lines
Diff to previous 1.102.2.1 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.102.2.1 / (download) - annotate - [select for diffs], Tue Aug 3 10:36:04 2004 UTC (19 years, 8 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.102: +83 -81 lines
Diff to previous 1.102 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD

Revision 1.115 / (download) - annotate - [select for diffs], Sun May 16 12:32:53 2004 UTC (19 years, 11 months ago) by yamt
Branch: MAIN
Changes since 1.114: +2 -2 lines
Diff to previous 1.114 (colored) to selected 1.177.2.1 (colored)

curcpu: fix a typo. (cpuinfo -> cpu_info)
no functional difference.

Revision 1.114 / (download) - annotate - [select for diffs], Fri Apr 30 02:05:43 2004 UTC (19 years, 11 months ago) by lukem
Branch: MAIN
Changes since 1.113: +8 -2 lines
Diff to previous 1.113 (colored) to selected 1.177.2.1 (colored)

Integrate support for Enhanced SpeedStep Technology (est) that
Michael Eriksson posted to port-i386 on 20031102, with various
modifications by me to work in the new sysctl(9) framework.

The code is enabled with 'options ENHANCED_SPEEDSTEP', and if
the CPU supports EST the following sysctl(8) nodes appear
(with the values that a Dell Inspiron 8600 + WUXGA with a
1.4GHz Pentium M CPU supports):
	machdep.est.cpu_brand = Intel(R) Pentium(R) M processor 1400MHz
	machdep.est.frequency.target = 1400
	machdep.est.frequency.current = 1400
	machdep.est.frequency.available = 1400 1200 1000 800 600

If EST support isn't available, the "machdep.est" sysctl sub-MIB
is not created.

Once we have a more general "CPU frequency" control API we can
migrate this code to using that.

Thanks to Michael Erikkson for providing this code!

Revision 1.113 / (download) - annotate - [select for diffs], Fri Feb 20 17:35:01 2004 UTC (20 years, 2 months ago) by yamt
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2
Changes since 1.112: +9 -1 lines
Diff to previous 1.112 (colored) to selected 1.177.2.1 (colored)

defer pmap switching until it's really needed
to avoid frequent loading of cr3 register, which involves tlb flush.

with some fixes/improvements from Stephan Uphoff and Bang Jun-Young.

Revision 1.112 / (download) - annotate - [select for diffs], Sun Jan 4 11:44:52 2004 UTC (20 years, 3 months ago) by jdolecek
Branch: MAIN
Changes since 1.111: +1 -2 lines
Diff to previous 1.111 (colored) to selected 1.177.2.1 (colored)

Process and lwp exit path always executes lwp_exit2() now and cpu_exit()
is empty besides calling switch_exit(). So, rename switch_exit() to
cpu_exit() and modify the routine to call lwp_exit2() direct.
This saves couple cycles on the exit path.

Revision 1.111 / (download) - annotate - [select for diffs], Tue Dec 30 12:33:22 2003 UTC (20 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.110: +1 -2 lines
Diff to previous 1.110 (colored) to selected 1.177.2.1 (colored)

Replace the traditional buffer memory management -- based on fixed per buffer
virtual memory reservation and a private pool of memory pages -- by a scheme
based on memory pools.

This allows better utilization of memory because buffers can now be allocated
with a granularity finer than the system's native page size (useful for
filesystems with e.g. 1k or 2k fragment sizes).  It also avoids fragmentation
of virtual to physical memory mappings (due to the former fixed virtual
address reservation) resulting in better utilization of MMU resources on some
platforms.  Finally, the scheme is more flexible by allowing run-time decisions
on the amount of memory to be used for buffers.

On the other hand, the effectiveness of the LRU queue for buffer recycling
may be somewhat reduced compared to the traditional method since, due to the
nature of the pool based memory allocation, the actual least recently used
buffer may release its memory to a pool different from the one needed by a
newly allocated buffer. However, this effect will kick in only if the
system is under memory pressure.

Revision 1.110 / (download) - annotate - [select for diffs], Tue Dec 30 03:52:01 2003 UTC (20 years, 3 months ago) by yamt
Branch: MAIN
Changes since 1.109: +1 -7 lines
Diff to previous 1.109 (colored) to selected 1.177.2.1 (colored)

g/c unused x86_ipisend.

Revision 1.109 / (download) - annotate - [select for diffs], Mon Oct 27 13:44:20 2003 UTC (20 years, 5 months ago) by junyoung
Branch: MAIN
Changes since 1.108: +47 -47 lines
Diff to previous 1.108 (colored) to selected 1.177.2.1 (colored)

Nuke __P().

Revision 1.108 / (download) - annotate - [select for diffs], Fri Oct 10 13:02:34 2003 UTC (20 years, 6 months ago) by simonb
Branch: MAIN
Changes since 1.107: +7 -17 lines
Diff to previous 1.107 (colored) to selected 1.177.2.1 (colored)

Take previous even further - leave only CTL_MACHDEP and related
definitions and structures outside the #ifdef _KERNEL block.

Revision 1.107 / (download) - annotate - [select for diffs], Fri Oct 10 11:53:44 2003 UTC (20 years, 6 months ago) by yamt
Branch: MAIN
Changes since 1.106: +2 -9 lines
Diff to previous 1.106 (colored) to selected 1.177.2.1 (colored)

revert the previous (thanks, lukem)
and wrap curcpu, cpu_info and friends with #ifdef _KERNEL completely.

Revision 1.106 / (download) - annotate - [select for diffs], Fri Oct 10 06:27:15 2003 UTC (20 years, 6 months ago) by lukem
Branch: MAIN
Changes since 1.105: +5 -1 lines
Diff to previous 1.105 (colored) to selected 1.177.2.1 (colored)

Userland needs <stddef.h> for offsetof(), not <lib/libkern/libkern.h> ...

(Arguably a chunk more of this file could be protected with _KERNEL.
That's a separate project.)

Revision 1.105 / (download) - annotate - [select for diffs], Thu Oct 9 13:46:43 2003 UTC (20 years, 6 months ago) by yamt
Branch: MAIN
Changes since 1.104: +17 -4 lines
Diff to previous 1.104 (colored) to selected 1.177.2.1 (colored)

avoid a magic number in curcpu().

Revision 1.80.4.1 / (download) - annotate - [select for diffs], Sun Sep 7 13:09:54 2003 UTC (20 years, 7 months ago) by tron
Branch: netbsd-1-6
CVS Tags: netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002
Changes since 1.80: +2 -2 lines
Diff to previous 1.80 (colored) next main 1.81 (colored) to selected 1.177.2.1 (colored)

Apply patch (requested by drochner in ticket 1344):
Make output of CPU features look nicer on new Pentium IV CPUs.

Revision 1.104 / (download) - annotate - [select for diffs], Sat Sep 6 22:05:49 2003 UTC (20 years, 7 months ago) by christos
Branch: MAIN
Changes since 1.103: +2 -2 lines
Diff to previous 1.103 (colored) to selected 1.177.2.1 (colored)

SA_SIGINFO changes.

Revision 1.103 / (download) - annotate - [select for diffs], Thu Aug 7 16:27:58 2003 UTC (20 years, 8 months ago) by agc
Branch: MAIN
Changes since 1.102: +2 -6 lines
Diff to previous 1.102 (colored) to selected 1.177.2.1 (colored)

Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.

Revision 1.102 / (download) - annotate - [select for diffs], Thu Jun 26 16:41:32 2003 UTC (20 years, 9 months ago) by drochner
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.101: +3 -4 lines
Diff to previous 1.101 (colored) to selected 1.177.2.1 (colored)

-make cpu_feature unsigned, just like ci_feature_flags
-clean up duplicate declaration of cpu_info_primary

Revision 1.101 / (download) - annotate - [select for diffs], Tue May 20 22:53:35 2003 UTC (20 years, 11 months ago) by kristerw
Branch: MAIN
Changes since 1.100: +2 -2 lines
Diff to previous 1.100 (colored) to selected 1.177.2.1 (colored)

Use __asm instead of asm, to make lint happy.

Revision 1.100 / (download) - annotate - [select for diffs], Fri Apr 25 21:54:29 2003 UTC (20 years, 11 months ago) by fvdl
Branch: MAIN
Changes since 1.99: +3 -21 lines
Diff to previous 1.99 (colored) to selected 1.177.2.1 (colored)

Share some common cache info cpuid code between i386 and x86_64.

Revision 1.99 / (download) - annotate - [select for diffs], Tue Mar 18 22:29:58 2003 UTC (21 years, 1 month ago) by fvdl
Branch: MAIN
Changes since 1.98: +4 -4 lines
Diff to previous 1.98 (colored) to selected 1.177.2.1 (colored)

Add some underscores in curcpu() to avoid a -Wshadow.

Revision 1.98 / (download) - annotate - [select for diffs], Sat Mar 1 16:37:54 2003 UTC (21 years, 1 month ago) by fvdl
Branch: MAIN
Changes since 1.97: +12 -1 lines
Diff to previous 1.97 (colored) to selected 1.177.2.1 (colored)

Move the CPU identification out of machdep.c into a seperate file.

Revision 1.97 / (download) - annotate - [select for diffs], Wed Feb 26 21:29:00 2003 UTC (21 years, 1 month ago) by fvdl
Branch: MAIN
Changes since 1.96: +9 -9 lines
Diff to previous 1.96 (colored) to selected 1.177.2.1 (colored)

Redirect some includes to x86/foo.h

Revision 1.96 / (download) - annotate - [select for diffs], Wed Feb 5 12:18:04 2003 UTC (21 years, 2 months ago) by nakayama
Branch: MAIN
Changes since 1.95: +10 -9 lines
Diff to previous 1.95 (colored) to selected 1.177.2.1 (colored)

Share i386/tsc_microtime.c with alpha and sparc64 as kern_microtime.c.
(approved by martin)

Revision 1.95 / (download) - annotate - [select for diffs], Fri Jan 17 23:10:28 2003 UTC (21 years, 3 months ago) by thorpej
Branch: MAIN
Changes since 1.94: +20 -15 lines
Diff to previous 1.94 (colored) to selected 1.177.2.1 (colored)

Merge the nathanw_sa branch.

Revision 1.68.2.18 / (download) - annotate - [select for diffs], Tue Jan 7 21:11:45 2003 UTC (21 years, 3 months ago) by thorpej
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.68.2.17: +3 -1 lines
Diff to previous 1.68.2.17 (colored) to branchpoint 1.68 (colored) next main 1.69 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.94 / (download) - annotate - [select for diffs], Tue Jan 7 18:48:44 2003 UTC (21 years, 3 months ago) by fvdl
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base
Changes since 1.93: +3 -1 lines
Diff to previous 1.93 (colored) to selected 1.177.2.1 (colored)

Add various external declarations to accomodate ACPI MP probing as an
alternate method to MPBIOS probing. Move some stuff common to the two
methods into mpconfig.h

Revision 1.68.2.17 / (download) - annotate - [select for diffs], Fri Jan 3 23:03:01 2003 UTC (21 years, 3 months ago) by thorpej
Branch: nathanw_sa
Changes since 1.68.2.16: +2 -3 lines
Diff to previous 1.68.2.16 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Merge switch_exit() and switch_lwp_exit().

Revision 1.68.2.16 / (download) - annotate - [select for diffs], Thu Dec 19 00:33:51 2002 UTC (21 years, 4 months ago) by thorpej
Branch: nathanw_sa
Changes since 1.68.2.15: +2 -1 lines
Diff to previous 1.68.2.15 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.93 / (download) - annotate - [select for diffs], Mon Dec 16 18:31:08 2002 UTC (21 years, 4 months ago) by jdolecek
Branch: MAIN
CVS Tags: gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Changes since 1.92: +2 -1 lines
Diff to previous 1.92 (colored) to selected 1.177.2.1 (colored)

use the __HAVE_CPU_MAXPROC hook to limit kern.maxproc to number
  of available GDT slots
add code in init386() to force maxproc to be maximum cpu_maxproc()

this fixes port-i386/1635 by John Kohl

Revision 1.68.2.15 / (download) - annotate - [select for diffs], Wed Dec 11 06:01:00 2002 UTC (21 years, 4 months ago) by thorpej
Branch: nathanw_sa
Changes since 1.68.2.14: +20 -8 lines
Diff to previous 1.68.2.14 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.92 / (download) - annotate - [select for diffs], Fri Dec 6 14:47:09 2002 UTC (21 years, 4 months ago) by junyoung
Branch: MAIN
Changes since 1.91: +1 -4 lines
Diff to previous 1.91 (colored) to selected 1.177.2.1 (colored)

Don't pollute struct cpu_info with throwaway variables.

Revision 1.91 / (download) - annotate - [select for diffs], Fri Dec 6 02:38:27 2002 UTC (21 years, 4 months ago) by junyoung
Branch: MAIN
Changes since 1.90: +4 -1 lines
Diff to previous 1.90 (colored) to selected 1.177.2.1 (colored)

Display the extended feature flags with non-Intel processors rather than
the standard flags. See also PR#19163.

Before:

cpu0: AMD Athlon XP 1800+ (686-class), 1532.11 MHz
cpu0: features 383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR>
cpu0: features 383f9ff<PGE,MCA,CMOV,FGPAT,PSE36,MMX>
cpu0: features 383f9ff<FXSR,SSE>

After:

cpu0: AMD Athlon XP 1800+ (686-class), 1532.11 MHz
cpu0: features c3cbf9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR>
cpu0: features c3cbf9ff<PGE,MCA,CMOV,PAT,PSE36,MPC,MMXX,MMX>
cpu0: features c3cbf9ff<FXSR,SSE,3DNOW2,3DNOW>

While I'm here, amd_cpuid_cpu_cacheinfo() is an info function rather
than a probe function.

Revision 1.90 / (download) - annotate - [select for diffs], Thu Nov 28 21:43:55 2002 UTC (21 years, 4 months ago) by fvdl
Branch: MAIN
Changes since 1.89: +2 -1 lines
Diff to previous 1.89 (colored) to selected 1.177.2.1 (colored)

Add ci_apicid field.

Revision 1.68.2.14 / (download) - annotate - [select for diffs], Mon Nov 25 21:40:04 2002 UTC (21 years, 4 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.13: +7 -6 lines
Diff to previous 1.68.2.13 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Make ASTs per-proc rather than per-cpu; per-proc makes more sense when
a process that needs a trap can be running on multiple CPUs.

Revision 1.89 / (download) - annotate - [select for diffs], Fri Nov 22 15:23:45 2002 UTC (21 years, 5 months ago) by fvdl
Branch: MAIN
Changes since 1.88: +16 -5 lines
Diff to previous 1.88 (colored) to selected 1.177.2.1 (colored)

New interrupt code. The basic idea behind it is to hide the differences
in interrupt controllers in struct pic, and try to keep as much
common code as possible. At the lowest (asm) level, this is done
with CPP macros.

The main structure is now struct intrsource, describing an established
interrupt line, of any kind (soft/hard local apic/legacy apic/IO apic).
For quick masking, there may be a maximum of 32 sources per CPU.
Sources can be assigned to any CPU in the MP case, though currently they
all go to the boot CPU.

Revision 1.68.2.13 / (download) - annotate - [select for diffs], Mon Nov 11 21:59:14 2002 UTC (21 years, 5 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.12: +2 -2 lines
Diff to previous 1.68.2.12 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Catch up to -current

Revision 1.88 / (download) - annotate - [select for diffs], Sat Nov 2 07:15:07 2002 UTC (21 years, 5 months ago) by perry
Branch: MAIN
Changes since 1.87: +2 -2 lines
Diff to previous 1.87 (colored) to selected 1.177.2.1 (colored)

/*CONTCOND*/ a while (0) macro

Revision 1.68.2.12 / (download) - annotate - [select for diffs], Fri Oct 18 04:07:45 2002 UTC (21 years, 6 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.11: +3 -3 lines
Diff to previous 1.68.2.11 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

cpu_info->fp_curlwp is a struct lwp, not a struct proc.

npxsave_proc() -> npxsave_lwp().

Revision 1.68.2.11 / (download) - annotate - [select for diffs], Fri Oct 18 03:27:30 2002 UTC (21 years, 6 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.10: +2 -2 lines
Diff to previous 1.68.2.10 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Define curlwp, not curproc.

Revision 1.68.2.10 / (download) - annotate - [select for diffs], Fri Oct 18 02:37:53 2002 UTC (21 years, 6 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.9: +205 -37 lines
Diff to previous 1.68.2.9 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Catch up to -current.

Revision 1.72.2.6 / (download) - annotate - [select for diffs], Thu Oct 10 18:33:28 2002 UTC (21 years, 6 months ago) by jdolecek
Branch: kqueue
Changes since 1.72.2.5: +196 -36 lines
Diff to previous 1.72.2.5 (colored) next main 1.73 (colored) to selected 1.177.2.1 (colored)

sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work

Revision 1.87 / (download) - annotate - [select for diffs], Sun Oct 6 20:40:27 2002 UTC (21 years, 6 months ago) by fvdl
Branch: MAIN
CVS Tags: kqueue-beforemerge, kqueue-aftermerge
Changes since 1.86: +1 -3 lines
Diff to previous 1.86 (colored) to selected 1.177.2.1 (colored)

Remove ci_lapic_ints from struct cpu_info again, it isn't needed anymore.

Revision 1.86 / (download) - annotate - [select for diffs], Sun Oct 6 18:31:21 2002 UTC (21 years, 6 months ago) by fvdl
Branch: MAIN
Changes since 1.85: +1 -3 lines
Diff to previous 1.85 (colored) to selected 1.177.2.1 (colored)

Keep size of struct cpu_info independent of DIAGNOSTIC/LOCKDEBUG
(was done in rev. 1.81, got lost in the MP merge).

Revision 1.85 / (download) - annotate - [select for diffs], Sun Oct 6 14:28:17 2002 UTC (21 years, 6 months ago) by fvdl
Branch: MAIN
Changes since 1.84: +5 -1 lines
Diff to previous 1.84 (colored) to selected 1.177.2.1 (colored)

Add per-CPU local apic redir table (2 pointers).

Revision 1.84 / (download) - annotate - [select for diffs], Sun Oct 6 12:37:35 2002 UTC (21 years, 6 months ago) by fvdl
Branch: MAIN
Changes since 1.83: +1 -3 lines
Diff to previous 1.83 (colored) to selected 1.177.2.1 (colored)

cpu_swapin now exists, so remove the empty define.

Revision 1.83 / (download) - annotate - [select for diffs], Sat Oct 5 21:22:31 2002 UTC (21 years, 6 months ago) by fvdl
Branch: MAIN
Changes since 1.82: +10 -1 lines
Diff to previous 1.82 (colored) to selected 1.177.2.1 (colored)

Add mask for TLB IPI rendezvous, and stackpointers + TSS structures
for TSS gates per CPU.

XXX struct cpu_info is getting to be a bit large

Revision 1.82 / (download) - annotate - [select for diffs], Tue Oct 1 12:57:04 2002 UTC (21 years, 6 months ago) by fvdl
Branch: MAIN
CVS Tags: kqueue-base
Changes since 1.81: +196 -36 lines
Diff to previous 1.81 (colored) to selected 1.177.2.1 (colored)

Merge Bill Sommerfeld's i386 MP branch. This code has some known
caveats, but works quite well in a lot of MP cases, and all
UP cases that I have tested. Parts of this will hopefully be
reworked in the not-too-distant future.

Revision 1.72.2.5 / (download) - annotate - [select for diffs], Fri Sep 6 08:36:24 2002 UTC (21 years, 7 months ago) by jdolecek
Branch: kqueue
Changes since 1.72.2.4: +1 -3 lines
Diff to previous 1.72.2.4 (colored) to selected 1.177.2.1 (colored)

sync kqueue branch with HEAD

Revision 1.68.2.9 / (download) - annotate - [select for diffs], Thu Aug 1 02:42:09 2002 UTC (21 years, 8 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.8: +1 -3 lines
Diff to previous 1.68.2.8 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Catch up to -current.

Revision 1.80.2.1 / (download) - annotate - [select for diffs], Tue Jul 16 08:29:45 2002 UTC (21 years, 9 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.80: +1 -3 lines
Diff to previous 1.80 (colored) next main 1.81 (colored) to selected 1.177.2.1 (colored)

catch up with -current.

Revision 1.81 / (download) - annotate - [select for diffs], Tue Jul 9 22:28:30 2002 UTC (21 years, 9 months ago) by jdolecek
Branch: MAIN
CVS Tags: sommerfeld_i386mpnext, sommerfeld_i386mpbase_1, gehenna-devsw-base
Changes since 1.80: +1 -3 lines
Diff to previous 1.80 (colored) to selected 1.177.2.1 (colored)

always include ci_s*_locks in struct cpu_info, so that the size doesn't depend
on DIAGNOSTIC/LOCKDEBUG settings

Revision 1.72.2.4 / (download) - annotate - [select for diffs], Sun Jun 23 17:37:28 2002 UTC (21 years, 10 months ago) by jdolecek
Branch: kqueue
Changes since 1.72.2.3: +6 -4 lines
Diff to previous 1.72.2.3 (colored) to selected 1.177.2.1 (colored)

catch up with -current on kqueue branch

Revision 1.68.2.8 / (download) - annotate - [select for diffs], Thu Jun 20 03:39:13 2002 UTC (21 years, 10 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.7: +6 -4 lines
Diff to previous 1.68.2.7 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Catch up to -current.

Revision 1.59.2.32 / (download) - annotate - [select for diffs], Sat May 18 17:27:33 2002 UTC (21 years, 11 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
CVS Tags: i386mp_plus16_stable
Changes since 1.59.2.31: +5 -3 lines
Diff to previous 1.59.2.31 (colored) to branchpoint 1.59 (colored) next main 1.60 (colored) to selected 1.177.2.1 (colored)

Catch up with -current.  (commons elimination, changes to MI pci framework)

Revision 1.80 / (download) - annotate - [select for diffs], Sun May 12 23:16:52 2002 UTC (21 years, 11 months ago) by matt
Branch: MAIN
CVS Tags: netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001
Branch point for: netbsd-1-6, gehenna-devsw
Changes since 1.79: +2 -2 lines
Diff to previous 1.79 (colored) to selected 1.177.2.1 (colored)

Eliminate commons.

Revision 1.79 / (download) - annotate - [select for diffs], Wed May 8 18:45:49 2002 UTC (21 years, 11 months ago) by mycroft
Branch: MAIN
Changes since 1.78: +5 -3 lines
Diff to previous 1.78 (colored) to selected 1.177.2.1 (colored)

Wire CLKF_BASEPRI() to 0 on this platform.  (See tech-kern.)

Revision 1.59.2.31 / (download) - annotate - [select for diffs], Sat Apr 27 14:39:39 2002 UTC (21 years, 11 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.30: +3 -1 lines
Diff to previous 1.59.2.30 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Add options TRAPLOG:

When enabled, each cpu gets a ring buffer; on every trap entry, we add
an entry to the trap log using the new locore "TLOG" macro.  Somewhat
like a flight recorder, this may give some post-mortem clues as to
what was going on as we were spiralling in...

XXX currently depends on various intel MSR's to record the low order
32 bits of the cycle counter as well as last-branch from and to
addresses.

Revision 1.68.2.7 / (download) - annotate - [select for diffs], Thu Feb 28 04:10:19 2002 UTC (22 years, 1 month ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.6: +16 -10 lines
Diff to previous 1.68.2.6 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Catch up to -current.

Revision 1.59.2.30 / (download) - annotate - [select for diffs], Sun Feb 24 00:17:46 2002 UTC (22 years, 1 month ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.29: +16 -10 lines
Diff to previous 1.59.2.29 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Resynch with mainline.

Revision 1.68.2.6 / (download) - annotate - [select for diffs], Sat Feb 23 22:49:08 2002 UTC (22 years, 1 month ago) by gmcgarry
Branch: nathanw_sa
Changes since 1.68.2.5: +4 -3 lines
Diff to previous 1.68.2.5 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Protect cpu_proc_fork() with _KERNEL

Revision 1.72.2.3 / (download) - annotate - [select for diffs], Mon Feb 11 20:08:26 2002 UTC (22 years, 2 months ago) by jdolecek
Branch: kqueue
Changes since 1.72.2.2: +16 -10 lines
Diff to previous 1.72.2.2 (colored) to selected 1.177.2.1 (colored)

Sync w/ -current.

Revision 1.78 / (download) - annotate - [select for diffs], Thu Jan 31 17:41:38 2002 UTC (22 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: newlock-base, newlock, ifpoll-base, eeh-devprop-base, eeh-devprop
Changes since 1.77: +16 -10 lines
Diff to previous 1.77 (colored) to selected 1.177.2.1 (colored)

Fix comments.

Revision 1.72.2.2 / (download) - annotate - [select for diffs], Thu Jan 10 19:44:50 2002 UTC (22 years, 3 months ago) by thorpej
Branch: kqueue
Changes since 1.72.2.1: +13 -2 lines
Diff to previous 1.72.2.1 (colored) to selected 1.177.2.1 (colored)

Sync kqueue branch with -current.

Revision 1.68.2.5 / (download) - annotate - [select for diffs], Tue Jan 8 00:25:31 2002 UTC (22 years, 3 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.4: +13 -2 lines
Diff to previous 1.68.2.4 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Catch up to -current.

Revision 1.59.2.29 / (download) - annotate - [select for diffs], Sat Dec 29 23:31:06 2001 UTC (22 years, 3 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.28: +21 -20 lines
Diff to previous 1.59.2.28 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Set up per-cpu GDT.
Use %fs for per-cpu data access.

Revision 1.59.2.28 / (download) - annotate - [select for diffs], Sat Dec 29 21:09:09 2001 UTC (22 years, 3 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.27: +12 -1 lines
Diff to previous 1.59.2.27 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Yet another mergeup.

New work:
 - Frank van der Linden's tlb shootdown fix.
Mainline functionality merged:
 - IrDA
 - Kernel RCSID's
 - Transmeta CPU support
 - ACPI
 - XMM register access through procfs

Revision 1.77 / (download) - annotate - [select for diffs], Thu Dec 27 15:24:34 2001 UTC (22 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.76: +4 -1 lines
Diff to previous 1.76 (colored) to selected 1.177.2.1 (colored)

add a new function to the cpu struct's that can be called to print extra
cpu information after initialization.

Revision 1.68.2.4 / (download) - annotate - [select for diffs], Sat Dec 8 08:22:41 2001 UTC (22 years, 4 months ago) by thorpej
Branch: nathanw_sa
Changes since 1.68.2.3: +3 -1 lines
Diff to previous 1.68.2.3 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Add a cpu_proc_fork(), called from uvm_proc_fork(), which takes care
of machine-dependent handling a fork() time (this is different from
forking the actual context in an LWP world).  #define it away on
platforms which do not need it.

Problem noted by Gregory McGarry.

Revision 1.76 / (download) - annotate - [select for diffs], Sat Nov 17 08:21:43 2001 UTC (22 years, 5 months ago) by christos
Branch: MAIN
Changes since 1.75: +10 -2 lines
Diff to previous 1.75 (colored) to selected 1.177.2.1 (colored)

Add transmeta crusoe cpu support from toshi.

Revision 1.59.2.27 / (download) - annotate - [select for diffs], Mon Sep 3 19:48:12 2001 UTC (22 years, 7 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.26: +13 -2 lines
Diff to previous 1.59.2.26 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Merge with -current once more.

Revision 1.68.2.3 / (download) - annotate - [select for diffs], Fri Aug 24 00:08:34 2001 UTC (22 years, 8 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.2: +13 -2 lines
Diff to previous 1.68.2.2 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Catch up with -current.

Revision 1.72.2.1 / (download) - annotate - [select for diffs], Fri Aug 3 04:11:45 2001 UTC (22 years, 8 months ago) by lukem
Branch: kqueue
Changes since 1.72: +13 -2 lines
Diff to previous 1.72 (colored) to selected 1.177.2.1 (colored)

update to -current

Revision 1.75 / (download) - annotate - [select for diffs], Thu Aug 2 22:04:29 2001 UTC (22 years, 8 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, thorpej-devvp, pre-chs-ubcperf, post-chs-ubcperf
Changes since 1.74: +11 -3 lines
Diff to previous 1.74 (colored) to selected 1.177.2.1 (colored)

- Rename cpu_use_fxsave to i386_use_fxsave.
- If we detect SSE/SSE2 support in the CPU, enable SSE exceptions
  and set i386_has_{sse,sse2} as appropriate.
- Expose i386_use_fxsave and i386_has_{sse,sse2} through sysctl
  as machdep.{osfsxr,sse,sse2}.

Revision 1.74 / (download) - annotate - [select for diffs], Thu Aug 2 21:04:44 2001 UTC (22 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.73: +3 -1 lines
Diff to previous 1.73 (colored) to selected 1.177.2.1 (colored)

Add support for saving/restoring SSE/SSE2 state using FXSAVE/FXRSTOR.

Reviewed by Frank.

Revision 1.73 / (download) - annotate - [select for diffs], Wed Aug 1 19:50:49 2001 UTC (22 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.72: +2 -1 lines
Diff to previous 1.72 (colored) to selected 1.177.2.1 (colored)

Add several more Intel cache info entries, and fetch the CFLUSH
line size if we have the CFLUSH insn.

Revision 1.59.2.26 / (download) - annotate - [select for diffs], Mon Jul 2 12:52:16 2001 UTC (22 years, 9 months ago) by fvdl
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.25: +2 -2 lines
Diff to previous 1.59.2.25 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Since cpuid_level value -1 is used to indicate "not available",
it should be signed.

Revision 1.68.2.2 / (download) - annotate - [select for diffs], Thu Jun 21 19:25:46 2001 UTC (22 years, 10 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.68.2.1: +25 -5 lines
Diff to previous 1.68.2.1 (colored) to branchpoint 1.68 (colored) to selected 1.177.2.1 (colored)

Catch up to -current.

Revision 1.59.2.25 / (download) - annotate - [select for diffs], Mon Jun 18 03:33:31 2001 UTC (22 years, 10 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.24: +1 -4 lines
Diff to previous 1.59.2.24 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

checkpoint merge-in-progress from mainline.

Revision 1.72 / (download) - annotate - [select for diffs], Thu Jun 14 22:56:56 2001 UTC (22 years, 10 months ago) by thorpej
Branch: MAIN
Branch point for: kqueue
Changes since 1.71: +1 -4 lines
Diff to previous 1.71 (colored) to selected 1.177.2.1 (colored)

Don't need to prototype child_return() here, it's in <sys/proc.h>.

Revision 1.71 / (download) - annotate - [select for diffs], Wed May 30 12:28:44 2001 UTC (22 years, 10 months ago) by mrg
Branch: MAIN
Changes since 1.70: +2 -2 lines
Diff to previous 1.70 (colored) to selected 1.177.2.1 (colored)

use _KERNEL_OPT

Revision 1.59.2.24 / (download) - annotate - [select for diffs], Sat May 26 22:13:10 2001 UTC (22 years, 10 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.23: +13 -0 lines
Diff to previous 1.59.2.23 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Implement MP-synchronzed microtime(), based on Jason Thorpe's port of
Dave Mills's cycle-counter-based microtime.

XXX We need to figure out how to deal with processors where the cycle
counter speed varies.  We don't have a whole lot of alternatives; we
could only use this on multiprocessors, which are less likely to
throttle the clock to save power.

The local apic timer runs at a fixed frequency, but it's
count-down-to-zero, not the count-up-forever type of timer which the
Mills code expects.

This also does not solve the problem of microtime on 486-based
multiprocessors..

Revision 1.59.2.23 / (download) - annotate - [select for diffs], Mon May 7 21:15:05 2001 UTC (22 years, 11 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.22: +4 -13 lines
Diff to previous 1.59.2.22 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Rework cache/tlb parsing, etc., One More Time.
Compact tables, rework associativity.

Revision 1.59.2.22 / (download) - annotate - [select for diffs], Mon May 7 16:51:47 2001 UTC (22 years, 11 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.21: +26 -2 lines
Diff to previous 1.59.2.21 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

"Merge" in revised cache probing code (including amd cache size
probing).  Separate feature probing from output formatting, and call
uvm_recolor() at an appropriate moment.

Revision 1.70 / (download) - annotate - [select for diffs], Thu May 3 00:35:37 2001 UTC (22 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.69: +21 -8 lines
Diff to previous 1.69 (colored) to selected 1.177.2.1 (colored)

Rearrange the cache info fetching code some more, and add support
for fetching cache info for AMD processors.

Revision 1.69 / (download) - annotate - [select for diffs], Wed May 2 21:07:02 2001 UTC (22 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.68: +11 -1 lines
Diff to previous 1.68 (colored) to selected 1.177.2.1 (colored)

- Keep cache/tlb info in the cpu_info structure.
- Add "associativity" to the cache_info structure.
- Add a (*cpu_cacheinfo)() function pointer, like we have a
  (*cpu_setup)() function pointer.  Cache info in the `cpuid'
  is vendor-specific.

Revision 1.59.2.21 / (download) - annotate - [select for diffs], Mon Apr 30 16:23:13 2001 UTC (22 years, 11 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.20: +3 -4 lines
Diff to previous 1.59.2.20 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Merge sommerfeld_i386mp_1 branch with -current as of today.
GENERIC.MP kernel boots and runs multiuser on my ABIT BP6

Revision 1.64.2.1 / (download) - annotate - [select for diffs], Wed Apr 25 09:29:38 2001 UTC (22 years, 11 months ago) by he
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001
Changes since 1.64: +3 -3 lines
Diff to previous 1.64 (colored) next main 1.65 (colored) to selected 1.177.2.1 (colored)

Pull up revision 1.66 (requested by jdolecek):
  Add ``const'' to cpu tables.
  Properly identify and distinguish newer Intel CPUs using Brand
  ID information.

Revision 1.56.2.4 / (download) - annotate - [select for diffs], Mon Mar 12 13:28:57 2001 UTC (23 years, 1 month ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.56.2.3: +3 -4 lines
Diff to previous 1.56.2.3 (colored) next main 1.57 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.68.2.1 / (download) - annotate - [select for diffs], Mon Mar 5 22:49:16 2001 UTC (23 years, 1 month ago) by nathanw
Branch: nathanw_sa
Changes since 1.68: +7 -6 lines
Diff to previous 1.68 (colored) to selected 1.177.2.1 (colored)

Initial commit of scheduler activations and lightweight process support.

Revision 1.68 / (download) - annotate - [select for diffs], Wed Feb 14 01:29:45 2001 UTC (23 years, 2 months ago) by nathanw
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Branch point for: nathanw_sa
Changes since 1.67: +3 -4 lines
Diff to previous 1.67 (colored) to selected 1.177.2.1 (colored)

Remove prototype for long-defunct i386_user_cleanup().

Remove duplicate prototype for i386_{set,get}_ldt() from sys_machdep.c.

Change i386_iopl() and i386_{set,get}_{ldt,ioperm}() to take a second
argument of "void *" instead of "char *", for consistency with other syscalls.

Revision 1.59.2.20 / (download) - annotate - [select for diffs], Wed Jan 10 04:38:33 2001 UTC (23 years, 3 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.19: +13 -11 lines
Diff to previous 1.59.2.19 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Significant rewrite of slave CPU attach and initialization, centering
on identifycpu() and spreading outward.

Separate feature probes (cpuid invocation), which runs on the cpu
being attached, from the display of this information, which runs on
the boot cpu; remove some of the probe code from locore as it doesn't
need to run that early.

We now spin up secondary cpu's during cpu_attach, have them do a cpu
feature probe, and then have them spin waiting for a "go" signal.

We no longer pay attention to the cpu signature and cpuid features
reported by the MP BIOS since those are known to be truncated for at
least some bioses.

We now do npx initialization (including FDIV bug detection) on all
cpus.

XXX Change some of the cyrix bug workarounds to fit the new
identifycpu() system; this is untested.

Revision 1.59.2.19 / (download) - annotate - [select for diffs], Mon Jan 8 15:30:41 2001 UTC (23 years, 3 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.18: +13 -3 lines
Diff to previous 1.59.2.18 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Mostly fix cpu identification:
 - move globals which contain per-cpu state into cpu_info.
 - fix cache size probing to work off of cpu_info rather than globals
 - print out itlb/dtlb sizes
 - add a few more cache identifiers from the latest version of AP-485

cpu timing, cache probing, and processor serial number lookup still
happens only on the main cpu; this needs to be restructured; mark what
code needs to move into per-cpu probe code.

While we're here, eradicate "cpu_info_store" in favor of "cpu_info_primary".

Revision 1.59.2.18 / (download) - annotate - [select for diffs], Sun Jan 7 22:59:26 2001 UTC (23 years, 3 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.17: +1 -1 lines
Diff to previous 1.59.2.17 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Correct merge botches.
Post-merge kernel now boots multiuser.

Revision 1.59.2.17 / (download) - annotate - [select for diffs], Sun Jan 7 22:12:46 2001 UTC (23 years, 3 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.16: +10 -3 lines
Diff to previous 1.59.2.16 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Snapshot of merge-in-progress with -current.

[Not expected to build].  Catch up with the last N months worth of
changes to -current.

Revision 1.59.2.16 / (download) - annotate - [select for diffs], Thu Jan 4 06:07:46 2001 UTC (23 years, 3 months ago) by thorpej
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.15: +5 -3 lines
Diff to previous 1.59.2.15 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Make sure that there's at least one "cpu_info" slot, so that we don't
trash random memory in the non-MULTIPROCESSOR case.

Revision 1.59.2.15 / (download) - annotate - [select for diffs], Thu Jan 4 04:44:34 2001 UTC (23 years, 3 months ago) by thorpej
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.14: +30 -19 lines
Diff to previous 1.59.2.14 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Always statically allocated the primary CPU's cpu_info, and make the
cpu_info list available in the non-MULTIPROCESSOR case, as well.

Revision 1.56.2.3 / (download) - annotate - [select for diffs], Wed Dec 13 15:49:30 2000 UTC (23 years, 4 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.56.2.2: +6 -0 lines
Diff to previous 1.56.2.2 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD (for UBC fixes).

Revision 1.67 / (download) - annotate - [select for diffs], Sun Dec 10 19:29:31 2000 UTC (23 years, 4 months ago) by mycroft
Branch: MAIN
Changes since 1.66: +7 -1 lines
Diff to previous 1.66 (colored) to selected 1.177.2.1 (colored)

Introduce PROC_PC(), which is used to get a process's user PC.  If this is
defined, call addupc_intr() directly from statclock() in the system time case,
using the same P_OWEUPC path if the copyin/copyout fails.
Use this in i386 to remove profiling code from the normal userret() path.

Revision 1.56.2.2 / (download) - annotate - [select for diffs], Wed Nov 22 16:00:24 2000 UTC (23 years, 5 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.56.2.1: +3 -3 lines
Diff to previous 1.56.2.1 (colored) to selected 1.177.2.1 (colored)

Sync with HEAD.

Revision 1.56.2.1 / (download) - annotate - [select for diffs], Mon Nov 20 20:09:26 2000 UTC (23 years, 5 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.56: +35 -4 lines
Diff to previous 1.56 (colored) to selected 1.177.2.1 (colored)

Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.

Revision 1.59.2.14 / (download) - annotate - [select for diffs], Sat Nov 18 22:50:31 2000 UTC (23 years, 5 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.13: +6 -2 lines
Diff to previous 1.59.2.13 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Add some minimal support for iterating over cpus

Revision 1.66 / (download) - annotate - [select for diffs], Thu Nov 16 17:00:18 2000 UTC (23 years, 5 months ago) by jdolecek
Branch: MAIN
Changes since 1.65: +3 -3 lines
Diff to previous 1.65 (colored) to selected 1.177.2.1 (colored)

make i386_nocpuid_cpus[] and i386_cpuid_cpus[] const - this pushes
another ~1.4KB to text section

Revision 1.59.2.13 / (download) - annotate - [select for diffs], Sat Sep 23 17:30:07 2000 UTC (23 years, 7 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.12: +7 -4 lines
Diff to previous 1.59.2.12 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Preliminary support for cloning MTRR values between CPU's at boot time.
XXX no API to *set* MTRR values yet.

Revision 1.59.2.12 / (download) - annotate - [select for diffs], Fri Aug 25 03:56:29 2000 UTC (23 years, 7 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.11: +14 -5 lines
Diff to previous 1.59.2.11 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Get this to at least build again in the !MULTIPROCESSOR case..

Revision 1.59.2.11 / (download) - annotate - [select for diffs], Fri Aug 25 02:03:33 2000 UTC (23 years, 7 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.10: +9 -10 lines
Diff to previous 1.59.2.10 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

The need_resched() function now takes a (cpu_info *) parameter.
Get asts out of <machine/intr.h>
Untangle astpending and want_resched variables somewhat.

Revision 1.65 / (download) - annotate - [select for diffs], Fri Aug 25 01:04:08 2000 UTC (23 years, 7 months ago) by thorpej
Branch: MAIN
Changes since 1.64: +2 -2 lines
Diff to previous 1.64 (colored) to selected 1.177.2.1 (colored)

Make need_resched() take a "struct cpu_info *" argument.  This
causes gives a primitive form of processor affinity.  Its use in
roundrobin() still needs some work.

Revision 1.59.2.10 / (download) - annotate - [select for diffs], Fri Aug 18 13:26:25 2000 UTC (23 years, 8 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.9: +7 -5 lines
Diff to previous 1.59.2.9 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

misc changes:
	- CPUF_PAUSE (indicating CPU is paused in debugger).
	- ci_flags is now a u_int32_t.
	- npx interface changes.

Revision 1.59.2.9 / (download) - annotate - [select for diffs], Sat Aug 12 17:53:00 2000 UTC (23 years, 8 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.8: +2 -1 lines
Diff to previous 1.59.2.8 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Get ready for context switch changes:
 - initialize idle pcbs earlier, before the first tsleep (instead of as
part of booting the secondary cpu's), since we'll actually use them
when idling in the near future.
 - clean up cpu_hatch()
 - fixup curproc's cpu pointer when switching to "real" cpu_info (XXX).
 - turn on local apic clock in cpu_hatch()
 - load the right gdt descriptor in cpu_hatch()
 - return from cpu_hatch() instead of spinning there; current
mptramp code will spin; future code will jump to idle loop.

Revision 1.53.2.1 / (download) - annotate - [select for diffs], Tue Jun 27 14:29:04 2000 UTC (23 years, 9 months ago) by he
Branch: netbsd-1-4
CVS Tags: netbsd-1-4-PATCH003
Changes since 1.53: +2 -1 lines
Diff to previous 1.53 (colored) next main 1.54 (colored) to selected 1.177.2.1 (colored)

Pull up revision 1.57 (via patch, requested by mjl):
  Reinitialize clock after hibernation, something which seems to be
  required on some laptops.  Fixes PR#4808.

Revision 1.59.2.8 / (download) - annotate - [select for diffs], Mon Jun 26 02:04:14 2000 UTC (23 years, 9 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.7: +6 -6 lines
Diff to previous 1.59.2.7 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Start making npx.c MP-safe; Interface to npx now specifies the process
and/or cpu to act on.  Implement an IPI for MP lazy FP save.
Tested and working when only one CPU is running; untested in the MP
case since we can't run user processes on multiple CPU's yet.

Along for the ride:
 - Change i386_send_ipi to take a "struct cpu_info *" rather than a cpu number.
 - Turn off the "give me the brain" test IPI's.

Revision 1.59.2.7 / (download) - annotate - [select for diffs], Sun Jun 25 20:44:54 2000 UTC (23 years, 9 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.6: +14 -2 lines
Diff to previous 1.59.2.6 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Add  CPUF_PRIMARY, CPU_IS_PRIMARY()

Revision 1.59.2.6 / (download) - annotate - [select for diffs], Sun Jun 25 19:37:10 2000 UTC (23 years, 9 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.5: +9 -2 lines
Diff to previous 1.59.2.5 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Merge up to just-post-1.5 -current

Revision 1.63.2.1 / (download) - annotate - [select for diffs], Thu Jun 22 17:00:32 2000 UTC (23 years, 10 months ago) by minoura
Branch: minoura-xpg4dl
Changes since 1.63: +2 -2 lines
Diff to previous 1.63 (colored) next main 1.64 (colored) to selected 1.177.2.1 (colored)

Sync w/ netbsd-1-5-base.

Revision 1.64 / (download) - annotate - [select for diffs], Sun Jun 4 21:27:38 2000 UTC (23 years, 10 months ago) by mycroft
Branch: MAIN
CVS Tags: sommerfeld_i386mp_houseclean, netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2
Branch point for: netbsd-1-5
Changes since 1.63: +2 -2 lines
Diff to previous 1.63 (colored) to selected 1.177.2.1 (colored)

Implement CLKF_INTR(), to count interrupt time separately.

Revision 1.63 / (download) - annotate - [select for diffs], Fri May 26 21:19:48 2000 UTC (23 years, 10 months ago) by thorpej
Branch: MAIN
CVS Tags: minoura-xpg4dl-base
Branch point for: minoura-xpg4dl
Changes since 1.62: +21 -1 lines
Diff to previous 1.62 (colored) to selected 1.177.2.1 (colored)

First sweep at scheduler state cleanup.  Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.

Revision 1.59.2.5 / (download) - annotate - [select for diffs], Sat Apr 22 16:05:20 2000 UTC (24 years ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.4: +3 -1 lines
Diff to previous 1.59.2.4 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Merge up to -current.

Revision 1.62 / (download) - annotate - [select for diffs], Fri Apr 21 18:37:22 2000 UTC (24 years ago) by thorpej
Branch: MAIN
CVS Tags: sommerfeld_i386mpbase_20000422
Changes since 1.61: +3 -1 lines
Diff to previous 1.61 (colored) to selected 1.177.2.1 (colored)

- Declare biosbasemem and biosextmem in <machine/cpu.h>, don't extern
  them everywhere they're used.
- Avoid integer overflow when converting bios{base,ext}mem (in units of
  kilobytes) to bytes.

Revision 1.59.2.4 / (download) - annotate - [select for diffs], Mon Apr 17 01:43:28 2000 UTC (24 years ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.3: +3 -2 lines
Diff to previous 1.59.2.3 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Catch up sommerfeld_i386mp_1 branch with -current.

Revision 1.61 / (download) - annotate - [select for diffs], Wed Mar 29 03:54:03 2000 UTC (24 years ago) by simonb
Branch: MAIN
Changes since 1.60: +1 -3 lines
Diff to previous 1.60 (colored) to selected 1.177.2.1 (colored)

Remove redundant decl of consinit() - it's in <sys/systm.h>.
Remove duplicate definition of delay() - we only need one in this file.

Revision 1.60 / (download) - annotate - [select for diffs], Tue Mar 28 19:16:05 2000 UTC (24 years ago) by thorpej
Branch: MAIN
Changes since 1.59: +3 -1 lines
Diff to previous 1.59 (colored) to selected 1.177.2.1 (colored)

Extern cpu_id and cpu_vendor[] here.

Revision 1.59.2.3 / (download) - annotate - [select for diffs], Thu Feb 24 05:09:26 2000 UTC (24 years, 1 month ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.2: +2 -1 lines
Diff to previous 1.59.2.2 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

Patch from Matt Debergalis to un-break bootblock build

Revision 1.59.2.2 / (download) - annotate - [select for diffs], Mon Feb 21 18:46:14 2000 UTC (24 years, 2 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59.2.1: +2 -2 lines
Diff to previous 1.59.2.1 (colored) to branchpoint 1.59 (colored) to selected 1.177.2.1 (colored)

MP: attempt to deal with the case where the BSP is at apic id 1 instead
of apic id 0.

Revision 1.59.2.1 / (download) - annotate - [select for diffs], Sun Feb 20 17:38:09 2000 UTC (24 years, 2 months ago) by sommerfeld
Branch: sommerfeld_i386mp_1
Changes since 1.59: +116 -11 lines
Diff to previous 1.59 (colored) to selected 1.177.2.1 (colored)

MP: include cpu_info structure, which picks up what used to be in
several global variables.
XXX cpu_info is bigger than it should be..

Revision 1.59 / (download) - annotate - [select for diffs], Wed Jan 26 18:48:00 2000 UTC (24 years, 2 months ago) by drochner
Branch: MAIN
CVS Tags: chs-ubc2-newbase
Branch point for: sommerfeld_i386mp_1
Changes since 1.58: +5 -1 lines
Diff to previous 1.58 (colored) to selected 1.177.2.1 (colored)

next step in getting machdep.c maintainable - put bus_space related
stuff into a separate file

Revision 1.55.2.1 / (download) - annotate - [select for diffs], Mon Dec 27 18:32:22 1999 UTC (24 years, 3 months ago) by wrstuden
Branch: wrstuden-devbsize
Changes since 1.55: +9 -2 lines
Diff to previous 1.55 (colored) next main 1.56 (colored) to selected 1.177.2.1 (colored)

Pull up to last week's -current.

Revision 1.58 / (download) - annotate - [select for diffs], Tue Dec 21 12:34:14 1999 UTC (24 years, 4 months ago) by drochner
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221
Changes since 1.57: +5 -1 lines
Diff to previous 1.57 (colored) to selected 1.177.2.1 (colored)

machdep.c is becoming an unmaintainable mess
put console initialisation into a separate file

Revision 1.56.4.1 / (download) - annotate - [select for diffs], Mon Nov 15 00:38:07 1999 UTC (24 years, 5 months ago) by fvdl
Branch: fvdl-softdep
Changes since 1.56: +2 -1 lines
Diff to previous 1.56 (colored) next main 1.57 (colored) to selected 1.177.2.1 (colored)

Sync with -current

Revision 1.57.2.2 / (download) - annotate - [select for diffs], Sat Nov 6 01:14:01 1999 UTC (24 years, 5 months ago) by enami
Branch: comdex-fall-1999
Changes since 1.57.2.1: +245 -0 lines
Diff to previous 1.57.2.1 (colored) to branchpoint 1.57 (colored) next main 1.58 (colored) to selected 1.177.2.1 (colored)

- Export initrtclock().
- Call it from apm_resume().

This fixes timer problem on some laptop after hybernation (PR#4808).
Reviewd by: fvdl@netbsd.org

Revision 1.57.2.1, Sat Nov 6 01:14:00 1999 UTC (24 years, 5 months ago) by enami
Branch: comdex-fall-1999
Changes since 1.57: +0 -245 lines
FILE REMOVED

file cpu.h was added on branch comdex-fall-1999 on 1999-11-06 01:14:01 +0000

Revision 1.57 / (download) - annotate - [select for diffs], Sat Nov 6 01:14:00 1999 UTC (24 years, 5 months ago) by enami
Branch: MAIN
CVS Tags: fvdl-softdep-base, comdex-fall-1999-base
Branch point for: comdex-fall-1999
Changes since 1.56: +2 -1 lines
Diff to previous 1.56 (colored) to selected 1.177.2.1 (colored)

- Export initrtclock().
- Call it from apm_resume().

This fixes timer problem on some laptop after hybernation (PR#4808).
Reviewd by: fvdl@netbsd.org

Revision 1.56 / (download) - annotate - [select for diffs], Wed Oct 6 20:04:53 1999 UTC (24 years, 6 months ago) by fvdl
Branch: MAIN
Branch point for: thorpej_scsipi, fvdl-softdep
Changes since 1.55: +4 -2 lines
Diff to previous 1.55 (colored) to selected 1.177.2.1 (colored)

Define CPU_FPU_PRESENT sysctl value.

Revision 1.55 / (download) - annotate - [select for diffs], Tue Aug 10 21:08:07 1999 UTC (24 years, 8 months ago) by thorpej
Branch: MAIN
Branch point for: wrstuden-devbsize
Changes since 1.54: +2 -1 lines
Diff to previous 1.54 (colored) to selected 1.177.2.1 (colored)

Define cpu_number() as discussed on tech-smp.

Revision 1.53.4.1 / (download) - annotate - [select for diffs], Mon Aug 2 19:50:35 1999 UTC (24 years, 8 months ago) by thorpej
Branch: chs-ubc2
Changes since 1.53: +1 -2 lines
Diff to previous 1.53 (colored) next main 1.54 (colored) to selected 1.177.2.1 (colored)

Update from trunk.

Revision 1.54 / (download) - annotate - [select for diffs], Tue Jul 20 22:25:19 1999 UTC (24 years, 9 months ago) by thorpej
Branch: MAIN
CVS Tags: chs-ubc2-base
Changes since 1.53: +1 -2 lines
Diff to previous 1.53 (colored) to selected 1.177.2.1 (colored)

Implement cpu_wait(), and move the call to tss_free() from switch_exit()
to cpu_wait(); tss_free() may block, and thus requires a valid context.

Revision 1.53 / (download) - annotate - [select for diffs], Thu Apr 1 00:37:50 1999 UTC (25 years ago) by thorpej
Branch: MAIN
CVS Tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: netbsd-1-4, chs-ubc2
Changes since 1.52: +2 -1 lines
Diff to previous 1.52 (colored) to selected 1.177.2.1 (colored)

Do proc0's TSS and LDT initialization at the end of configure() (i.e.
once the FPU has been attached).

Revision 1.52 / (download) - annotate - [select for diffs], Fri Mar 12 01:01:42 1999 UTC (25 years, 1 month ago) by fvdl
Branch: MAIN
Changes since 1.51: +32 -6 lines
Diff to previous 1.51 (colored) to selected 1.177.2.1 (colored)

Clean up the BIOS disk matching code a bit (better naming, one structure
and sysctl to export to userland). Also, only use total number of sectors
given in the extended parameters if the physical chs geometry is
marked invalid. Hopefully fixes a problem where BIOSs would not correctly
fill in this field.

Revision 1.51 / (download) - annotate - [select for diffs], Wed Mar 10 01:28:25 1999 UTC (25 years, 1 month ago) by fvdl
Branch: MAIN
Changes since 1.50: +6 -4 lines
Diff to previous 1.50 (colored) to selected 1.177.2.1 (colored)

Create a list of native disks too, and make it retrievable. It contains
all matching BIOS disks per entry, so that we have complete match info.
Enable the matching code.

Revision 1.50 / (download) - annotate - [select for diffs], Mon Mar 8 00:10:42 1999 UTC (25 years, 1 month ago) by fvdl
Branch: MAIN
Changes since 1.49: +4 -2 lines
Diff to previous 1.49 (colored) to selected 1.177.2.1 (colored)

Add some fields to the already defined, but unused, bootinfo structure
for BIOS geometry. Define CPU_BIOS_GEOM sysctl value in cpu.h.

Revision 1.49 / (download) - annotate - [select for diffs], Wed Nov 11 06:41:26 1998 UTC (25 years, 5 months ago) by thorpej
Branch: MAIN
CVS Tags: kenh-if-detach-base, kenh-if-detach
Changes since 1.48: +2 -2 lines
Diff to previous 1.48 (colored) to selected 1.177.2.1 (colored)

Changes to support fork_kthread():
- cpu_set_kpc() now takes void *arg third argument, passed to the
  entry point.
- cpu_fork() allows parent to be non-curproc iff parent is proc0.
  When forking non-curproc, assume its state has already been saved.
- Adjust various pieces of machine-dependent code to account of all of this.

Revision 1.48 / (download) - annotate - [select for diffs], Wed Oct 7 21:25:35 1998 UTC (25 years, 6 months ago) by thorpej
Branch: MAIN
CVS Tags: chs-ubc-base, chs-ubc
Changes since 1.47: +2 -2 lines
Diff to previous 1.47 (colored) to selected 1.177.2.1 (colored)

Erg, frame -> trapframe in last.  (thanks to john kohl)

Revision 1.47 / (download) - annotate - [select for diffs], Wed Oct 7 18:29:27 1998 UTC (25 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.46: +2 -2 lines
Diff to previous 1.46 (colored) to selected 1.177.2.1 (colored)

Oops, back out a buglet I didn't intend to commit in the last change.

Revision 1.46 / (download) - annotate - [select for diffs], Tue Oct 6 21:42:09 1998 UTC (25 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.45: +2 -1 lines
Diff to previous 1.45 (colored) to selected 1.177.2.1 (colored)

Move the code that does the deferred (post-autoconfiguration) buffer
cache allocation to its own function, and call it at the end of configure().

Revision 1.45 / (download) - annotate - [select for diffs], Tue Oct 6 20:50:16 1998 UTC (25 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.44: +2 -5 lines
Diff to previous 1.44 (colored) to selected 1.177.2.1 (colored)

configure() prototype is in <sys/device.h>

Revision 1.44 / (download) - annotate - [select for diffs], Thu Jan 22 00:39:35 1998 UTC (26 years, 3 months ago) by thorpej
Branch: MAIN
CVS Tags: eeh-paddr_t-base, eeh-paddr_t
Changes since 1.43: +4 -1 lines
Diff to previous 1.43 (colored) to selected 1.177.2.1 (colored)

Generate dependencies on the USER_LDT option.

Revision 1.43 / (download) - annotate - [select for diffs], Wed Jan 21 23:29:10 1998 UTC (26 years, 3 months ago) by thorpej
Branch: MAIN
Changes since 1.42: +4 -1 lines
Diff to previous 1.42 (colored) to selected 1.177.2.1 (colored)

Generate dependencies on the MATH_EMULATE option.

Revision 1.42 / (download) - annotate - [select for diffs], Thu Jan 15 22:26:03 1998 UTC (26 years, 3 months ago) by thorpej
Branch: MAIN
Changes since 1.41: +4 -1 lines
Diff to previous 1.41 (colored) to selected 1.177.2.1 (colored)

Generate dependencies on the VM86 option.

Revision 1.40.2.1 / (download) - annotate - [select for diffs], Fri Nov 28 08:52:10 1997 UTC (26 years, 4 months ago) by mellon
Branch: netbsd-1-3
CVS Tags: netbsd-1-3-RELEASE, netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003, netbsd-1-3-PATCH002, netbsd-1-3-PATCH001, netbsd-1-3-BETA
Changes since 1.40: +3 -1 lines
Diff to previous 1.40 (colored) next main 1.41 (colored) to selected 1.177.2.1 (colored)

Pull rev 1.41 up from trunk (bouyer)

Revision 1.41 / (download) - annotate - [select for diffs], Thu Nov 27 11:53:58 1997 UTC (26 years, 4 months ago) by bouyer
Branch: MAIN
Changes since 1.40: +3 -1 lines
Diff to previous 1.40 (colored) to selected 1.177.2.1 (colored)

Add a cpu_setup() function to "struct cpu_nocpuid_nameclass" and
"struct cpu_cpuid_family", so that we can have a cpu_setup function per
known cpu type. For now use it only for cyrix 6x86 to enable suspend-on-halt
and implement cyrix's workaround to the "coma bug".

Revision 1.39.8.1 / (download) - annotate - [select for diffs], Mon Sep 22 06:31:10 1997 UTC (26 years, 7 months ago) by thorpej
Branch: marc-pcmcia
Changes since 1.39: +4 -2 lines
Diff to previous 1.39 (colored) next main 1.40 (colored) to selected 1.177.2.1 (colored)

Update marc-pcmcia branch from trunk.

Revision 1.40 / (download) - annotate - [select for diffs], Sat Sep 20 12:40:25 1997 UTC (26 years, 7 months ago) by drochner
Branch: MAIN
CVS Tags: netbsd-1-3-base, marc-pcmcia-base
Branch point for: netbsd-1-3
Changes since 1.39: +4 -2 lines
Diff to previous 1.39 (colored) to selected 1.177.2.1 (colored)

Define "machdep.booted_kernel" for sysctl.

Revision 1.39 / (download) - annotate - [select for diffs], Tue Feb 4 04:57:10 1997 UTC (27 years, 2 months ago) by perry
Branch: MAIN
CVS Tags: thorpej-signal-base, thorpej-signal, mrg-vm-swap, marc-pcmcia-bp, is-newarp-before-merge, is-newarp-base, is-newarp, bouyer-scsipi
Branch point for: marc-pcmcia
Changes since 1.38: +1 -6 lines
Diff to previous 1.38 (colored) to selected 1.177.2.1 (colored)

Nuke some options GENERIC residue.

Revision 1.38 / (download) - annotate - [select for diffs], Tue Dec 3 23:54:54 1996 UTC (27 years, 4 months ago) by fvdl
Branch: MAIN
CVS Tags: thorpej-setroot
Changes since 1.37: +21 -5 lines
Diff to previous 1.37 (colored) to selected 1.177.2.1 (colored)

Added types/definitions for changed CPU recognition code.

Revision 1.37 / (download) - annotate - [select for diffs], Mon Nov 18 01:08:00 1996 UTC (27 years, 5 months ago) by fvdl
Branch: MAIN
Changes since 1.36: +8 -2 lines
Diff to previous 1.36 (colored) to selected 1.177.2.1 (colored)

Changes for NKPDE calculation from cgd.

- New variables: biosextmem, biosbasemem, nkpde
- Above can be set by using the options BIOSEXTMEM, BIOSBASEMEM,
  and NKPDE respectively (EXTMEM_SIZE is now called BIOSEXTMEM).
  When preset this way, they won't be filled in / calculated.
- Readable by sysctl using machdep.nkpde, machdep.biosbasemem
  and machdep.biosextmem.
- nkpde is calculated as:

	min(NKPDE_MAX, NKPDE_BASE + (biosextmem >> 10) * NKPDE_SCALE)

  Where NKPDE_MAX is 31, NKPDE_BASE is 4, NKPDE_SCALE = 1.

Revision 1.36 / (download) - annotate - [select for diffs], Fri Oct 11 00:27:01 1996 UTC (27 years, 6 months ago) by christos
Branch: MAIN
Changes since 1.35: +4 -1 lines
Diff to previous 1.35 (colored) to selected 1.177.2.1 (colored)

printf -> kprintf, sprintf -> ksprintf

Revision 1.35 / (download) - annotate - [select for diffs], Sun May 5 19:29:26 1996 UTC (27 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: netbsd-1-2-base, netbsd-1-2-RELEASE, netbsd-1-2-PATCH001, netbsd-1-2-BETA, netbsd-1-2
Changes since 1.34: +2 -2 lines
Diff to previous 1.34 (colored) to selected 1.177.2.1 (colored)

Change the prototype of fillw from (int, caddr_t, size_t) to
(short, void *, size_t).

Revision 1.34 / (download) - annotate - [select for diffs], Fri May 3 19:22:49 1996 UTC (27 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.33: +56 -1 lines
Diff to previous 1.33 (colored) to selected 1.177.2.1 (colored)

Add prototypes from other files.

Revision 1.33 / (download) - annotate - [select for diffs], Fri Mar 29 00:23:28 1996 UTC (28 years ago) by mycroft
Branch: MAIN
Changes since 1.32: +2 -1 lines
Diff to previous 1.32 (colored) to selected 1.177.2.1 (colored)

Prototype delay().

Revision 1.32 / (download) - annotate - [select for diffs], Sun Dec 24 01:08:02 1995 UTC (28 years, 4 months ago) by mycroft
Branch: MAIN
Changes since 1.31: +1 -2 lines
Diff to previous 1.31 (colored) to selected 1.177.2.1 (colored)

Enable paging of the user area.

Revision 1.31 / (download) - annotate - [select for diffs], Wed Oct 11 04:20:02 1995 UTC (28 years, 6 months ago) by mycroft
Branch: MAIN
CVS Tags: netbsd-1-1-base, netbsd-1-1-RELEASE, netbsd-1-1-PATCH001, netbsd-1-1
Changes since 1.30: +1 -2 lines
Diff to previous 1.30 (colored) to selected 1.177.2.1 (colored)

Various changes from John Kohl and me:
Map kernel stacks only at unique addresses.
Use one TSS per process.
Add sysarch calls for modifying IOPL and the I/O permission bitmap.
Add a compacting GDT entry allocator, for TSS and LDT selectors.
Enable modifying %fs and %gs with PT_SETREGS.
Sanitize various bits of code.

Revision 1.30 / (download) - annotate - [select for diffs], Tue Oct 10 04:46:02 1995 UTC (28 years, 6 months ago) by mycroft
Branch: MAIN
Changes since 1.29: +2 -2 lines
Diff to previous 1.29 (colored) to selected 1.177.2.1 (colored)

Add USERMODE() and KERNELMODE() macros, and use them.

Revision 1.29 / (download) - annotate - [select for diffs], Wed Jun 28 02:55:50 1995 UTC (28 years, 9 months ago) by cgd
Branch: MAIN
Changes since 1.28: +4 -6 lines
Diff to previous 1.28 (colored) to selected 1.177.2.1 (colored)

remove unused cpu_exec() definitions.  moved "broken swap" markers, for
ports that still need it, to types.h.

Revision 1.28 / (download) - annotate - [select for diffs], Fri May 5 03:42:02 1995 UTC (28 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.27: +3 -1 lines
Diff to previous 1.27 (colored) to selected 1.177.2.1 (colored)

define BROKEN_SWAP and/or cpu_swapout as appropriate.

Revision 1.27 / (download) - annotate - [select for diffs], Sat Apr 22 20:26:58 1995 UTC (29 years ago) by christos
Branch: MAIN
Changes since 1.26: +1 -3 lines
Diff to previous 1.26 (colored) to selected 1.177.2.1 (colored)

- added sunos_machdep.c for sun3, atari, amiga and mac68k.
- changed machdep.c and trap.c to use struct emul.
- remove ep_setup references.
- added struct emul to all emulations.

Revision 1.26 / (download) - annotate - [select for diffs], Fri Apr 21 21:56:01 1995 UTC (29 years ago) by mycroft
Branch: MAIN
Changes since 1.25: +9 -4 lines
Diff to previous 1.25 (colored) to selected 1.177.2.1 (colored)

Alias delay() to DELAY() for mi code.

Revision 1.25 / (download) - annotate - [select for diffs], Tue Mar 28 18:16:47 1995 UTC (29 years ago) by jtc
Branch: MAIN
Changes since 1.24: +2 -2 lines
Diff to previous 1.24 (colored) to selected 1.177.2.1 (colored)

KERNEL -> _KERNEL

Revision 1.24 / (download) - annotate - [select for diffs], Thu Oct 27 04:15:58 1994 UTC (29 years, 5 months ago) by cgd
Branch: MAIN
CVS Tags: before_newconf_base
Changes since 1.23: +3 -2 lines
Diff to previous 1.23 (colored) to selected 1.177.2.1 (colored)

new RCS ID format.

Revision 1.23 / (download) - annotate - [select for diffs], Tue Jun 14 19:37:39 1994 UTC (29 years, 10 months ago) by mycroft
Branch: MAIN
CVS Tags: netbsd-1-0-base, netbsd-1-0-RELEASE, netbsd-1-0-PATCH1, netbsd-1-0-PATCH06, netbsd-1-0-PATCH05, netbsd-1-0-PATCH04, netbsd-1-0-PATCH03, netbsd-1-0-PATCH02, netbsd-1-0-PATCH0, netbsd-1-0
Changes since 1.22: +1 -2 lines
Diff to previous 1.22 (colored) to selected 1.177.2.1 (colored)

profile_tick() is no longer needed.

Revision 1.22 / (download) - annotate - [select for diffs], Fri May 27 11:22:58 1994 UTC (29 years, 10 months ago) by mycroft
Branch: MAIN
Changes since 1.21: +2 -1 lines
Diff to previous 1.21 (colored) to selected 1.177.2.1 (colored)

Add cpu_set_init_frame().

Revision 1.21 / (download) - annotate - [select for diffs], Mon May 23 03:00:56 1994 UTC (29 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.20: +4 -3 lines
Diff to previous 1.20 (colored) to selected 1.177.2.1 (colored)

add cpu_swapin

Revision 1.20 / (download) - annotate - [select for diffs], Thu May 19 08:10:02 1994 UTC (29 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.19: +2 -1 lines
Diff to previous 1.19 (colored) to selected 1.177.2.1 (colored)

make cpu_wait a macro, and define cpu_coredump

Revision 1.19 / (download) - annotate - [select for diffs], Sat May 7 00:53:14 1994 UTC (29 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.18: +12 -1 lines
Diff to previous 1.18 (colored) to selected 1.177.2.1 (colored)

cpu-dependent sysctl structs

Revision 1.18 / (download) - annotate - [select for diffs], Fri May 6 12:23:10 1994 UTC (29 years, 11 months ago) by mycroft
Branch: MAIN
Changes since 1.17: +2 -2 lines
Diff to previous 1.17 (colored) to selected 1.177.2.1 (colored)

Correct comment.

Revision 1.17 / (download) - annotate - [select for diffs], Thu May 5 05:36:06 1994 UTC (29 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.16: +6 -6 lines
Diff to previous 1.16 (colored) to selected 1.177.2.1 (colored)

lots of changes: prototype migration, move lots of variables, definitions,
and structure elements around.  kill some unnecessary type and macro
definitions.  standardize clock handling.  More changes than you'd want.

Revision 1.16 / (download) - annotate - [select for diffs], Wed May 4 03:41:21 1994 UTC (29 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.15: +3 -3 lines
Diff to previous 1.15 (colored) to selected 1.177.2.1 (colored)

Rename a lot of process flags.

Revision 1.15 / (download) - annotate - [select for diffs], Thu Apr 7 06:49:19 1994 UTC (30 years ago) by mycroft
Branch: MAIN
Changes since 1.14: +6 -21 lines
Diff to previous 1.14 (colored) to selected 1.177.2.1 (colored)

Implement dynamic IRQ configuration and IRQ sharing.  Inline spl*() calls.
Reorganize and clean up the relevant code.

Revision 1.14 / (download) - annotate - [select for diffs], Sun Apr 3 22:36:41 1994 UTC (30 years ago) by mycroft
Branch: MAIN
Changes since 1.13: +6 -1 lines
Diff to previous 1.13 (colored) to selected 1.177.2.1 (colored)

This is #included multiple times.

Revision 1.13 / (download) - annotate - [select for diffs], Tue Mar 8 06:57:28 1994 UTC (30 years, 1 month ago) by mycroft
Branch: MAIN
Changes since 1.12: +3 -1 lines
Diff to previous 1.12 (colored) to selected 1.177.2.1 (colored)

Add `com' softintr.

Revision 1.10.2.9 / (download) - annotate - [select for diffs], Tue Feb 1 18:37:40 1994 UTC (30 years, 2 months ago) by mycroft
Changes since 1.10.2.8: +3 -2 lines
Diff to previous 1.10.2.8 (colored) next main 1.11 (colored) to selected 1.177.2.1 (colored)

Revert clockframe and profiling stuff.

Revision 1.10.2.8 / (download) - annotate - [select for diffs], Tue Jan 11 13:34:19 1994 UTC (30 years, 3 months ago) by mycroft
CVS Tags: magnum-reference
Changes since 1.10.2.7: +7 -7 lines
Diff to previous 1.10.2.7 (colored) to selected 1.177.2.1 (colored)

SIR_GENERIC --> SIR_AST, to match main branch.

Revision 1.12.2.2 / (download) - annotate - [select for diffs], Fri Dec 17 00:10:50 1993 UTC (30 years, 4 months ago) by mycroft
Branch: magnum
Changes since 1.12.2.1: +117 -0 lines
Diff to previous 1.12.2.1 (colored) to branchpoint 1.12 (colored) next main 1.13 (colored) to selected 1.177.2.1 (colored)

From magnum branch:
Remove Jolitz's netisr kluge.  Make sure cpl == 0 really means base priority.
Other minor cleanup.

Revision 1.12.2.1, Fri Dec 17 00:10:49 1993 UTC (30 years, 4 months ago) by mycroft
Branch: magnum
Changes since 1.12: +0 -117 lines
FILE REMOVED

file cpu.h was added on branch magnum on 1993-12-17 00:10:50 +0000

Revision 1.12 / (download) - annotate - [select for diffs], Fri Dec 17 00:10:49 1993 UTC (30 years, 4 months ago) by mycroft
Branch: MAIN
CVS Tags: magnum-base
Branch point for: magnum
Changes since 1.11: +29 -15 lines
Diff to previous 1.11 (colored) to selected 1.177.2.1 (colored)

From magnum branch:
Remove Jolitz's netisr kluge.  Make sure cpl == 0 really means base priority.
Other minor cleanup.

Revision 1.10.2.7 / (download) - annotate - [select for diffs], Fri Oct 29 05:41:55 1993 UTC (30 years, 5 months ago) by mycroft
Changes since 1.10.2.6: +7 -6 lines
Diff to previous 1.10.2.6 (colored) to selected 1.177.2.1 (colored)

Set sir bits correctly.

Revision 1.10.2.6 / (download) - annotate - [select for diffs], Mon Oct 18 08:56:14 1993 UTC (30 years, 6 months ago) by mycroft
Changes since 1.10.2.5: +16 -4 lines
Diff to previous 1.10.2.5 (colored) to selected 1.177.2.1 (colored)

Add a more `normal' way of dealing with software interrupts.

Revision 1.10.2.5 / (download) - annotate - [select for diffs], Mon Oct 18 08:19:00 1993 UTC (30 years, 6 months ago) by mycroft
Changes since 1.10.2.4: +15 -7 lines
Diff to previous 1.10.2.4 (colored) to selected 1.177.2.1 (colored)

Add need_proftick(), and some minor cleanup.

Revision 1.10.2.4 / (download) - annotate - [select for diffs], Thu Oct 14 05:18:13 1993 UTC (30 years, 6 months ago) by mycroft
Changes since 1.10.2.3: +3 -5 lines
Diff to previous 1.10.2.3 (colored) to selected 1.177.2.1 (colored)

Remove aston().

Revision 1.10.2.3 / (download) - annotate - [select for diffs], Wed Oct 13 01:21:22 1993 UTC (30 years, 6 months ago) by mycroft
Changes since 1.10.2.2: +3 -11 lines
Diff to previous 1.10.2.2 (colored) to selected 1.177.2.1 (colored)

Remove defunct profile_tick().  Put pending AST flag back in netisr.

Revision 1.10.2.2 / (download) - annotate - [select for diffs], Fri Sep 24 08:46:39 1993 UTC (30 years, 7 months ago) by mycroft
Changes since 1.10.2.1: +3 -11 lines
Diff to previous 1.10.2.1 (colored) to selected 1.177.2.1 (colored)

Changes from trunk.
cpu.h: Add dummy (for now) CLKF_INTR().  #include psl.h.
endian.h: Add multiple-inclusion protection.  #define _QUAD_{LOW,HIGH}WORD.
#include sys/cdefs for __P().  Don't define byte order stuff if _POSIX_SOURCE.
Remove big endian shit.
limits.h: Add {,U}QUAD_{MIN,MAX}.
psl.h: Get PSL_MB[ZO] right.  Make cpl volatile just in case.  Add alias for
spl0().  splnone() and splx() return int for now.

Revision 1.10.2.1 / (download) - annotate - [select for diffs], Tue Sep 14 17:29:19 1993 UTC (30 years, 7 months ago) by mycroft
Changes since 1.10: +3 -3 lines
Diff to previous 1.10 (colored) to selected 1.177.2.1 (colored)

New i386 code.

Revision 1.11 / (download) - annotate - [select for diffs], Sat Sep 11 00:16:40 1993 UTC (30 years, 7 months ago) by jtc
Branch: MAIN
Changes since 1.10: +1 -11 lines
Diff to previous 1.10 (colored) to selected 1.177.2.1 (colored)

Remove NEED_* defines, as they are now satisfied by libkern.

Revision 1.10 / (download) - annotate - [select for diffs], Thu Sep 2 02:10:35 1993 UTC (30 years, 7 months ago) by cgd
Branch: MAIN
Changes since 1.9: +1 -3 lines
Diff to previous 1.9 (colored) to selected 1.177.2.1 (colored)

get rid of bogus #define of resettodr(); now setting time actually works!

Revision 1.9 / (download) - annotate - [select for diffs], Wed Jun 16 22:28:12 1993 UTC (30 years, 10 months ago) by jtc
Branch: MAIN
CVS Tags: netbsd-0-9-patch-001, netbsd-0-9-base, netbsd-0-9-RELEASE, netbsd-0-9-BETA, netbsd-0-9-ALPHA2, netbsd-0-9-ALPHA, netbsd-0-9
Changes since 1.8: +3 -3 lines
Diff to previous 1.8 (colored) to selected 1.177.2.1 (colored)

Move my assembly versions of strlen and ffs into the kernel

Revision 1.8 / (download) - annotate - [select for diffs], Thu Jun 3 01:31:15 1993 UTC (30 years, 10 months ago) by cgd
Branch: MAIN
Changes since 1.7: +2 -1 lines
Diff to previous 1.7 (colored) to selected 1.177.2.1 (colored)

add prototype for a function to be called from execve to check a_mid type

Revision 1.7 / (download) - annotate - [select for diffs], Wed Jun 2 04:16:15 1993 UTC (30 years, 10 months ago) by cgd
Branch: MAIN
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored) to selected 1.177.2.1 (colored)

set things up so that the signal trampoline code is on the stack,
like it normally is in BSD systems.  still has a bit of hair...

Revision 1.6 / (download) - annotate - [select for diffs], Fri May 21 12:26:03 1993 UTC (30 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.5: +7 -1 lines
Diff to previous 1.5 (colored) to selected 1.177.2.1 (colored)

add "cpu classes" in addition to cpu names, put cpu names in table, along
with mapping to classes.  this is for upgraded cpu-id code coming "soon"

Revision 1.5 / (download) - annotate - [select for diffs], Fri May 21 11:06:37 1993 UTC (30 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.4: +3 -8 lines
Diff to previous 1.4 (colored) to selected 1.177.2.1 (colored)

move cpu types out of assym.s and into cputypes.h
and have that file included by cpu.h and by locore.s

Revision 1.4 / (download) - annotate - [select for diffs], Thu May 20 15:36:49 1993 UTC (30 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.3: +1 -5 lines
Diff to previous 1.3 (colored) to selected 1.177.2.1 (colored)

hack on the uname "machine name" stuff for hopefully the last time.
now it uses MACHINE, as defined in param.h

Revision 1.3 / (download) - annotate - [select for diffs], Thu May 20 14:34:43 1993 UTC (30 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.2: +5 -1 lines
Diff to previous 1.2 (colored) to selected 1.177.2.1 (colored)

clean up for new cpu stuff

Revision 1.2 / (download) - annotate - [select for diffs], Thu May 20 02:05:57 1993 UTC (30 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.1: +5 -0 lines
Diff to previous 1.1 (colored) to selected 1.177.2.1 (colored)

make uname stuff in init_main machine independent

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Sun Mar 21 09:45:37 1993 UTC (31 years, 1 month ago) by cgd
Branch: WFJ-920714
CVS Tags: patchkit-0-2-2, netbsd-alpha-1, netbsd-0-8, WFJ-386bsd-01
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored) to selected 1.177.2.1 (colored)

initial import of 386bsd-0.1 sources

Revision 1.1 / (download) - annotate - [select for diffs], Sun Mar 21 09:45:37 1993 UTC (31 years, 1 month ago) by cgd
Branch: MAIN
Diff to selected 1.177.2.1 (colored)

Initial revision

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>