The NetBSD Project

CVS log for src/sys/arch/alpha/include/lock.h

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

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.33: download - view: text, markup, annotated - select for diffs
Sun Feb 13 13:42:30 2022 UTC (3 years, 1 month 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-1-RELEASE, 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, HEAD
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +6 -4 lines
alpha: __cpu_simple_lock audit.

Add missing "cc" and "memory" asm clobbers to the compiler can't
reorder memory access around these.  The necessary memory barrier
instructions, mb, already appear in all the right places.

Revision 1.32: download - view: text, markup, annotated - select for diffs
Sat Feb 12 17:17:53 2022 UTC (3 years, 1 month ago) by riastradh
Branches: MAIN
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +2 -7 lines
__cpu_simple_lock(9): Omit needless barriers in init.

It is, and always has been, the caller's responsibility to ensure the
lock is initialized before it can be used -- otherwise the memory
could hold garbage; it is nonsensical to even attempt locking
operations on it before initialization.

So there's no need to issue explicit barriers here.  The barrier
seems to have been introduced in sys/arch/alpha/alpha/lock_machdep.c
rev. 1.1 (since moved to inline asm in alpha/include/lock.h) and then
copied & pasted into several other architectures.

Revision 1.30.8.1: download - view: text, markup, annotated - select for diffs
Sat Apr 3 22:28:13 2021 UTC (3 years, 11 months ago) by thorpej
Branches: thorpej-futex
Diff to: previous 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30: +16 -15 lines
Sync with HEAD.

Revision 1.30.10.1: download - view: text, markup, annotated - select for diffs
Sat Apr 3 21:44:40 2021 UTC (3 years, 11 months ago) by thorpej
Branches: thorpej-cfargs
Diff to: previous 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30: +16 -15 lines
Sync with HEAD.

Revision 1.31: download - view: text, markup, annotated - select for diffs
Sat Apr 3 14:56:13 2021 UTC (3 years, 11 months ago) by thorpej
Branches: 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-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +16 -15 lines
Fix an IPI deadlock scenario that resulted in a TLB shootdown timeout
panic reported by John Klos on port-alpha:

- pmap_tlb_shootnow(): If we acquire a pmap's activation lock, we will
  have raised the IPL on the current CPU to IPL_SCHED until we drop
  the tlb_lock (due to how nested spin mutexes work).  As such, when
  we release the activation lock, forcibly lower our IPL back to IPL_VM
  so that we can receive and process IPIs while waiting for other CPUs
  to process the shootdowns.
- mutex_vector_enter(): Invoke SPINLOCK_SPIN_HOOK while spinning to acquire
  a spin mutex.  This is a nop on most platforms, but it's important on
  the Alpha.  Without this, IPIs (and thus TLB shootdowns) cannot be
  processed if trying to acquire an IPL_SCHED spin mutex such as those
  used by the scheduler.

...and while we're poking around in here:

- Rework the Alpha SPINLOCK_SPIN_HOOK to only check curcpu()->ci_ipis
  if the current CPU's IPL is >= IPL_CLOCK (thus ensuring that preemption
  is disabled and thus guaranteeing that curcpu() is stable).  (Alpha does
  not yet support kernel preemption, but this is now one less thing that
  would need to be fixed.)

