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


Default branch: MAIN


Revision 1.33 / (download) - annotate - [select for diffs], Sun Feb 13 13:42:30 2022 UTC (2 years, 2 months ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, 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, HEAD
Changes since 1.32: +6 -4 lines
Diff to previous 1.32 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Sat Feb 12 17:17:53 2022 UTC (2 years, 2 months ago) by riastradh
Branch: MAIN
Changes since 1.31: +2 -7 lines
Diff to previous 1.31 (colored) to selected 1.24.18.1 (colored)

__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) - annotate - [select for diffs], Sat Apr 3 22:28:13 2021 UTC (3 years ago) by thorpej
Branch: thorpej-futex
Changes since 1.30: +16 -15 lines
Diff to previous 1.30 (colored) next main 1.31 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD.

Revision 1.30.10.1 / (download) - annotate - [select for diffs], Sat Apr 3 21:44:40 2021 UTC (3 years ago) by thorpej
Branch: thorpej-cfargs
Changes since 1.30: +16 -15 lines
Diff to previous 1.30 (colored) next main 1.31 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD.

Revision 1.31 / (download) - annotate - [select for diffs], Sat Apr 3 14:56:13 2021 UTC (3 years ago) by thorpej
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-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
Changes since 1.30: +16 -15 lines
Diff to previous 1.30 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Wed Apr 8 14:07:25 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.29: +1 -20 lines
Diff to previous 1.29 (colored) next main 1.30 (colored) to selected 1.24.18.1 (colored)

Merge changes from current as of 20200406

Revision 1.30 / (download) - annotate - [select for diffs], Fri Nov 29 20:05:07 2019 UTC (4 years, 4 months ago) by riastradh
Branch: 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
Changes since 1.29: +1 -20 lines
Diff to previous 1.29 (colored) to selected 1.24.18.1 (colored)

Nix mb_* on alpha.

