CVS log for src/common/lib/libc/arch/x86_64/atomic/atomic.S
Up to [cvs.NetBSD.org] / src / common / lib / libc / arch / x86_64 / atomic
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
Revision 1.29.2.1: download - view: text, markup, annotated - select for diffs
Sat Jul 20 16:11:27 2024 UTC (6 months ago) by martin
Branches: netbsd-10
CVS tags: netbsd-10-1-RELEASE
Diff to: previous 1.29: preferred, colored; next MAIN 1.30: preferred, colored
Changes since revision 1.29: +3 -1
lines
Pull up following revision(s) (requested by riastradh in ticket #764):
common/lib/libc/arch/i386/atomic/atomic.S: revision 1.37
sys/arch/xen/include/xenring.h: revision 1.8
sys/arch/i386/i386/cpufunc.S: revision 1.52
sys/arch/amd64/amd64/cpufunc.S: revision 1.68
sys/arch/xen/include/hypervisor.h: revision 1.60
common/lib/libc/arch/x86_64/atomic/atomic.S: revision 1.30
xen: Don't hotpatch away LOCK prefix in xen_mb, even on UP boots.
Both xen_mb and membar_sync are designed to provide store-before-load
ordering, but xen_mb has to provide it in synchronizing guest with
hypervisor, while membar_sync only has to provide it in synchronizing
one (guest) CPU with another (guest) CPU.
It is safe to hotpatch away the LOCK prefix in membar_sync on a
uniprocessor boot because membar_sync is only designed to coordinate
between normal memory on multiple CPUs, and is never necessary when
there's only one CPU involved.
But xen_mb is used to coordinate between the guest and the `device'
implemented by a hypervisor, which might be running on another
_physical_ CPU even if the NetBSD guest only sees one `CPU', i.e.,
one _virtual_ CPU. So even on `uniprocessor' boots, xen_mb must
still issue an instruction with store-before-load ordering on
multiprocessor systems, such as a LOCK ADD (or MFENCE, but MFENCE is
costlier for no benefit here).
No need to change xen_wmb (release ordering, load/store-before-store)
or xen_rmb (acquire ordering, load-before-load/store) because every
x86 store is a store-release and every x86 load is a load-acquire,
even on multiprocessor systems, so there's no hotpatching involved
anyway.
PR kern/57199
Revision 1.31: download - view: text, markup, annotated - select for diffs
Tue Jul 16 22:45:10 2024 UTC (6 months, 1 week ago) by riastradh
Branches: MAIN
CVS tags: HEAD
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +8 -1
lines
amd64: Fix performance regression in uniprocessor atomics/membars.
Back in 2022, I eliminated the MFENCE hotpatch in membar_sync because
it's essentially always more expensive than LOCK ADD with no benefit
for CPU/CPU store-before-load ordering. (It is relevant only for
non-temporal stores or write-combining memory.)
https://mail-index.netbsd.org/source-changes/2022/07/30/msg140047.html
But in that change, I made a mistake and _also_ eliminated the LOCK
hotpatch on uniprocessor amd64. And our assembler gas helpfully
interprets uppercase LOCK just like lowercase lock and assembles them
the same way, so I didn't notice.
This change restores the LOCK hotpatch, so that when booting on a
uniprocessor system (or a uniprocessor guest on a multicore host),
the LOCK prefix is replaced by NOP for a cheaper instruction.
Found by puzzling over how my explanation for PR kern/57199 could
possibly be correct when (on an amd64 guest) ddb x/i membar_sync kept
showing the lock prefix even in uniprocessor boots.
Revision 1.30: download - view: text, markup, annotated - select for diffs
Tue Jul 16 22:44:38 2024 UTC (6 months, 1 week ago) by riastradh
Branches: MAIN
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +3 -1
lines
xen: Don't hotpatch away LOCK prefix in xen_mb, even on UP boots.
Both xen_mb and membar_sync are designed to provide store-before-load
ordering, but xen_mb has to provide it in synchronizing guest with
hypervisor, while membar_sync only has to provide it in synchronizing
one (guest) CPU with another (guest) CPU.
It is safe to hotpatch away the LOCK prefix in membar_sync on a
uniprocessor boot because membar_sync is only designed to coordinate
between normal memory on multiple CPUs, and is never necessary when
there's only one CPU involved.
But xen_mb is used to coordinate between the guest and the `device'
implemented by a hypervisor, which might be running on another
_physical_ CPU even if the NetBSD guest only sees one `CPU', i.e.,
one _virtual_ CPU. So even on `uniprocessor' boots, xen_mb must
still issue an instruction with store-before-load ordering on
multiprocessor systems, such as a LOCK ADD (or MFENCE, but MFENCE is
costlier for no benefit here).
No need to change xen_wmb (release ordering, load/store-before-store)
or xen_rmb (acquire ordering, load-before-load/store) because every
x86 store is a store-release and every x86 load is a load-acquire,
even on multiprocessor systems, so there's no hotpatching involved
anyway.
PR kern/57199
Revision 1.29: download - view: text, markup, annotated - select for diffs
Sat Jul 30 14:11:00 2022 UTC (2 years, 5 months ago) by riastradh
Branches: MAIN
CVS tags: thorpej-ifq-base,
thorpej-ifq,
thorpej-altq-separation-base,
thorpej-altq-separation,
perseant-exfatfs-base-20240630,
perseant-exfatfs-base,
perseant-exfatfs,
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
Branch point for: netbsd-10
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +13 -23
lines
x86: Eliminate mfence hotpatch for membar_sync.
The more-compatible LOCK ADD $0,-N(%rsp) turns out to be cheaper
than MFENCE anyway. Let's save some space and maintenance and rip
out the hotpatching for it.
Revision 1.28: download - view: text, markup, annotated - select for diffs
Sat Apr 9 23:32:52 2022 UTC (2 years, 9 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +15 -9
lines
Introduce membar_acquire/release. Deprecate membar_enter/exit.
The names membar_enter/exit were unclear, and the documentation of
membar_enter has disagreed with the implementations on sparc,
powerpc, and even x86(!) for the entire time it has been in NetBSD.
The terms `acquire' and `release' are ubiquitous in the literature
today, and have been adopted in the C and C++ standards to mean
load-before-load/store and load/store-before-store, respectively,
which are exactly the orderings required by acquiring and releasing a
mutex, as well as other useful applications like decrementing a
reference count and then freeing the underlying object if it went to
zero.
Originally I proposed changing one word in the documentation for
membar_enter to make it load-before-load/store instead of
store-before-load/store, i.e., to make it an acquire barrier. I
proposed this on the grounds that
(a) all implementations guarantee load-before-load/store,
(b) some implementations fail to guarantee store-before-load/store,
and
(c) all uses in-tree assume load-before-load/store.
I verified parts (a) and (b) (except, for (a), powerpc didn't even
guarantee load-before-load/store -- isync isn't necessarily enough;
need lwsync in general -- but it _almost_ did, and it certainly didn't
guarantee store-before-load/store).
Part (c) might not be correct, however: under the mistaken assumption
that atomic-r/m/w then membar-w/rw is equivalent to atomic-r/m/w then
membar-r/rw, I only audited the cases of membar_enter that _aren't_
immediately after an atomic-r/m/w. All of those cases assume
load-before-load/store. But my assumption was wrong -- there are
cases of atomic-r/m/w then membar-w/rw that would be broken by
changing to atomic-r/m/w then membar-r/rw:
https://mail-index.netbsd.org/tech-kern/2022/03/29/msg028044.html
Furthermore, the name membar_enter has been adopted in other places
like OpenBSD where it actually does follow the documentation and
guarantee store-before-load/store, even if that order is not useful.
So the name membar_enter currently lives in a bad place where it
means either of two things -- r/rw or w/rw.
With this change, we deprecate membar_enter/exit, introduce
membar_acquire/release as better names for the useful pair (r/rw and
rw/w), and make sure the implementation of membar_enter guarantees
both what was documented _and_ what was implemented, making it an
alias for membar_sync.
While here, rework all of the membar_* definitions and aliases. The
new logic follows a rule to make it easier to audit:
membar_X is defined as an alias for membar_Y iff membar_X is
guaranteed by membar_Y.
The `no stronger than' relation is (the transitive closure of):
- membar_consumer (r/r) is guaranteed by membar_acquire (r/rw)
- membar_producer (w/w) is guaranteed by membar_release (rw/w)
- membar_acquire (r/rw) is guaranteed by membar_sync (rw/rw)
- membar_release (rw/w) is guaranteed by membar_sync (rw/rw)
And, for the deprecated membars:
- membar_enter (whether r/rw, w/rw, or rw/rw) is guaranteed by
membar_sync (rw/rw)
- membar_exit (rw/w) is guaranteed by membar_release (rw/w)
(membar_exit is identical to membar_release, but the name is
deprecated.)
Finally, while here, annotate some of the instructions with their
semantics. For powerpc, leave an essay with citations on the
unfortunate but -- as far as I can tell -- necessary decision to use
lwsync, not isync, for membar_acquire and membar_consumer.
Also add membar(3) and atomic(3) man page links.
Revision 1.27: download - view: text, markup, annotated - select for diffs
Sat Apr 9 22:53:45 2022 UTC (2 years, 9 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +3 -3
lines
x86_64/membar_ops: Upgrade membar_enter from R/RW to RW/RW.
This will be deprecated soon but let's avoid leaving rakes to trip on
with it arising from disagreement over the documentation (W/RW) and
implementation and usage (R/RW).
Revision 1.26: download - view: text, markup, annotated - select for diffs
Sat Apr 9 12:07:29 2022 UTC (2 years, 9 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +7 -1
lines
x86: Add a note on membar_sync and mfence.
Revision 1.25: download - view: text, markup, annotated - select for diffs
Sat Apr 9 12:07:17 2022 UTC (2 years, 9 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +6 -3
lines
x86: Omit needless store in membar_producer/exit.
On x86, every store is a store-release, so there is no need for any
barrier. But this wasn't a barrier anyway; it was just a store,
which was redundant with the store of the return address to the stack
implied by CALL even if issuing a store made a difference.
Revision 1.24: download - view: text, markup, annotated - select for diffs
Sat Apr 9 12:07:00 2022 UTC (2 years, 9 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +6 -13
lines
x86: Every load is a load-acquire, so membar_consumer is a noop.
lfence is only needed for MD logic, such as operations on I/O memory
rather than normal cacheable memory, or special instructions like
RDTSC -- never for MI synchronization between threads/CPUs. No need
for hot-patching to do lfence here.
(The x86_lfence function might reasonably be patched on i386 to do
lfence for MD logic, but it isn't now and this doesn't change that.)
Revision 1.23: download - view: text, markup, annotated - select for diffs
Wed Apr 6 22:47:57 2022 UTC (2 years, 9 months ago) by riastradh
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +2 -2
lines
Nix trailing whitespace in files of membars, atomics, and lock stubs.
Will be touching many of these files soon for functional changes.
No functional change intended.
Revision 1.22: download - view: text, markup, annotated - select for diffs
Sun Apr 26 14:49:17 2020 UTC (4 years, 9 months ago) by maxv
Branches: MAIN
CVS tags: cjep_sun2x-base1,
cjep_sun2x-base,
cjep_sun2x,
cjep_staticlib_x-base1,
cjep_staticlib_x-base,
cjep_staticlib_x
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +27 -21
lines
Use the hotpatch framework for LFENCE/MFENCE.
Revision 1.21: download - view: text, markup, annotated - select for diffs
Sun Apr 26 13:59:44 2020 UTC (4 years, 9 months ago) by maxv
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +27 -27
lines
Remove unused argument in macro.
Revision 1.20: download - view: text, markup, annotated - select for diffs
Sun Apr 26 13:54:03 2020 UTC (4 years, 9 months ago) by maxv
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +1 -2
lines
Remove unused.
Revision 1.19: download - view: text, markup, annotated - select for diffs
Sun Apr 26 13:37:14 2020 UTC (4 years, 9 months ago) by maxv
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +3 -11
lines
Drop the hardcoded array, use the hotpatch section.
Revision 1.17.24.3: download - view: text, markup, annotated - select for diffs
Tue Apr 21 19:37:48 2020 UTC (4 years, 9 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.17.24.2: preferred, colored; branchpoint 1.17: preferred, colored; next MAIN 1.18: preferred, colored
Changes since revision 1.17.24.2: +1 -1
lines
Ooops, restore accidently removed files from merge mishap
Revision 1.17.24.2
Tue Apr 21 18:41:21 2020 UTC (4 years, 9 months ago) by martin
Branches: phil-wifi
FILE REMOVED
Changes since revision 1.17.24.1: +1 -1
lines
Sync with HEAD
Revision 1.17.24.1: download - view: text, markup, annotated - select for diffs
Mon Jun 10 21:41:06 2019 UTC (5 years, 7 months ago) by christos
Branches: phil-wifi
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +2 -1
lines
Sync with HEAD
Revision 1.18: download - view: text, markup, annotated - select for diffs
Sun Feb 17 07:34:44 2019 UTC (5 years, 11 months ago) by isaki
Branches: MAIN
CVS tags: phil-wifi-20200421,
phil-wifi-20200411,
phil-wifi-20200406,
phil-wifi-20191119,
phil-wifi-20190609,
netbsd-9-base,
netbsd-9-4-RELEASE,
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,
is-mlppp-base,
is-mlppp,
bouyer-xenpvh-base2,
bouyer-xenpvh-base1,
bouyer-xenpvh-base,
bouyer-xenpvh,
ad-namecache-base3,
ad-namecache-base,
ad-namecache
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +2 -1
lines
Add missing export of atomic_or_64 (since rev1.1).
Revision 1.16.12.1: download - view: text, markup, annotated - select for diffs
Tue Aug 19 23:45:14 2014 UTC (10 years, 5 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.16: preferred, colored; next MAIN 1.17: preferred, colored
Changes since revision 1.16: +32 -1
lines
Rebase to HEAD as of a few days ago.
Revision 1.16.24.1: download - view: text, markup, annotated - select for diffs
Sun Aug 10 06:47:06 2014 UTC (10 years, 5 months ago) by tls
Branches: tls-earlyentropy
Diff to: previous 1.16: preferred, colored; next MAIN 1.17: preferred, colored
Changes since revision 1.16: +32 -1
lines
Rebase.
Revision 1.17: download - view: text, markup, annotated - select for diffs
Thu May 22 15:23:11 2014 UTC (10 years, 8 months ago) by uebayasi
Branches: MAIN
CVS tags: tls-maxphys-base,
tls-maxphys-20171202,
tls-earlyentropy-base,
prg-localcount2-base3,
prg-localcount2-base2,
prg-localcount2-base1,
prg-localcount2-base,
prg-localcount2,
phil-wifi-base,
pgoyette-localcount-base,
pgoyette-localcount-20170426,
pgoyette-localcount-20170320,
pgoyette-localcount-20170107,
pgoyette-localcount-20161104,
pgoyette-localcount-20160806,
pgoyette-localcount-20160726,
pgoyette-localcount,
pgoyette-compat-merge-20190127,
pgoyette-compat-base,
pgoyette-compat-20190127,
pgoyette-compat-20190118,
pgoyette-compat-1226,
pgoyette-compat-1126,
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,
pgoyette-compat,
perseant-stdc-iso10646-base,
perseant-stdc-iso10646,
netbsd-8-base,
netbsd-8-3-RELEASE,
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,
matt-nb8-mediatek-base,
matt-nb8-mediatek,
localcount-20160914,
bouyer-socketcan-base1,
bouyer-socketcan-base,
bouyer-socketcan
Branch point for: phil-wifi
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +32 -1
lines
Put missing END() markers to set ELF symbol size.
Revision 1.16: download - view: text, markup, annotated - select for diffs
Wed Jan 12 23:12:10 2011 UTC (14 years ago) by joerg
Branches: MAIN
CVS tags: yamt-pagecache-tag8,
yamt-pagecache-base9,
yamt-pagecache-base8,
yamt-pagecache-base7,
yamt-pagecache-base6,
yamt-pagecache-base5,
yamt-pagecache-base4,
yamt-pagecache-base3,
yamt-pagecache-base2,
yamt-pagecache-base,
yamt-pagecache,
rmind-smpnet-nbase,
rmind-smpnet-base,
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,
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-nb6-plus-nbase,
matt-nb6-plus-base,
matt-nb6-plus,
khorben-n900,
cherry-xenmp-base,
cherry-xenmp,
bouyer-quota2-nbase,
bouyer-quota2-base,
bouyer-quota2,
agc-symver-base,
agc-symver
Branch point for: tls-maxphys,
tls-earlyentropy
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +2 -2
lines
Allow use of traditional CPP to be set on a per platform base in sys.mk.
Honour this for dependency processing in bsd.dep.mk. Switch i386 and
amd64 assembly to use ISO C90 preprocessor concat and drop the
-traditional-cpp on this platform.
Revision 1.15: download - view: text, markup, annotated - select for diffs
Thu Nov 26 07:40:34 2009 UTC (15 years, 2 months ago) by pooka
Branches: MAIN
CVS tags: yamt-nfs-mp-base9,
yamt-nfs-mp-base11,
yamt-nfs-mp-base10,
rmind-uvmplock-base,
matt-premerge-20091211,
matt-mips64-premerge-20101231
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +7 -3
lines
Use strong alias within the kernel namespace regardless of if we're
dealing with a hard or soft kernel (kernel linker doesn't support
weak symbols).
Revision 1.14: download - view: text, markup, annotated - select for diffs
Mon Jan 12 02:53:29 2009 UTC (16 years ago) by pooka
Branches: MAIN
CVS tags: yamt-nfs-mp-base8,
yamt-nfs-mp-base7,
yamt-nfs-mp-base6,
yamt-nfs-mp-base5,
yamt-nfs-mp-base4,
yamt-nfs-mp-base3,
jymxensuspend-base,
jym-xensuspend-nbase,
jym-xensuspend-base,
jym-xensuspend
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +2 -5
lines
include sys/param.h for _HARDKERNEL instead of homegrown def.
Revision 1.13: download - view: text, markup, annotated - select for diffs
Sun Jan 4 18:46:16 2009 UTC (16 years ago) by pooka
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +8 -4
lines
Do not use lockpatches with _RUMPKERNEL (non-PIC ... and pointless).
Revision 1.11.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 23 04:26:45 2008 UTC (16 years, 7 months ago) by wrstuden
Branches: wrstuden-revivesa
Diff to: previous 1.11: preferred, colored; next MAIN 1.12: preferred, colored
Changes since revision 1.11: +32 -32
lines
Sync w/ -current. 34 merge conflicts to follow.
Revision 1.9.4.2: download - view: text, markup, annotated - select for diffs
Wed Jun 4 02:02:58 2008 UTC (16 years, 7 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.9.4.1: preferred, colored; branchpoint 1.9: preferred, colored; next MAIN 1.10: preferred, colored
Changes since revision 1.9.4.1: +32 -32
lines
sync with head
Revision 1.12: download - view: text, markup, annotated - select for diffs
Sun May 25 15:56:12 2008 UTC (16 years, 8 months ago) by chs
Branches: MAIN
CVS tags: yamt-pf42-base4,
yamt-pf42-base3,
wrstuden-revivesa-base-3,
wrstuden-revivesa-base-2,
wrstuden-revivesa-base-1,
wrstuden-revivesa-base,
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
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +32 -32
lines
enable profiling of assembly functions.
Revision 1.9.4.1: download - view: text, markup, annotated - select for diffs
Sun May 18 12:28:46 2008 UTC (16 years, 8 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +8 -15
lines
sync with head.
Revision 1.11: download - view: text, markup, annotated - select for diffs
Sat May 3 05:42:38 2008 UTC (16 years, 8 months ago) by yamt
Branches: MAIN
CVS tags: yamt-pf42-base2,
yamt-nfs-mp-base2,
hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +8 -8
lines
rename END to ENDLABEL. i'll use END for other purpose. ok by Andrew Doran.
Revision 1.10: download - view: text, markup, annotated - select for diffs
Mon Apr 28 20:22:52 2008 UTC (16 years, 9 months ago) by martin
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +1 -8
lines
Remove clause 3 and 4 from TNF licenses
Revision 1.7.4.3: download - view: text, markup, annotated - select for diffs
Sun Mar 23 00:12:44 2008 UTC (16 years, 10 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.7.4.2: preferred, colored; branchpoint 1.7: preferred, colored; next MAIN 1.8: preferred, colored
Changes since revision 1.7.4.2: +28 -15
lines
sync with HEAD
Revision 1.9: download - view: text, markup, annotated - select for diffs
Sun Feb 10 13:25:46 2008 UTC (16 years, 11 months ago) by ad
Branches: MAIN
CVS tags: yamt-pf42-baseX,
yamt-pf42-base,
yamt-nfs-mp-base,
yamt-lazymbuf-base15,
yamt-lazymbuf-base14,
matt-armv6-nbase,
keiichi-mipv6-base,
keiichi-mipv6,
hpcarm-cleanup-base
Branch point for: yamt-pf42
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +23 -1
lines
Add atomic_cas_foo_ni().
Revision 1.8: download - view: text, markup, annotated - select for diffs
Sat Feb 9 13:42:21 2008 UTC (16 years, 11 months ago) by ad
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +6 -15
lines
membar_enter was doing the wrong thing. For x86 we can alias:
membar_enter -> membar_consumer
membar_exit -> membar_producer
Revision 1.7.4.2: download - view: text, markup, annotated - select for diffs
Wed Jan 9 01:21:15 2008 UTC (17 years ago) by matt
Branches: matt-armv6
Diff to: previous 1.7.4.1: preferred, colored; branchpoint 1.7: preferred, colored
Changes since revision 1.7.4.1: +393 -0
lines
sync with HEAD
Revision 1.7.4.1
Mon Dec 10 14:13:12 2007 UTC (17 years, 1 month ago) by matt
Branches: matt-armv6
FILE REMOVED
Changes since revision 1.7: +0 -393
lines
file atomic.S was added on branch matt-armv6 on 2008-01-09 01:21:14 +0000
Revision 1.7: download - view: text, markup, annotated - select for diffs
Mon Dec 10 14:13:12 2007 UTC (17 years, 1 month ago) by ad
Branches: MAIN
CVS tags: yamt-kmem-base3,
yamt-kmem-base2,
matt-armv6-base,
cube-autoconf-base,
cube-autoconf
Branch point for: matt-armv6
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +2 -2
lines
Fix _atomic_cas_64. Noted by bouyer@.
Revision 1.6: download - view: text, markup, annotated - select for diffs
Sun Dec 9 17:33:56 2007 UTC (17 years, 1 month ago) by ad
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +49 -1
lines
Add missing strong aliases; sure I did this before?
Revision 1.5: download - view: text, markup, annotated - select for diffs
Thu Nov 29 21:59:47 2007 UTC (17 years, 2 months ago) by ad
Branches: MAIN
CVS tags: yamt-kmem-base,
reinoud-bufcleanup-nbase,
reinoud-bufcleanup-base
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +5 -3
lines
Fix ia32 -> amd64 thinko.
Revision 1.4: download - view: text, markup, annotated - select for diffs
Thu Nov 29 17:29:41 2007 UTC (17 years, 2 months ago) by ad
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +5 -5
lines
atomic_add_* takes signed integers, the others take unsigned.
Revision 1.3: download - view: text, markup, annotated - select for diffs
Wed Nov 28 18:02:29 2007 UTC (17 years, 2 months ago) by ad
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +3 -5
lines
A lock prefix on xchg is meaningless.
Revision 1.2: download - view: text, markup, annotated - select for diffs
Wed Nov 28 15:24:38 2007 UTC (17 years, 2 months ago) by ad
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +16 -21
lines
Fix up a few minor problems.
Revision 1.1: download - view: text, markup, annotated - select for diffs
Wed Nov 28 01:33:49 2007 UTC (17 years, 2 months ago) by ad
Branches: MAIN
x86 atomic ops.
CVSweb <webmaster@jp.NetBSD.org>