Revision 1.29.4.1: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:07:25 2020 UTC (4 years, 11 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.29: preferred, colored; next MAIN 1.30: preferred, colored
Changes since revision 1.29: +1 -20 lines
Merge changes from current as of 20200406

Revision 1.30: download - view: text, markup, annotated - select for diffs
Fri Nov 29 20:05:07 2019 UTC (5 years, 3 months ago) by riastradh
Branches: MAIN
CVS tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, 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
Branch point for: thorpej-futex, thorpej-cfargs
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +1 -20 lines
Nix mb_* on alpha.

Revision 1.28.22.1: download - view: text, markup, annotated - select for diffs
Sun Dec 3 11:35:46 2017 UTC (7 years, 3 months ago) by jdolecek
Branches: tls-maxphys
Diff to: previous 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28: +3 -3 lines
update from HEAD

Revision 1.29: download - view: text, markup, annotated - select for diffs
Sun Sep 17 00:01:07 2017 UTC (7 years, 6 months ago) by christos
Branches: MAIN
CVS tags: tls-maxphys-base-20171202, phil-wifi-base, phil-wifi-20191119, phil-wifi-20190609, 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, 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, isaki-audio2-base, isaki-audio2
Branch point for: phil-wifi
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +3 -3 lines
more const.

Revision 1.26.20.2: download - view: text, markup, annotated - select for diffs
Thu Mar 11 15:01:57 2010 UTC (15 years ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.26.20.1: preferred, colored; branchpoint 1.26: preferred, colored; next MAIN 1.27: preferred, colored
Changes since revision 1.26.20.1: +2 -2 lines
sync with head

Revision 1.28: download - view: text, markup, annotated - select for diffs
Wed Nov 25 14:28:50 2009 UTC (15 years, 4 months ago) by rmind
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, yamt-nfs-mp-base9, 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, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, 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-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, 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-premerge-20091211, matt-nb8-mediatek-base, matt-nb8-mediatek, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, matt-mips64-premerge-20101231, localcount-20160914, khorben-n900, jym-xensuspend-nbase, jym-xensuspend-base, jruoho-x86intr-base, jruoho-x86intr, jmcneill-usbmp-pre-base2, 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, jmcneill-usbmp-base, jmcneill-usbmp, jmcneill-audiomp3-base, jmcneill-audiomp3, jdolecek-ncq-base, jdolecek-ncq, cherry-xenmp-base, cherry-xenmp, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2, agc-symver-base, agc-symver
Branch point for: tls-maxphys
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +2 -2 lines
Remove IPL_LPT and IPL_IPI aliases, use the actual IPLs.
Fix some broken comments.

Revision 1.26.16.1: download - view: text, markup, annotated - select for diffs
Mon Jun 2 13:21:46 2008 UTC (16 years, 9 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.26: preferred, colored; next MAIN 1.27: preferred, colored
Changes since revision 1.26: +1 -8 lines
Sync with HEAD.

Revision 1.26.18.1: download - view: text, markup, annotated - select for diffs
Sun May 18 12:31:23 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.26: preferred, colored; next MAIN 1.27: preferred, colored
Changes since revision 1.26: +1 -8 lines
sync with head.

Revision 1.26.20.1: download - view: text, markup, annotated - select for diffs
Fri May 16 02:21:45 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +1 -8 lines
sync with head.

Revision 1.27: download - view: text, markup, annotated - select for diffs
Mon Apr 28 20:23:11 2008 UTC (16 years, 11 months ago) by martin
Branches: MAIN
CVS tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, 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-base2, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, nick-hppapmap, 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, mjf-devfs2-base, 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, jymxensuspend-base, jym-xensuspend, hpcarm-cleanup-nbase, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +1 -8 lines
Remove clause 3 and 4 from TNF licenses

Revision 1.24.24.1: download - view: text, markup, annotated - select for diffs
Tue Nov 6 23:13:54 2007 UTC (17 years, 4 months ago) by matt
Branches: matt-armv6
CVS tags: matt-armv6-prevmlocking
Diff to: previous 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24: +25 -1 lines
sync with HEAD

Revision 1.19.16.3: download - view: text, markup, annotated - select for diffs
Sat Oct 27 11:24:59 2007 UTC (17 years, 5 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.19.16.2: preferred, colored; branchpoint 1.19: preferred, colored; next MAIN 1.20: preferred, colored
Changes since revision 1.19.16.2: +25 -1 lines
sync with head.

Revision 1.26: download - view: text, markup, annotated - select for diffs
Wed Oct 17 19:52:58 2007 UTC (17 years, 5 months ago) by garbled
Branches: MAIN
CVS tags: yamt-x86pmap-base4, yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking2, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, mjf-devfs, matt-armv6-nbase, matt-armv6-base, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, jmcneill-pm-base, jmcneill-base, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386, bouyer-xenamd64-base2, bouyer-xenamd64-base, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp, mjf-devfs2
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +1 -1 lines
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.24.6.1: download - view: text, markup, annotated - select for diffs
Tue Oct 9 13:37:14 2007 UTC (17 years, 5 months ago) by ad
Branches: vmlocking
Diff to: previous 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24: +25 -1 lines
Sync with head.

Revision 1.24.14.1: download - view: text, markup, annotated - select for diffs
Wed Oct 3 19:22:02 2007 UTC (17 years, 5 months ago) by garbled
Branches: ppcoea-renovation
Diff to: previous 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24: +25 -1 lines
Sync with HEAD

Revision 1.24.22.1: download - view: text, markup, annotated - select for diffs
Tue Oct 2 16:48:36 2007 UTC (17 years, 5 months ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24: +25 -1 lines
Sync with HEAD.

Revision 1.25: download - view: text, markup, annotated - select for diffs
Mon Sep 10 11:34:07 2007 UTC (17 years, 6 months ago) by skrll
Branches: MAIN
CVS tags: yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, vmlocking-base, ppcoea-renovation-base, bouyer-xenamd64
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +25 -1 lines
Merge nick-csl-alignment.

Revision 1.24.18.1: download - view: text, markup, annotated - select for diffs
Wed Aug 15 08:24:05 2007 UTC (17 years, 7 months ago) by skrll
Branches: nick-csl-alignment
Diff to: previous 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24: +25 -1 lines
Provide __SIMPLELOCK_{UN,}LOCKED_P and __cpu_simple_lock_{set,clear}
for all architectures.

Revision 1.19.16.2: download - view: text, markup, annotated - select for diffs
Mon Feb 26 09:05:37 2007 UTC (18 years, 1 month ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.19.16.1: preferred, colored; branchpoint 1.19: preferred, colored
Changes since revision 1.19.16.1: +21 -1 lines
sync with head.

Revision 1.24: download - view: text, markup, annotated - select for diffs
Sun Feb 11 15:41:31 2007 UTC (18 years, 1 month ago) by ad
Branches: MAIN
CVS tags: yamt-idlelwp-base8, yamt-idlelwp, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup, nick-csl-alignment-base5, nick-csl-alignment-base, mjf-ufs-trans-base, mjf-ufs-trans, matt-mips64-base, matt-mips64, hpcarm-cleanup, ad-audiomp-base, ad-audiomp
Branch point for: vmlocking, ppcoea-renovation, nick-csl-alignment, matt-armv6, jmcneill-pm
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +4 -4 lines
inline -> __inline

Revision 1.23: download - view: text, markup, annotated - select for diffs
Fri Feb 9 21:55:01 2007 UTC (18 years, 1 month ago) by ad
Branches: MAIN
CVS tags: post-newlock2-merge
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +21 -1 lines
Merge newlock2 to head.

Revision 1.22.20.1: download - view: text, markup, annotated - select for diffs
Thu Jan 11 22:22:56 2007 UTC (18 years, 2 months ago) by ad
Branches: newlock2
Diff to: previous 1.22: preferred, colored; next MAIN 1.23: preferred, colored
Changes since revision 1.22: +21 -1 lines
Checkpoint work in progress.

Revision 1.19.16.1: download - view: text, markup, annotated - select for diffs
Wed Jun 21 14:48:15 2006 UTC (18 years, 9 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +5 -5 lines
sync with head.

Revision 1.22: download - view: text, markup, annotated - select for diffs
Wed Dec 28 19:09:29 2005 UTC (19 years, 3 months ago) by perry
Branches: MAIN
CVS tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-splraiseipl-base2, yamt-splraiseipl-base, yamt-splraiseipl, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, yamt-pdpolicy, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, simonb-timecounters-base, simonb-timecounters, simonb-timcounters-final, rpaulo-netinet-merge-pcb-base, rpaulo-netinet-merge-pcb, peter-altq-base, peter-altq, newlock2-nbase, newlock2-base, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-nb4-arm-base, matt-nb4-arm, gdamore-uart-base, gdamore-uart, elad-kernelauth-base, elad-kernelauth, chap-midi-nbase, chap-midi-base, chap-midi, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: newlock2
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +5 -5 lines
inline -> __inline

Revision 1.21: download - view: text, markup, annotated - select for diffs
Sat Dec 24 20:06:46 2005 UTC (19 years, 3 months ago) by perry
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +9 -9 lines
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Sun Dec 11 12:16:16 2005 UTC (19 years, 3 months ago) by christos
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +1 -1 lines
merge ktrace-lwp.

Revision 1.18.2.3: download - view: text, markup, annotated - select for diffs
Tue Sep 21 13:11:48 2004 UTC (20 years, 6 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.18.2.2: preferred, colored; next MAIN 1.19: preferred, colored
Changes since revision 1.18.2.2: +1 -1 lines
Fix the sync with head I botched.

Revision 1.18.2.2: download - view: text, markup, annotated - select for diffs
Sat Sep 18 14:31:03 2004 UTC (20 years, 6 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.18.2.1: preferred, colored
Changes since revision 1.18.2.1: +0 -0 lines
Sync with HEAD.

Revision 1.18.2.1: download - view: text, markup, annotated - select for diffs
Tue Aug 3 10:31:19 2004 UTC (20 years, 7 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +1 -6 lines
Sync with HEAD

Revision 1.19: download - view: text, markup, annotated - select for diffs
Fri Sep 26 22:46:00 2003 UTC (21 years, 6 months ago) by nathanw
Branches: 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, yamt-km-base4, yamt-km-base3, yamt-km-base2, yamt-km-base, yamt-km, thorpej-vnode-attr-base, thorpej-vnode-attr, 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, 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, ktrace-lwp-base, kent-audio2-base, kent-audio2, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: yamt-lazymbuf
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +1 -6 lines
Move __cpu_simple_lock_t and __SIMPLELOCK_{UN,}LOCKED to machine/types.h
so that they can be used in a namespace-friendly way.

Revision 1.18: download - view: text, markup, annotated - select for diffs
Sat Jun 28 08:42:41 2003 UTC (21 years, 9 months ago) by he
Branches: MAIN
Branch point for: ktrace-lwp
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +3 -1 lines
#ifdef _KERNEL_OPT police.

Revision 1.17: download - view: text, markup, annotated - select for diffs
Mon Jun 23 11:01:01 2003 UTC (21 years, 9 months ago) by martin
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +3 -1 lines
Make sure to include opt_foo.h if a defflag option FOO is used.

Revision 1.15.2.1: download - view: text, markup, annotated - select for diffs
Thu Jan 10 19:37:06 2002 UTC (23 years, 2 months ago) by thorpej
Branches: kqueue
Diff to: previous 1.15: preferred, colored; next MAIN 1.16: preferred, colored
Changes since revision 1.15: +7 -5 lines
Sync kqueue branch with -current.

Revision 1.15.4.2: download - view: text, markup, annotated - select for diffs
Tue Jan 8 00:22:54 2002 UTC (23 years, 2 months ago) by nathanw
Branches: nathanw_sa
CVS tags: nathanw_sa_end
Diff to: previous 1.15.4.1: preferred, colored; branchpoint 1.15: preferred, colored; next MAIN 1.16: preferred, colored
Changes since revision 1.15.4.1: +160 -0 lines
Catch up to -current.

Revision 1.16: download - view: text, markup, annotated - select for diffs
Mon Dec 17 23:34:57 2001 UTC (23 years, 3 months ago) by thorpej
Branches: MAIN
CVS tags: newlock-base, newlock, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, 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, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6, nathanw_sa_before_merge, nathanw_sa_base, kqueue-beforemerge, kqueue-base, kqueue-aftermerge, ifpoll-base, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, gehenna-devsw-base, gehenna-devsw, fvdl_fs64_base, eeh-devprop-base, eeh-devprop
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +7 -5 lines
Fix constraints in __asm statements (err, again).  Kernels compiled
with GCC 2.95.3 work now.

Revision 1.13.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 21 18:13:01 2001 UTC (23 years, 9 months ago) by nathanw
Diff to: previous 1.13: preferred, colored; next MAIN 1.14: preferred, colored
Changes since revision 1.13: +8 -5 lines
Catch up to -current.

Revision 1.3.2.5: download - view: text, markup, annotated - select for diffs
Mon Apr 23 09:41:31 2001 UTC (23 years, 11 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.3.2.4: preferred, colored; branchpoint 1.3: preferred, colored; next MAIN 1.4: preferred, colored
Changes since revision 1.3.2.4: +6 -3 lines
Sync with HEAD.

Revision 1.3.2.4: download - view: text, markup, annotated - select for diffs
Sat Apr 21 17:53:05 2001 UTC (23 years, 11 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.3.2.3: preferred, colored; branchpoint 1.3: preferred, colored
Changes since revision 1.3.2.3: +3 -3 lines
Sync with HEAD

Revision 1.15.4.1
Fri Apr 20 22:58:40 2001 UTC (23 years, 11 months ago) by nathanw
Branches: nathanw_sa
FILE REMOVED
Changes since revision 1.15: +0 -158 lines
file lock.h was added on branch nathanw_sa on 2002-01-08 00:22:54 +0000

Revision 1.15: download - view: text, markup, annotated - select for diffs
Fri Apr 20 22:58:40 2001 UTC (23 years, 11 months ago) by thorpej
Branches: MAIN
CVS tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base, thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, thorpej-devvp, pre-chs-ubcperf, post-chs-ubcperf
Branch point for: nathanw_sa, kqueue
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +6 -3 lines
SPINLOCK_INTERLOCK_RELEASE_HOOK should actually be
SPINLOCK_SPIN_HOOK, so that we actually check for
pending IPIs on the Alpha more than once.  Also,
when we call alpha_ipi_process(), make sure to go
to splipi().

Revision 1.14: download - view: text, markup, annotated - select for diffs
Mon Apr 16 17:05:22 2001 UTC (23 years, 11 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +3 -3 lines
Oops, properly mark a memory operand as both an input and an
output as necessary.

Revision 1.3.2.3: download - view: text, markup, annotated - select for diffs
Fri Dec 8 09:23:37 2000 UTC (24 years, 3 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.3.2.2: preferred, colored; branchpoint 1.3: preferred, colored
Changes since revision 1.3.2.2: +5 -2 lines
Sync with HEAD.

Revision 1.3.2.2: download - view: text, markup, annotated - select for diffs
Wed Nov 22 15:59:46 2000 UTC (24 years, 4 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.3.2.1: preferred, colored; branchpoint 1.3: preferred, colored
Changes since revision 1.3.2.1: +20 -1 lines
Sync with HEAD.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Wed Nov 22 07:44:01 2000 UTC (24 years, 4 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +6 -3 lines
Add a debugging printf, commented out by default.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Mon Nov 20 21:18:07 2000 UTC (24 years, 4 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +3 -1 lines
Ooops, do the last only if MULTIPROCESSOR.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Mon Nov 20 20:17:13 2000 UTC (24 years, 4 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +18 -1 lines
On the Alpha, interprocessor interrupts come in at the same priority
as normal device interrupts.  Because of this, we won't get IPIs while
servicing such interrupts.  This can lead to the following deadlock
scenario as reported by Bill Sommerfeld:
- Process runs on cpu1, but has FP state on cpu0.
- Process executes FP-using insn, causing an FP trap, which causes
  the kernel lock to be acquired.
- At roughly the same time, cpu0 receives a device interrupt, and attempts
  to acquire the kernel lock, which blocks since cpu1 already has it.
- cpu1 sends cpu0 a SYNCH FPU IPI, and waits for cpu0 to release its
  FP state.
- Since cpu0 cannot notice the IPI until it has processed the device
  interrupt, which it cannot do because it cannot acquire the kernel
  lock, we have deadlock.

Solve the problem by adding a spinlock interlock release hook which
checks for pending IPIs and processes them.

Idea from Bill Sommerfeld.

Revision 1.3.2.1: download - view: text, markup, annotated - select for diffs
Mon Nov 20 19:56:52 2000 UTC (24 years, 4 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +92 -8 lines
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.10: download - view: text, markup, annotated - select for diffs
Mon Aug 14 20:28:28 2000 UTC (24 years, 7 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +1 -2 lines
Remove an unnecessary MB in __cpu_simple_unlock(), per sections
5.3.3 and 5.3.4 of the Green Book, and a discussion w/ cgd@netbsd.org.

Revision 1.9: download - view: text, markup, annotated - select for diffs
Mon Aug 14 17:18:50 2000 UTC (24 years, 7 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +4 -3 lines
Issue a memory barrier before clearing a lock, as per section 5.5.3
of the Green Book and a discussion on tech-smp and port-alpha.

Revision 1.6.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 22 16:58:31 2000 UTC (24 years, 9 months ago) by minoura
Branches: minoura-xpg4dl
Diff to: previous 1.6: preferred, colored; next MAIN 1.7: preferred, colored
Changes since revision 1.6: +2 -11 lines
Sync w/ netbsd-1-5-base.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Thu Jun 8 03:10:06 2000 UTC (24 years, 9 months ago) by thorpej
Branches: MAIN
CVS tags: netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, netbsd-1-5
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +1 -10 lines
And more ANSI'ification!

Revision 1.7: download - view: text, markup, annotated - select for diffs
Wed Jun 7 01:49:13 2000 UTC (24 years, 9 months ago) by simonb
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +2 -2 lines
In __cpu_simple_lock_try(), use "return (v0 != 0);" instead of
"return (v0);" where v0 is an unsigned long and the function return
type is int.  Stops lint warnings when this file is included.

Fix from Jason Thorpe.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Tue May 2 04:41:06 2000 UTC (24 years, 10 months ago) by thorpej
Branches: MAIN
CVS tags: minoura-xpg4dl-base
Branch point for: minoura-xpg4dl
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +11 -9 lines
Let each platform typedef the new __cpu_simple_lock_t, which should
be the most efficient type used for the atomic operations in the
simplelock structure, and should also be __volatile.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Sat Apr 29 03:31:46 2000 UTC (24 years, 11 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +26 -30 lines
Require that each each MACHINE/MACHINE_ARCH supply a lock.h.  This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.

Revision 1.3.8.1: download - view: text, markup, annotated - select for diffs
Mon Dec 27 18:31:26 1999 UTC (25 years, 3 months ago) by wrstuden
Branches: wrstuden-devbsize
Diff to: previous 1.3: preferred, colored; next MAIN 1.4: preferred, colored
Changes since revision 1.3: +102 -7 lines
Pull up to last week's -current.

Revision 1.4: download - view: text, markup, annotated - select for diffs
Fri Dec 3 01:11:34 1999 UTC (25 years, 3 months ago) by thorpej
Branches: MAIN
CVS tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, chs-ubc2-newbase
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +102 -7 lines
Rewrite the atomic locking primitives using in-line assembly.

Revision 1.2.8.1: download - view: text, markup, annotated - select for diffs
Mon Aug 2 19:35:06 1999 UTC (25 years, 7 months ago) by thorpej
Branches: chs-ubc2
Diff to: previous 1.2: preferred, colored; next MAIN 1.3: preferred, colored
Changes since revision 1.2: +6 -11 lines
Update from trunk.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Tue Jul 27 21:45:39 1999 UTC (25 years, 8 months ago) by thorpej
Branches: MAIN
CVS tags: fvdl-softdep-base, fvdl-softdep, comdex-fall-1999-base, comdex-fall-1999, chs-ubc2-base
Branch point for: wrstuden-devbsize, thorpej_scsipi
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +6 -11 lines
Prepend `cpu_' to the machine-dependent atomic locking primitivies.

Revision 1.2: download - view: text, markup, annotated - select for diffs
Wed Nov 4 06:19:55 1998 UTC (26 years, 4 months ago) by chs
Branches: MAIN
CVS tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4, kenh-if-detach-base, kenh-if-detach, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame, chs-ubc-base, chs-ubc
Branch point for: chs-ubc2
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +6 -1 lines
LOCKDEBUG enhancements for non-MP:
keep a list of locked locks.
use this to print where the lock was locked
when we either go to sleep with a lock held
or try to free a locked lock.

Revision 1.1: download - view: text, markup, annotated - select for diffs
Thu Sep 24 22:32:35 1998 UTC (26 years, 6 months ago) by thorpej
Branches: MAIN
Machine-dependent spin lock operations for Alpha, included if MULTIPROCESSOR
is specified.

Diff request

This form allows you to request diffs 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.

Log view options

CVSweb <webmaster@jp.NetBSD.org>