Revision 1.28.22.1 / (download) - annotate - [select for diffs], Sun Dec 3 11:35:46 2017 UTC (6 years, 4 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.28: +3 -3 lines
Diff to previous 1.28 (colored) next main 1.29 (colored) to selected 1.24.18.1 (colored)

update from HEAD

Revision 1.29 / (download) - annotate - [select for diffs], Sun Sep 17 00:01:07 2017 UTC (6 years, 7 months ago) by christos
Branch: 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-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
Changes since 1.28: +3 -3 lines
Diff to previous 1.28 (colored) to selected 1.24.18.1 (colored)

more const.

Revision 1.26.20.2 / (download) - annotate - [select for diffs], Thu Mar 11 15:01:57 2010 UTC (14 years, 1 month ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.26.20.1: +2 -2 lines
Diff to previous 1.26.20.1 (colored) to branchpoint 1.26 (colored) next main 1.27 (colored) to selected 1.24.18.1 (colored)

sync with head

Revision 1.28 / (download) - annotate - [select for diffs], Wed Nov 25 14:28:50 2009 UTC (14 years, 4 months ago) by rmind
Branch: 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-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
Changes since 1.27: +2 -2 lines
Diff to previous 1.27 (colored) to selected 1.24.18.1 (colored)

Remove IPL_LPT and IPL_IPI aliases, use the actual IPLs.
Fix some broken comments.

Revision 1.26.16.1 / (download) - annotate - [select for diffs], Mon Jun 2 13:21:46 2008 UTC (15 years, 10 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.26: +1 -8 lines
Diff to previous 1.26 (colored) next main 1.27 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD.

Revision 1.26.18.1 / (download) - annotate - [select for diffs], Sun May 18 12:31:23 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-pf42
Changes since 1.26: +1 -8 lines
Diff to previous 1.26 (colored) next main 1.27 (colored) to selected 1.24.18.1 (colored)

sync with head.

Revision 1.26.20.1 / (download) - annotate - [select for diffs], Fri May 16 02:21:45 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.26: +1 -8 lines
Diff to previous 1.26 (colored) to selected 1.24.18.1 (colored)

sync with head.

Revision 1.27 / (download) - annotate - [select for diffs], Mon Apr 28 20:23:11 2008 UTC (15 years, 11 months ago) by martin
Branch: 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
Changes since 1.26: +1 -8 lines
Diff to previous 1.26 (colored) to selected 1.24.18.1 (colored)

Remove clause 3 and 4 from TNF licenses

Revision 1.24.24.1 / (download) - annotate - [select for diffs], Tue Nov 6 23:13:54 2007 UTC (16 years, 5 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.24: +25 -1 lines
Diff to previous 1.24 (colored) next main 1.25 (colored) to selected 1.24.18.1 (colored)

sync with HEAD

Revision 1.19.16.3 / (download) - annotate - [select for diffs], Sat Oct 27 11:24:59 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.19.16.2: +25 -1 lines
Diff to previous 1.19.16.2 (colored) to branchpoint 1.19 (colored) next main 1.20 (colored) to selected 1.24.18.1 (colored)

sync with head.

Revision 1.26 / (download) - annotate - [select for diffs], Wed Oct 17 19:52:58 2007 UTC (16 years, 6 months ago) by garbled
Branch: 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
Changes since 1.25: +1 -1 lines
Diff to previous 1.25 (colored) to selected 1.24.18.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.24.6.1 / (download) - annotate - [select for diffs], Tue Oct 9 13:37:14 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.24: +25 -1 lines
Diff to previous 1.24 (colored) next main 1.25 (colored) to selected 1.24.18.1 (colored)

Sync with head.

Revision 1.24.14.1 / (download) - annotate - [select for diffs], Wed Oct 3 19:22:02 2007 UTC (16 years, 6 months ago) by garbled
Branch: ppcoea-renovation
Changes since 1.24: +25 -1 lines
Diff to previous 1.24 (colored) next main 1.25 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD

Revision 1.24.22.1 / (download) - annotate - [select for diffs], Tue Oct 2 16:48:36 2007 UTC (16 years, 6 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.24: +25 -1 lines
Diff to previous 1.24 (colored) next main 1.25 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD.

Revision 1.25 / (download) - annotate - [select for diffs], Mon Sep 10 11:34:07 2007 UTC (16 years, 7 months ago) by skrll
Branch: MAIN
CVS Tags: yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, vmlocking-base, ppcoea-renovation-base, bouyer-xenamd64
Changes since 1.24: +25 -1 lines
Diff to previous 1.24 (colored) to selected 1.24.18.1 (colored)

Merge nick-csl-alignment.

Revision 1.24.18.1 / (download) - annotate - [selected], Wed Aug 15 08:24:05 2007 UTC (16 years, 8 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.24: +25 -1 lines
Diff to previous 1.24 (colored) next main 1.25 (colored)

Provide __SIMPLELOCK_{UN,}LOCKED_P and __cpu_simple_lock_{set,clear}
for all architectures.

Revision 1.19.16.2 / (download) - annotate - [select for diffs], Mon Feb 26 09:05:37 2007 UTC (17 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.19.16.1: +21 -1 lines
Diff to previous 1.19.16.1 (colored) to branchpoint 1.19 (colored) to selected 1.24.18.1 (colored)

sync with head.

Revision 1.24 / (download) - annotate - [select for diffs], Sun Feb 11 15:41:31 2007 UTC (17 years, 2 months ago) by ad
Branch: 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
Changes since 1.23: +4 -4 lines
Diff to previous 1.23 (colored) to selected 1.24.18.1 (colored)

inline -> __inline

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

Merge newlock2 to head.

Revision 1.22.20.1 / (download) - annotate - [select for diffs], Thu Jan 11 22:22:56 2007 UTC (17 years, 3 months ago) by ad
Branch: newlock2
Changes since 1.22: +21 -1 lines
Diff to previous 1.22 (colored) next main 1.23 (colored) to selected 1.24.18.1 (colored)

Checkpoint work in progress.

Revision 1.19.16.1 / (download) - annotate - [select for diffs], Wed Jun 21 14:48:15 2006 UTC (17 years, 9 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.19: +5 -5 lines
Diff to previous 1.19 (colored) to selected 1.24.18.1 (colored)

sync with head.

Revision 1.22 / (download) - annotate - [select for diffs], Wed Dec 28 19:09:29 2005 UTC (18 years, 3 months ago) by perry
Branch: 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
Changes since 1.21: +5 -5 lines
Diff to previous 1.21 (colored) to selected 1.24.18.1 (colored)

inline -> __inline

Revision 1.21 / (download) - annotate - [select for diffs], Sat Dec 24 20:06:46 2005 UTC (18 years, 3 months ago) by perry
Branch: MAIN
Changes since 1.20: +9 -9 lines
Diff to previous 1.20 (colored) to selected 1.24.18.1 (colored)

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

Revision 1.20 / (download) - annotate - [select for diffs], Sun Dec 11 12:16:16 2005 UTC (18 years, 4 months ago) by christos
Branch: MAIN
Changes since 1.19: +1 -1 lines
Diff to previous 1.19 (colored) to selected 1.24.18.1 (colored)

merge ktrace-lwp.

Revision 1.18.2.3 / (download) - annotate - [select for diffs], Tue Sep 21 13:11:48 2004 UTC (19 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.18.2.2: +1 -1 lines
Diff to previous 1.18.2.2 (colored) next main 1.19 (colored) to selected 1.24.18.1 (colored)

Fix the sync with head I botched.

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

Sync with HEAD.

Revision 1.18.2.1 / (download) - annotate - [select for diffs], Tue Aug 3 10:31:19 2004 UTC (19 years, 8 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.18: +1 -6 lines
Diff to previous 1.18 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD

Revision 1.19 / (download) - annotate - [select for diffs], Fri Sep 26 22:46:00 2003 UTC (20 years, 6 months ago) by nathanw
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, 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
Changes since 1.18: +1 -6 lines
Diff to previous 1.18 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Sat Jun 28 08:42:41 2003 UTC (20 years, 9 months ago) by he
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.17: +3 -1 lines
Diff to previous 1.17 (colored) to selected 1.24.18.1 (colored)

#ifdef _KERNEL_OPT police.

Revision 1.17 / (download) - annotate - [select for diffs], Mon Jun 23 11:01:01 2003 UTC (20 years, 9 months ago) by martin
Branch: MAIN
Changes since 1.16: +3 -1 lines
Diff to previous 1.16 (colored) to selected 1.24.18.1 (colored)

Make sure to include opt_foo.h if a defflag option FOO is used.

Revision 1.15.2.1 / (download) - annotate - [select for diffs], Thu Jan 10 19:37:06 2002 UTC (22 years, 3 months ago) by thorpej
Branch: kqueue
Changes since 1.15: +7 -5 lines
Diff to previous 1.15 (colored) next main 1.16 (colored) to selected 1.24.18.1 (colored)

Sync kqueue branch with -current.

Revision 1.15.4.2 / (download) - annotate - [select for diffs], Tue Jan 8 00:22:54 2002 UTC (22 years, 3 months ago) by nathanw
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.15.4.1: +160 -0 lines
Diff to previous 1.15.4.1 (colored) to branchpoint 1.15 (colored) next main 1.16 (colored) to selected 1.24.18.1 (colored)

Catch up to -current.

Revision 1.16 / (download) - annotate - [select for diffs], Mon Dec 17 23:34:57 2001 UTC (22 years, 4 months ago) by thorpej
Branch: 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
Changes since 1.15: +7 -5 lines
Diff to previous 1.15 (colored) to selected 1.24.18.1 (colored)

Fix constraints in __asm statements (err, again).  Kernels compiled
with GCC 2.95.3 work now.

Revision 1.13.2.1 / (download) - annotate - [select for diffs], Thu Jun 21 18:13:01 2001 UTC (22 years, 10 months ago) by nathanw
Changes since 1.13: +8 -5 lines
Diff to previous 1.13 (colored) next main 1.14 (colored) to selected 1.24.18.1 (colored)

Catch up to -current.

Revision 1.3.2.5 / (download) - annotate - [select for diffs], Mon Apr 23 09:41:31 2001 UTC (22 years, 11 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.3.2.4: +6 -3 lines
Diff to previous 1.3.2.4 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD.

Revision 1.3.2.4 / (download) - annotate - [select for diffs], Sat Apr 21 17:53:05 2001 UTC (23 years ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.3.2.3: +3 -3 lines
Diff to previous 1.3.2.3 (colored) to branchpoint 1.3 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD

Revision 1.15.4.1, Fri Apr 20 22:58:40 2001 UTC (23 years ago) by nathanw
Branch: nathanw_sa
Changes since 1.15: +0 -158 lines
FILE REMOVED

file lock.h was added on branch nathanw_sa on 2002-01-08 00:22:54 +0000

Revision 1.15 / (download) - annotate - [select for diffs], Fri Apr 20 22:58:40 2001 UTC (23 years ago) by thorpej
Branch: 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
Changes since 1.14: +6 -3 lines
Diff to previous 1.14 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Mon Apr 16 17:05:22 2001 UTC (23 years ago) by thorpej
Branch: MAIN
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored) to selected 1.24.18.1 (colored)

Oops, properly mark a memory operand as both an input and an
output as necessary.

Revision 1.3.2.3 / (download) - annotate - [select for diffs], Fri Dec 8 09:23:37 2000 UTC (23 years, 4 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.3.2.2: +5 -2 lines
Diff to previous 1.3.2.2 (colored) to branchpoint 1.3 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD.

Revision 1.3.2.2 / (download) - annotate - [select for diffs], Wed Nov 22 15:59:46 2000 UTC (23 years, 4 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.3.2.1: +20 -1 lines
Diff to previous 1.3.2.1 (colored) to branchpoint 1.3 (colored) to selected 1.24.18.1 (colored)

Sync with HEAD.

Revision 1.13 / (download) - annotate - [select for diffs], Wed Nov 22 07:44:01 2000 UTC (23 years, 4 months ago) by thorpej
Branch: MAIN
Changes since 1.12: +6 -3 lines
Diff to previous 1.12 (colored) to selected 1.24.18.1 (colored)

Add a debugging printf, commented out by default.

Revision 1.12 / (download) - annotate - [select for diffs], Mon Nov 20 21:18:07 2000 UTC (23 years, 5 months ago) by thorpej
Branch: MAIN
Changes since 1.11: +3 -1 lines
Diff to previous 1.11 (colored) to selected 1.24.18.1 (colored)

Ooops, do the last only if MULTIPROCESSOR.

Revision 1.11 / (download) - annotate - [select for diffs], Mon Nov 20 20:17:13 2000 UTC (23 years, 5 months ago) by thorpej
Branch: MAIN
Changes since 1.10: +18 -1 lines
Diff to previous 1.10 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Mon Nov 20 19:56:52 2000 UTC (23 years, 5 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.3: +92 -8 lines
Diff to previous 1.3 (colored) to selected 1.24.18.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.10 / (download) - annotate - [select for diffs], Mon Aug 14 20:28:28 2000 UTC (23 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.9: +1 -2 lines
Diff to previous 1.9 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Mon Aug 14 17:18:50 2000 UTC (23 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.8: +4 -3 lines
Diff to previous 1.8 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Thu Jun 22 16:58:31 2000 UTC (23 years, 9 months ago) by minoura
Branch: minoura-xpg4dl
Changes since 1.6: +2 -11 lines
Diff to previous 1.6 (colored) next main 1.7 (colored) to selected 1.24.18.1 (colored)

Sync w/ netbsd-1-5-base.

Revision 1.8 / (download) - annotate - [select for diffs], Thu Jun 8 03:10:06 2000 UTC (23 years, 10 months ago) by thorpej
Branch: 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
Changes since 1.7: +1 -10 lines
Diff to previous 1.7 (colored) to selected 1.24.18.1 (colored)

And more ANSI'ification!

Revision 1.7 / (download) - annotate - [select for diffs], Wed Jun 7 01:49:13 2000 UTC (23 years, 10 months ago) by simonb
Branch: MAIN
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Tue May 2 04:41:06 2000 UTC (23 years, 11 months ago) by thorpej
Branch: MAIN
CVS Tags: minoura-xpg4dl-base
Branch point for: minoura-xpg4dl
Changes since 1.5: +11 -9 lines
Diff to previous 1.5 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Sat Apr 29 03:31:46 2000 UTC (23 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.4: +26 -30 lines
Diff to previous 1.4 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Mon Dec 27 18:31:26 1999 UTC (24 years, 3 months ago) by wrstuden
Branch: wrstuden-devbsize
Changes since 1.3: +102 -7 lines
Diff to previous 1.3 (colored) next main 1.4 (colored) to selected 1.24.18.1 (colored)

Pull up to last week's -current.

Revision 1.4 / (download) - annotate - [select for diffs], Fri Dec 3 01:11:34 1999 UTC (24 years, 4 months ago) by thorpej
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, chs-ubc2-newbase
Changes since 1.3: +102 -7 lines
Diff to previous 1.3 (colored) to selected 1.24.18.1 (colored)

Rewrite the atomic locking primitives using in-line assembly.

Revision 1.2.8.1 / (download) - annotate - [select for diffs], Mon Aug 2 19:35:06 1999 UTC (24 years, 8 months ago) by thorpej
Branch: chs-ubc2
Changes since 1.2: +6 -11 lines
Diff to previous 1.2 (colored) next main 1.3 (colored) to selected 1.24.18.1 (colored)

Update from trunk.

Revision 1.3 / (download) - annotate - [select for diffs], Tue Jul 27 21:45:39 1999 UTC (24 years, 8 months ago) by thorpej
Branch: 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
Changes since 1.2: +6 -11 lines
Diff to previous 1.2 (colored) to selected 1.24.18.1 (colored)

Prepend `cpu_' to the machine-dependent atomic locking primitivies.

Revision 1.2 / (download) - annotate - [select for diffs], Wed Nov 4 06:19:55 1998 UTC (25 years, 5 months ago) by chs
Branch: 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
Changes since 1.1: +6 -1 lines
Diff to previous 1.1 (colored) to selected 1.24.18.1 (colored)

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) - annotate - [select for diffs], Thu Sep 24 22:32:35 1998 UTC (25 years, 6 months ago) by thorpej
Branch: MAIN
Diff to selected 1.24.18.1 (colored)

Machine-dependent spin lock operations for Alpha, included if MULTIPROCESSOR
is specified.

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>