The NetBSD Project

CVS log for src/sys/sys/lock.h

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

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.94: download - view: text, markup, annotated - select for diffs
Sun May 12 10:45:13 2024 UTC (6 months, 3 weeks ago) by rillig
Branches: MAIN
CVS tags: perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs, HEAD
Diff to: previous 1.93: preferred, colored
Changes since revision 1.93: +2 -2 lines
sys/lock.h: remove stray semicolon from SPINLOCK_BACKOFF macro

Revision 1.93: download - view: text, markup, annotated - select for diffs
Sun May 12 10:34:56 2024 UTC (6 months, 3 weeks ago) by rillig
Branches: MAIN
Diff to: previous 1.92: preferred, colored
Changes since revision 1.92: +2 -2 lines
sys/sys: remove CONSTCOND comment from do-while-0 loop

Lint doesn't need this comment anymore, as there is nothing surprising
or unusual about this idiom.

Revision 1.92: download - view: text, markup, annotated - select for diffs
Sun Jul 24 20:28:39 2022 UTC (2 years, 4 months ago) by riastradh
Branches: 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
Diff to: previous 1.91: preferred, colored
Changes since revision 1.91: +2 -1 lines
sys/lock.h: Need <sys/systm.h> for nullop.

But only do that we're not using SPINLOCK_BACKOFF_HOOK from
<machine/lock.h>.

Revision 1.90.2.1: download - view: text, markup, annotated - select for diffs
Sun Jan 3 16:35:05 2021 UTC (3 years, 11 months ago) by thorpej
Branches: thorpej-futex
Diff to: previous 1.90: preferred, colored; next MAIN 1.91: preferred, colored
Changes since revision 1.90: +1 -36 lines
Sync w/ HEAD.

Revision 1.91: download - view: text, markup, annotated - select for diffs
Tue Dec 22 01:58:58 2020 UTC (3 years, 11 months ago) by ad
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, thorpej-cfargs, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Diff to: previous 1.90: preferred, colored
Changes since revision 1.90: +1 -36 lines
Nothing here came from UCB, it's all NetBSD.

Revision 1.90: download - view: text, markup, annotated - select for diffs
Mon Jul 6 22:32:22 2020 UTC (4 years, 5 months ago) by rin
Branches: MAIN
Branch point for: thorpej-futex
Diff to: previous 1.89: preferred, colored
Changes since revision 1.89: +5 -1 lines
Include missing opt_lockdebug.h.

Revision 1.89: download - view: text, markup, annotated - select for diffs
Sun Mar 8 15:05:18 2020 UTC (4 years, 9 months ago) by ad
Branches: MAIN
CVS tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +1 -3 lines
Kill off kernel_lock_plug_leak(), and go back to dropping kernel_lock in
exit1(), since there seems little hope of finding the leaking code any
time soon.  Can still be caught with LOCKDEBUG.

Revision 1.87.6.1: download - view: text, markup, annotated - select for diffs
Sat Feb 29 20:21:10 2020 UTC (4 years, 9 months ago) by ad
Branches: ad-namecache
Diff to: previous 1.87: preferred, colored; next MAIN 1.88: preferred, colored
Changes since revision 1.87: +3 -1 lines
Sync with head.

Revision 1.88: download - view: text, markup, annotated - select for diffs
Mon Jan 27 21:05:43 2020 UTC (4 years, 10 months ago) by ad
Branches: MAIN
CVS tags: is-mlppp-base, is-mlppp, ad-namecache-base3
Diff to: previous 1.87: preferred, colored
Changes since revision 1.87: +3 -1 lines
Add a kernel_lock_plug_leak() that drops any holds and tries to identify
the baddy.

Revision 1.86.60.1: download - view: text, markup, annotated - select for diffs
Mon Jun 10 22:09:57 2019 UTC (5 years, 5 months ago) by christos
Branches: phil-wifi
Diff to: previous 1.86: preferred, colored; next MAIN 1.87: preferred, colored
Changes since revision 1.86: +1 -3 lines
Sync with HEAD

Revision 1.86.58.1: download - view: text, markup, annotated - select for diffs
Sat Jul 28 04:38:12 2018 UTC (6 years, 4 months ago) by pgoyette
Branches: pgoyette-compat
CVS tags: pgoyette-compat-merge-20190127
Diff to: previous 1.86: preferred, colored; next MAIN 1.87: preferred, colored
Changes since revision 1.86: +1 -3 lines
Sync with HEAD

Revision 1.87: download - view: text, markup, annotated - select for diffs
Tue Jul 10 19:55:05 2018 UTC (6 years, 4 months ago) by maya
Branches: MAIN
CVS tags: phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, 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, ad-namecache-base2, ad-namecache-base1, ad-namecache-base
Branch point for: ad-namecache
Diff to: previous 1.86: preferred, colored
Changes since revision 1.86: +1 -3 lines
Remove unused macro.

Revision 1.83.20.1: download - view: text, markup, annotated - select for diffs
Tue Aug 17 06:48:07 2010 UTC (14 years, 3 months ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.83: preferred, colored; next MAIN 1.84: preferred, colored
Changes since revision 1.83: +1 -13 lines
Sync with HEAD.

Revision 1.82.10.2: download - view: text, markup, annotated - select for diffs
Wed Aug 11 22:55:10 2010 UTC (14 years, 3 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.82.10.1: preferred, colored; branchpoint 1.82: preferred, colored; next MAIN 1.83: preferred, colored
Changes since revision 1.82.10.1: +1 -13 lines
sync with head.

Revision 1.83.22.1: download - view: text, markup, annotated - select for diffs
Sat Jul 3 01:20:03 2010 UTC (14 years, 5 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.83: preferred, colored; next MAIN 1.84: preferred, colored
Changes since revision 1.83: +1 -13 lines
sync with head

Revision 1.86: download - view: text, markup, annotated - select for diffs
Thu Jul 1 13:00:57 2010 UTC (14 years, 5 months ago) by hannken
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-base11, yamt-nfs-mp-base10, uebayasi-xip-base7, uebayasi-xip-base6, uebayasi-xip-base5, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, tls-maxphys-base-20171202, tls-maxphys-base, tls-maxphys, tls-earlyentropy-base, tls-earlyentropy, rmind-uvmplock-nbase, rmind-uvmplock-base, 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, 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-base, 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, 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-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, 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: phil-wifi, pgoyette-compat
Diff to: previous 1.85: preferred, colored
Changes since revision 1.85: +1 -11 lines
Remove vlockmgr().  Generic vnode lock operations now use a rwlock located
in the vnode.  All LK_* flags move from sys/lock.h to sys/vnode.h.  Calls
to vlockmgr() in file systems get replaced with VOP_LOCK() or VOP_UNLOCK().

Welcome to 5.99.34.

Discussed on tech-kern.

Revision 1.85: download - view: text, markup, annotated - select for diffs
Thu Jun 24 07:54:47 2010 UTC (14 years, 5 months ago) by hannken
Branches: MAIN
Diff to: previous 1.84: preferred, colored
Changes since revision 1.84: +1 -2 lines
Clean up vnode lock operations:

 - VOP_LOCK(vp, flags): Limit the set of allowed flags to LK_EXCLUSIVE,
   LK_SHARED and LK_NOWAIT.  LK_INTERLOCK is no longer allowed as it
   makes no sense here.

- VOP_ISLOCKED(vp): Remove the for some time unused return value
  LK_EXCLOTHER.  Mark this operation as "diagnostic only".
  Making a lock decision based on this operation is no longer allowed.

Discussed on tech-kern.

Revision 1.84: download - view: text, markup, annotated - select for diffs
Fri Jun 18 16:29:02 2010 UTC (14 years, 5 months ago) by hannken
Branches: MAIN
Diff to: previous 1.83: preferred, colored
Changes since revision 1.83: +1 -2 lines
Remove the concept of recursive vnode locks by eliminating
vn_setrecurse(), vn_restorerecurse() and LK_CANRECURSE.
Welcome to 5.99.31

Discussed on tech-kern.

Revision 1.82.6.1: download - view: text, markup, annotated - select for diffs
Mon Jun 2 13:24:32 2008 UTC (16 years, 6 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.82: preferred, colored; next MAIN 1.83: preferred, colored
Changes since revision 1.82: +1 -8 lines
Sync with HEAD.

Revision 1.82.8.1: download - view: text, markup, annotated - select for diffs
Sun May 18 12:35:49 2008 UTC (16 years, 6 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.82: preferred, colored; next MAIN 1.83: preferred, colored
Changes since revision 1.82: +1 -8 lines
sync with head.

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

Revision 1.83: download - view: text, markup, annotated - select for diffs
Mon Apr 28 20:24:10 2008 UTC (16 years, 7 months ago) by martin
Branches: MAIN
CVS tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-nfs-mp-base9, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base2, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, uebayasi-xip-base1, uebayasi-xip-base, 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-premerge-20091211, 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-nbase, jym-xensuspend-base, jym-xensuspend, hpcarm-cleanup-nbase, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: uebayasi-xip, rmind-uvmplock
Diff to: previous 1.82: preferred, colored
Changes since revision 1.82: +1 -8 lines
Remove clause 3 and 4 from TNF licenses

Revision 1.72.6.3: download - view: text, markup, annotated - select for diffs
Sun Mar 23 02:05:10 2008 UTC (16 years, 8 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.72.6.2: preferred, colored; branchpoint 1.72: preferred, colored; next MAIN 1.73: preferred, colored
Changes since revision 1.72.6.2: +8 -126 lines
sync with HEAD

Revision 1.75.4.2: download - view: text, markup, annotated - select for diffs
Mon Feb 18 21:07:23 2008 UTC (16 years, 9 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.75.4.1: preferred, colored; branchpoint 1.75: preferred, colored; next MAIN 1.76: preferred, colored
Changes since revision 1.75.4.1: +9 -126 lines
Sync with HEAD.

Revision 1.59.2.8: download - view: text, markup, annotated - select for diffs
Mon Feb 4 09:24:58 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.59.2.7: preferred, colored; branchpoint 1.59: preferred, colored; next MAIN 1.60: preferred, colored
Changes since revision 1.59.2.7: +2 -124 lines
sync with head.

Revision 1.82: download - view: text, markup, annotated - select for diffs
Wed Jan 30 14:54:25 2008 UTC (16 years, 10 months ago) by ad
Branches: MAIN
CVS tags: yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp, mjf-devfs2
Diff to: previous 1.81: preferred, colored
Changes since revision 1.81: +2 -124 lines
Goodbye lockmgr().

Revision 1.59.2.7: download - view: text, markup, annotated - select for diffs
Mon Jan 21 09:47:51 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.59.2.6: preferred, colored; branchpoint 1.59: preferred, colored
Changes since revision 1.59.2.6: +19 -14 lines
sync with head

Revision 1.76.4.3: download - view: text, markup, annotated - select for diffs
Thu Jan 10 23:44:41 2008 UTC (16 years, 11 months ago) by bouyer
Branches: bouyer-xeni386
CVS tags: bouyer-xeni386-merge1
Diff to: previous 1.76.4.2: preferred, colored; branchpoint 1.76: preferred, colored; next MAIN 1.77: preferred, colored
Changes since revision 1.76.4.2: +6 -2 lines
Sync with HEAD

Revision 1.81: download - view: text, markup, annotated - select for diffs
Thu Jan 10 20:14:12 2008 UTC (16 years, 11 months ago) by ad
Branches: MAIN
CVS tags: bouyer-xeni386-nbase, bouyer-xeni386-base
Diff to: previous 1.80: preferred, colored
Changes since revision 1.80: +7 -2 lines
- Fix a memory order problem with non-interlocked mutex release.
- Give kernel_lock its own cache line.

Revision 1.80: download - view: text, markup, annotated - select for diffs
Wed Jan 9 22:06:00 2008 UTC (16 years, 11 months ago) by xtraeme
Branches: MAIN
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +1 -2 lines
transferlockers() is gone. ok ad

Revision 1.72.6.2: download - view: text, markup, annotated - select for diffs
Wed Jan 9 01:58:10 2008 UTC (16 years, 11 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.72.6.1: preferred, colored; branchpoint 1.72: preferred, colored
Changes since revision 1.72.6.1: +17 -34 lines
sync with HEAD

Revision 1.76.4.2: download - view: text, markup, annotated - select for diffs
Tue Jan 8 22:11:56 2008 UTC (16 years, 11 months ago) by bouyer
Branches: bouyer-xeni386
Diff to: previous 1.76.4.1: preferred, colored; branchpoint 1.76: preferred, colored
Changes since revision 1.76.4.1: +8 -7 lines
Sync with HEAD

Revision 1.79: download - view: text, markup, annotated - select for diffs
Mon Jan 7 00:20:18 2008 UTC (16 years, 11 months ago) by ad
Branches: MAIN
CVS tags: matt-armv6-base
Diff to: previous 1.78: preferred, colored
Changes since revision 1.78: +3 -1 lines
Overzealous; pull in machine/lock.h again.

Revision 1.78: download - view: text, markup, annotated - select for diffs
Fri Jan 4 21:18:17 2008 UTC (16 years, 11 months ago) by ad
Branches: MAIN
Diff to: previous 1.77: preferred, colored
Changes since revision 1.77: +9 -10 lines
Start detangling lock.h from intr.h. This is likely to cause short term
breakage, but the mess of dependencies has been regularly breaking the
build recently anyhow.

Revision 1.76.4.1: download - view: text, markup, annotated - select for diffs
Wed Jan 2 21:58:02 2008 UTC (16 years, 11 months ago) by bouyer
Branches: bouyer-xeni386
Diff to: previous 1.76: preferred, colored
Changes since revision 1.76: +5 -5 lines
Sync with HEAD

Revision 1.77: download - view: text, markup, annotated - select for diffs
Wed Jan 2 11:49:07 2008 UTC (16 years, 11 months ago) by ad
Branches: MAIN
Diff to: previous 1.76: preferred, colored
Changes since revision 1.76: +5 -5 lines
Merge vmlocking2 to head.

Revision 1.75.6.4: download - view: text, markup, annotated - select for diffs
Thu Dec 27 01:41:29 2007 UTC (16 years, 11 months ago) by ad
Branches: vmlocking2
Diff to: previous 1.75.6.3: preferred, colored; branchpoint 1.75: preferred, colored; next MAIN 1.76: preferred, colored
Changes since revision 1.75.6.3: +3 -2 lines
Allocate but do not use a lockdebug record for 'struct lock' so that it's
easier to find leaks.

Revision 1.75.6.3: download - view: text, markup, annotated - select for diffs
Mon Dec 10 19:28:07 2007 UTC (17 years ago) by ad
Branches: vmlocking2
Diff to: previous 1.75.6.2: preferred, colored; branchpoint 1.75: preferred, colored
Changes since revision 1.75.6.2: +1 -3 lines
- Don't drain the vnode lock in vclean(); reference counting and XLOCK
  should be enough.
- LK_SETRECURSE is gone.

Revision 1.72.4.2: download - view: text, markup, annotated - select for diffs
Sun Dec 9 19:38:48 2007 UTC (17 years ago) by jmcneill
Branches: jmcneill-pm
Diff to: previous 1.72.4.1: preferred, colored; branchpoint 1.72: preferred, colored; next MAIN 1.73: preferred, colored
Changes since revision 1.72.4.1: +5 -23 lines
Sync with HEAD.

Revision 1.70.4.1: download - view: text, markup, annotated - select for diffs
Sun Dec 9 16:04:11 2007 UTC (17 years ago) by reinoud
Branches: reinoud-bufcleanup
Diff to: previous 1.70: preferred, colored; next MAIN 1.71: preferred, colored
Changes since revision 1.70: +5 -24 lines
Pullup to HEAD

Revision 1.75.4.1: download - view: text, markup, annotated - select for diffs
Sat Dec 8 18:21:32 2007 UTC (17 years ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +5 -23 lines
Sync with HEAD.

Revision 1.75.6.2: download - view: text, markup, annotated - select for diffs
Sat Dec 8 17:58:07 2007 UTC (17 years ago) by ad
Branches: vmlocking2
Diff to: previous 1.75.6.1: preferred, colored; branchpoint 1.75: preferred, colored
Changes since revision 1.75.6.1: +5 -23 lines
Sync with head.

Revision 1.59.2.6: download - view: text, markup, annotated - select for diffs
Fri Dec 7 17:34:54 2007 UTC (17 years ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.59.2.5: preferred, colored; branchpoint 1.59: preferred, colored
Changes since revision 1.59.2.5: +5 -23 lines
sync with head

Revision 1.76: download - view: text, markup, annotated - select for diffs
Thu Dec 6 17:05:07 2007 UTC (17 years ago) by ad
Branches: MAIN
CVS tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, reinoud-bufcleanup-nbase, jmcneill-pm-base, cube-autoconf-base, cube-autoconf
Branch point for: bouyer-xeni386
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +5 -23 lines
Nothing uses shared -> exclusive upgrades any more, so remove the code.
This is good since they are effectively the same as ...

	lockmgr(&lock, LK_RELEASE);
	lockmgr(&lock, LK_EXCLUSIVE);

.. and therefore don't behave as expected.

Revision 1.75.6.1: download - view: text, markup, annotated - select for diffs
Tue Dec 4 13:03:38 2007 UTC (17 years ago) by ad
Branches: vmlocking2
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +4 -3 lines
Pull the vmlocking changes into a new branch.

Revision 1.72.6.1: download - view: text, markup, annotated - select for diffs
Tue Nov 6 23:34:49 2007 UTC (17 years, 1 month ago) by matt
Branches: matt-armv6
CVS tags: matt-armv6-prevmlocking
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +17 -126 lines
sync with HEAD

Revision 1.59.2.5: download - view: text, markup, annotated - select for diffs
Sat Oct 27 11:36:30 2007 UTC (17 years, 1 month ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.59.2.4: preferred, colored; branchpoint 1.59: preferred, colored
Changes since revision 1.59.2.4: +17 -126 lines
sync with head.

Revision 1.72.4.1: download - view: text, markup, annotated - select for diffs
Fri Oct 26 15:49:18 2007 UTC (17 years, 1 month ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +17 -126 lines
Sync with HEAD.

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

Revision 1.72.8.1: download - view: text, markup, annotated - select for diffs
Sun Oct 14 11:49:08 2007 UTC (17 years, 1 month ago) by yamt
Branches: yamt-x86pmap
Diff to: previous 1.72: preferred, colored; next MAIN 1.73: preferred, colored
Changes since revision 1.72: +17 -126 lines
sync with head.

Revision 1.75: download - view: text, markup, annotated - select for diffs
Fri Oct 12 09:15:37 2007 UTC (17 years, 2 months ago) by dogcow
Branches: MAIN
CVS tags: yamt-x86pmap-base4, yamt-x86pmap-base3, vmlocking2-base1, vmlocking-nbase, vmlocking-base, reinoud-bufcleanup-base, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: vmlocking2, mjf-devfs
Diff to: previous 1.74: preferred, colored
Changes since revision 1.74: +2 -1 lines
<sys/lock.h> wants uintptr_t, so include <sys/stdint.h>.
cf <slrnfgtjo3.rj4.mason@g.primenet.com.au>, et al.

Revision 1.74: download - view: text, markup, annotated - select for diffs
Thu Oct 11 19:45:26 2007 UTC (17 years, 2 months ago) by ad
Branches: MAIN
Diff to: previous 1.73: preferred, colored
Changes since revision 1.73: +17 -126 lines
Merge from vmlocking:

- G/C spinlockmgr() and simple_lock debugging.
- Always include the kernel_lock functions, for LKMs.
- Slightly improved subr_lockdebug code.
- Keep sizeof(struct lock) the same if LOCKDEBUG.

Revision 1.69.2.8: download - view: text, markup, annotated - select for diffs
Thu Oct 11 11:21:16 2007 UTC (17 years, 2 months ago) by ad
Branches: vmlocking
Diff to: previous 1.69.2.7: preferred, colored; next MAIN 1.70: preferred, colored
Changes since revision 1.69.2.7: +3 -3 lines
'volatile' isn't needed here.

Revision 1.69.2.7: download - view: text, markup, annotated - select for diffs
Thu Oct 11 11:08:17 2007 UTC (17 years, 2 months ago) by ad
Branches: vmlocking
Diff to: previous 1.69.2.6: preferred, colored
Changes since revision 1.69.2.6: +1 -2 lines
- Always include the kernel_lock functions, for LKMs.
- Fix uniprocessor builds.
- Tidy up a bit.

Revision 1.69.2.6: download - view: text, markup, annotated - select for diffs
Wed Oct 10 21:21:20 2007 UTC (17 years, 2 months ago) by ad
Branches: vmlocking
Diff to: previous 1.69.2.5: preferred, colored
Changes since revision 1.69.2.5: +3 -13 lines
crackmgr(): don't keep track of line numbers/file names for LOCKDEBUG.
Instead, just stash a couple of text addresses into struct lock. Keep
these in struct lock even if compiled without LOCKDEBUG, so that the
size of struct lock is not changed by it.

Revision 1.73: download - view: text, markup, annotated - select for diffs
Wed Oct 10 17:37:40 2007 UTC (17 years, 2 months ago) by ad
Branches: MAIN
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +1 -2 lines
Kill transferlockers() now that it's unused.

Revision 1.59.2.4: download - view: text, markup, annotated - select for diffs
Mon Sep 3 14:46:23 2007 UTC (17 years, 3 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.59.2.3: preferred, colored; branchpoint 1.59: preferred, colored
Changes since revision 1.59.2.3: +11 -110 lines
sync with head.

Revision 1.66.8.1: download - view: text, markup, annotated - select for diffs
Mon Sep 3 07:05:16 2007 UTC (17 years, 3 months ago) by wrstuden
Branches: wrstuden-fixsa
Diff to: previous 1.66: preferred, colored; next MAIN 1.67: preferred, colored
Changes since revision 1.66: +3 -2 lines
Sync w/ NetBSD-4-RC_1

Revision 1.58.2.1: download - view: text, markup, annotated - select for diffs
Sun Aug 26 18:44:17 2007 UTC (17 years, 3 months ago) by bouyer
Branches: netbsd-3
Diff to: previous 1.58: preferred, colored; next MAIN 1.59: preferred, colored
Changes since revision 1.58: +3 -2 lines
Pull up following revision(s) (requested by pooka in ticket #1816):
	sys/sys/lock.h: revision 1.72
	sys/kern/kern_lock.c: revision 1.118
	sys/kern/vfs_subr.c: revision 1.295
Define a new lockmgr flag LK_RESURRECT which can be used in
conjunction with LK_DRAIN.  This has the same effect as LK_DRAIN
except it atomically does NOT mark the lock as drained.  This
guarantees that when we got the lock, we were the last one currently
waiting for the lock.
Use LK_DRAIN|LK_RESURRECT in vclean() to make sure there are no
waiters for the lock.  This should fix behaviour theoretized to be
caused by vfs_subr.c 1.289 which caused vclean() to run into
completion and free the vnode before all lock-waiters had been
processed.  Should therefore fix the "simple_lock: unitialized lock"
problems seen recently.
thanks to Juergen Hannken-Illjes for some analysis of the problem
and Erik Bertelsen for testing

Revision 1.69.2.5: download - view: text, markup, annotated - select for diffs
Mon Aug 20 18:10:11 2007 UTC (17 years, 3 months ago) by ad
Branches: vmlocking
Diff to: previous 1.69.2.4: preferred, colored
Changes since revision 1.69.2.4: +3 -2 lines
Sync with HEAD.

Revision 1.71.2.1: download - view: text, markup, annotated - select for diffs
Wed Aug 15 13:50:56 2007 UTC (17 years, 3 months ago) by skrll
Branches: nick-csl-alignment
Diff to: previous 1.71: preferred, colored; next MAIN 1.72: preferred, colored
Changes since revision 1.71: +3 -2 lines
Sync with HEAD.

Revision 1.52.2.1.2.1: download - view: text, markup, annotated - select for diffs
Sat Aug 11 14:03:47 2007 UTC (17 years, 4 months ago) by bouyer
Branches: netbsd-2
Diff to: previous 1.52.2.1: preferred, colored; next MAIN 1.53: preferred, colored
Changes since revision 1.52.2.1: +3 -2 lines
Pull up following revision(s) (requested by pooka in ticket #11349):
	sys/sys/lock.h: revision 1.72
	sys/kern/kern_lock.c: revision 1.118 via patch
	sys/kern/vfs_subr.c: revision 1.295
Define a new lockmgr flag LK_RESURRECT which can be used in
conjunction with LK_DRAIN.  This has the same effect as LK_DRAIN
except it atomically does NOT mark the lock as drained.  This
guarantees that when we got the lock, we were the last one currently
waiting for the lock.
Use LK_DRAIN|LK_RESURRECT in vclean() to make sure there are no
waiters for the lock.  This should fix behaviour theoretized to be
caused by vfs_subr.c 1.289 which caused vclean() to run into
completion and free the vnode before all lock-waiters had been
processed.  Should therefore fix the "simple_lock: unitialized lock"
problems seen recently.
thanks to Juergen Hannken-Illjes for some analysis of the problem
and Erik Bertelsen for testing

Revision 1.66.6.1: download - view: text, markup, annotated - select for diffs
Wed Aug 1 14:45:45 2007 UTC (17 years, 4 months ago) by liamjfoy
Branches: netbsd-4
CVS tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, matt-nb4-arm-base, matt-nb4-arm
Diff to: previous 1.66: preferred, colored; next MAIN 1.67: preferred, colored
Changes since revision 1.66: +3 -2 lines
Pull up following revision(s) (requested by pooka in ticket #808):
	sys/sys/lock.h: revision 1.72
	sys/kern/kern_lock.c: revision 1.118
	sys/kern/vfs_subr.c: revision 1.295
Define a new lockmgr flag LK_RESURRECT which can be used in
conjunction with LK_DRAIN.  This has the same effect as LK_DRAIN
except it atomically does NOT mark the lock as drained.  This
guarantees that when we got the lock, we were the last one currently
waiting for the lock.
Use LK_DRAIN|LK_RESURRECT in vclean() to make sure there are no
waiters for the lock.  This should fix behaviour theoretized to be
caused by vfs_subr.c 1.289 which caused vclean() to run into
completion and free the vnode before all lock-waiters had been
processed.  Should therefore fix the "simple_lock: unitialized lock"
problems seen recently.
thanks to Juergen Hannken-Illjes for some analysis of the problem
and Erik Bertelsen for testing

Revision 1.72.10.2: download - view: text, markup, annotated - select for diffs
Sun Jul 29 12:40:38 2007 UTC (17 years, 4 months ago) by pooka
Branches: matt-mips64
Diff to: previous 1.72.10.1: preferred, colored; branchpoint 1.72: preferred, colored; next MAIN 1.73: preferred, colored
Changes since revision 1.72.10.1: +379 -0 lines
Define a new lockmgr flag LK_RESURRECT which can be used in
conjunction with LK_DRAIN.  This has the same effect as LK_DRAIN
except it atomically does NOT mark the lock as drained.  This
guarantees that when we got the lock, we were the last one currently
waiting for the lock.

Use LK_DRAIN|LK_RESURRECT in vclean() to make sure there are no
waiters for the lock.  This should fix behaviour theoretized to be
caused by vfs_subr.c 1.289 which caused vclean() to run into
completion and free the vnode before all lock-waiters had been
processed.  Should therefore fix the "simple_lock: unitialized lock"
problems seen recently.

thanks to Juergen Hannken-Illjes for some analysis of the problem
and Erik Bertelsen for testing

Revision 1.72.10.1
Sun Jul 29 12:40:37 2007 UTC (17 years, 4 months ago) by pooka
Branches: matt-mips64
FILE REMOVED
Changes since revision 1.72: +0 -379 lines
file lock.h was added on branch matt-mips64 on 2007-07-29 12:40:38 +0000

Revision 1.72: download - view: text, markup, annotated - select for diffs
Sun Jul 29 12:40:37 2007 UTC (17 years, 4 months ago) by pooka
Branches: MAIN
CVS tags: yamt-x86pmap-base2, yamt-x86pmap-base, nick-csl-alignment-base5, matt-mips64-base, hpcarm-cleanup
Branch point for: yamt-x86pmap, matt-mips64, matt-armv6, jmcneill-pm
Diff to: previous 1.71: preferred, colored
Changes since revision 1.71: +3 -2 lines
Define a new lockmgr flag LK_RESURRECT which can be used in
conjunction with LK_DRAIN.  This has the same effect as LK_DRAIN
except it atomically does NOT mark the lock as drained.  This
guarantees that when we got the lock, we were the last one currently
waiting for the lock.

Use LK_DRAIN|LK_RESURRECT in vclean() to make sure there are no
waiters for the lock.  This should fix behaviour theoretized to be
caused by vfs_subr.c 1.289 which caused vclean() to run into
completion and free the vnode before all lock-waiters had been
processed.  Should therefore fix the "simple_lock: unitialized lock"
problems seen recently.

thanks to Juergen Hannken-Illjes for some analysis of the problem
and Erik Bertelsen for testing

Revision 1.69.2.4: download - view: text, markup, annotated - select for diffs
Sun Jul 29 11:33:05 2007 UTC (17 years, 4 months ago) by ad
Branches: vmlocking
Diff to: previous 1.69.2.3: preferred, colored
Changes since revision 1.69.2.3: +2 -1 lines
Add lockdestroy() which tears down lk_interlock.

Revision 1.70.2.1: download - view: text, markup, annotated - select for diffs
Wed Jul 11 20:12:31 2007 UTC (17 years, 5 months ago) by mjf
Branches: mjf-ufs-trans
Diff to: previous 1.70: preferred, colored; next MAIN 1.71: preferred, colored
Changes since revision 1.70: +3 -3 lines
Sync with head.

Revision 1.71: download - view: text, markup, annotated - select for diffs
Thu May 17 14:51:42 2007 UTC (17 years, 6 months ago) by yamt
Branches: MAIN
CVS tags: nick-csl-alignment-base, mjf-ufs-trans-base
Branch point for: nick-csl-alignment
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +3 -3 lines
merge yamt-idlelwp branch.  asked by core@.  some ports still needs work.

from doc/BRANCHES:

	idle lwp, and some changes depending on it.

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

Revision 1.69.2.3: download - view: text, markup, annotated - select for diffs
Fri Apr 6 12:27:21 2007 UTC (17 years, 8 months ago) by ad
Branches: vmlocking
Diff to: previous 1.69.2.2: preferred, colored
Changes since revision 1.69.2.2: +3 -3 lines
Pull up a change from the yamt-idlelwp branch: adjust the constants for
spinlock backoff.

Revision 1.68.2.3: download - view: text, markup, annotated - select for diffs
Sat Mar 31 00:31:38 2007 UTC (17 years, 8 months ago) by ad
Branches: yamt-idlelwp
Diff to: previous 1.68.2.2: preferred, colored; branchpoint 1.68: preferred, colored; next MAIN 1.69: preferred, colored
Changes since revision 1.68.2.2: +3 -3 lines
Adjust the constants for spinlock backoff downwards, on the assumption that
SPINLOCK_BACKOFF_HOOK costs >=20 cycles. To be revisited.

Revision 1.68.2.2: download - view: text, markup, annotated - select for diffs
Sat Mar 17 17:42:23 2007 UTC (17 years, 8 months ago) by rmind
Branches: yamt-idlelwp
Diff to: previous 1.68.2.1: preferred, colored; branchpoint 1.68: preferred, colored
Changes since revision 1.68.2.1: +5 -105 lines
Backport lock.h split into the simplelock.h and other #include changes
from HEAD. This fixes the problems with circular includes.

Revision 1.69.2.2: download - view: text, markup, annotated - select for diffs
Tue Mar 13 17:51:18 2007 UTC (17 years, 9 months ago) by ad
Branches: vmlocking
Diff to: previous 1.69.2.1: preferred, colored
Changes since revision 1.69.2.1: +16 -112 lines
Pull in the initial set of changes for the vmlocking branch.

Revision 1.69.2.1: download - view: text, markup, annotated - select for diffs
Tue Mar 13 16:52:04 2007 UTC (17 years, 9 months ago) by ad
Branches: vmlocking
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +5 -105 lines
Sync with head.

Revision 1.70: download - view: text, markup, annotated - select for diffs
Mon Mar 12 16:31:54 2007 UTC (17 years, 9 months ago) by ad
Branches: MAIN
CVS tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic
Branch point for: reinoud-bufcleanup, mjf-ufs-trans
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +5 -105 lines
Put the simplelock stuff into its own header file to simplify dependencies.

Revision 1.68.2.1: download - view: text, markup, annotated - select for diffs
Tue Feb 27 16:55:15 2007 UTC (17 years, 9 months ago) by yamt
Branches: yamt-idlelwp
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +3 -3 lines
- sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.

Revision 1.69: download - view: text, markup, annotated - select for diffs
Tue Feb 27 15:07:28 2007 UTC (17 years, 9 months ago) by yamt
Branches: MAIN
Branch point for: vmlocking
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +3 -3 lines
typedef pri_t and use it instead of int and u_char.

Revision 1.59.2.3: download - view: text, markup, annotated - select for diffs
Mon Feb 26 09:12:12 2007 UTC (17 years, 9 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.59.2.2: preferred, colored; branchpoint 1.59: preferred, colored
Changes since revision 1.59.2.2: +57 -14 lines
sync with head.

Revision 1.68: download - view: text, markup, annotated - select for diffs
Fri Feb 16 20:54:12 2007 UTC (17 years, 9 months ago) by christos
Branches: MAIN
CVS tags: ad-audiomp-base, ad-audiomp
Branch point for: yamt-idlelwp
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +20 -1 lines
add bitmask_snprintf string.

Revision 1.67: download - view: text, markup, annotated - select for diffs
Fri Feb 9 21:55:37 2007 UTC (17 years, 10 months ago) by ad
Branches: MAIN
CVS tags: post-newlock2-merge
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +38 -14 lines
Merge newlock2 to head.

Revision 1.66.2.4: download - view: text, markup, annotated - select for diffs
Fri Jan 26 23:22:44 2007 UTC (17 years, 10 months ago) by ad
Branches: newlock2
Diff to: previous 1.66.2.3: preferred, colored; branchpoint 1.66: preferred, colored; next MAIN 1.67: preferred, colored
Changes since revision 1.66.2.3: +2 -2 lines
- Increase spinout timeout.
- Spin testing kernel_lock to reduce bus traffic.

Revision 1.59.2.2: download - view: text, markup, annotated - select for diffs
Sat Dec 30 20:50:55 2006 UTC (17 years, 11 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.59.2.1: preferred, colored; branchpoint 1.59: preferred, colored
Changes since revision 1.59.2.1: +51 -9 lines
sync with head.

Revision 1.66.2.3: download - view: text, markup, annotated - select for diffs
Fri Dec 29 20:27:45 2006 UTC (17 years, 11 months ago) by ad
Branches: newlock2
Diff to: previous 1.66.2.2: preferred, colored; branchpoint 1.66: preferred, colored
Changes since revision 1.66.2.2: +36 -14 lines
Checkpoint work in progress.

Revision 1.66.2.2: download - view: text, markup, annotated - select for diffs
Fri Nov 17 16:34:40 2006 UTC (18 years ago) by ad
Branches: newlock2
Diff to: previous 1.66.2.1: preferred, colored; branchpoint 1.66: preferred, colored
Changes since revision 1.66.2.1: +2 -2 lines
Checkpoint work in progress.

Revision 1.66.2.1: download - view: text, markup, annotated - select for diffs
Fri Oct 20 19:23:34 2006 UTC (18 years, 1 month ago) by ad
Branches: newlock2
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +3 -1 lines
Export kernel_mutex.

Revision 1.63.6.3: download - view: text, markup, annotated - select for diffs
Thu Sep 14 12:32:00 2006 UTC (18 years, 2 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.63.6.2: preferred, colored; branchpoint 1.63: preferred, colored; next MAIN 1.64: preferred, colored
Changes since revision 1.63.6.2: +24 -1 lines
sync with head.

Revision 1.63.2.1: download - view: text, markup, annotated - select for diffs
Sat Sep 9 02:59:42 2006 UTC (18 years, 3 months ago) by rpaulo
Branches: rpaulo-netinet-merge-pcb
Diff to: previous 1.63: preferred, colored; next MAIN 1.64: preferred, colored
Changes since revision 1.63: +72 -14 lines
sync with head

Revision 1.66: download - view: text, markup, annotated - select for diffs
Thu Sep 7 01:59:23 2006 UTC (18 years, 3 months ago) by ad
Branches: MAIN
CVS tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-splraiseipl-base2, yamt-splraiseipl-base, yamt-splraiseipl, yamt-pdpolicy-base9, rpaulo-netinet-merge-pcb-base, newlock2-nbase, newlock2-base, netbsd-4-base
Branch point for: wrstuden-fixsa, newlock2, netbsd-4
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +24 -1 lines
- Declare lock_owner_onproc(). Traverses the CPU list and checks if
  ci->ci_curlwp == arg.
- Define SPINLOCK_SPIN_HOOK to /* nothing */ if it's not defined
  already.
- Define SPINLOCK_BACKOFF() macro.

Revision 1.63.6.2: download - view: text, markup, annotated - select for diffs
Sun Sep 3 15:25:56 2006 UTC (18 years, 3 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.63.6.1: preferred, colored; branchpoint 1.63: preferred, colored
Changes since revision 1.63.6.1: +28 -9 lines
sync with head.

Revision 1.65: download - view: text, markup, annotated - select for diffs
Wed Aug 30 00:39:58 2006 UTC (18 years, 3 months ago) by christos
Branches: MAIN
CVS tags: yamt-pdpolicy-base8
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +28 -9 lines
fix incomplete initializers in the LOCKDEBUG case

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

Revision 1.63.4.1: download - view: text, markup, annotated - select for diffs
Sat Apr 22 11:40:18 2006 UTC (18 years, 7 months ago) by simonb
Branches: simonb-timecounters
CVS tags: simonb-timcounters-final
Diff to: previous 1.63: preferred, colored; next MAIN 1.64: preferred, colored
Changes since revision 1.63: +22 -6 lines
Sync with head.

Revision 1.63.8.1: download - view: text, markup, annotated - select for diffs
Wed Apr 19 04:36:01 2006 UTC (18 years, 7 months ago) by elad
Branches: elad-kernelauth
Diff to: previous 1.63: preferred, colored; next MAIN 1.64: preferred, colored
Changes since revision 1.63: +22 -6 lines
sync with head.

Revision 1.63.6.1: download - view: text, markup, annotated - select for diffs
Sat Apr 1 12:07:51 2006 UTC (18 years, 8 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +22 -6 lines
sync with head.

Revision 1.63.10.1: download - view: text, markup, annotated - select for diffs
Tue Mar 28 09:42:29 2006 UTC (18 years, 8 months ago) by tron
Branches: peter-altq
Diff to: previous 1.63: preferred, colored; next MAIN 1.64: preferred, colored
Changes since revision 1.63: +22 -6 lines
Merge 2006-03-28 NetBSD-current into the "peter-altq" branch.

Revision 1.64: download - view: text, markup, annotated - select for diffs
Sun Mar 26 20:19:52 2006 UTC (18 years, 8 months ago) by erh
Branches: MAIN
CVS tags: yamt-pdpolicy-base7, yamt-pdpolicy-base6, yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, simonb-timecounters-base, gdamore-uart-base, gdamore-uart, elad-kernelauth-base, chap-midi-nbase, chap-midi-base, chap-midi, abandoned-netbsd-4-base, abandoned-netbsd-4
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +22 -6 lines
Add simple_lock_assert_locked/simple_lock_assert_unlocked to provide additional
useful information when panic'ing because the assertion fails.
Use these to define the SCHED_ASSERT_LOCKED/SCHED_ASSERT_UNLOCKED macros.

Revision 1.62.2.1: download - view: text, markup, annotated - select for diffs
Sun Jan 15 10:03:04 2006 UTC (18 years, 10 months ago) by yamt
Branches: yamt-uio_vmspace
Diff to: previous 1.62: preferred, colored; next MAIN 1.63: preferred, colored
Changes since revision 1.62: +2 -2 lines
sync with head.

Revision 1.63: download - view: text, markup, annotated - select for diffs
Mon Jan 2 21:53:30 2006 UTC (18 years, 11 months ago) by uwe
Branches: MAIN
CVS tags: yamt-uio_vmspace-base5, yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base
Branch point for: yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb, peter-altq, elad-kernelauth
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +2 -2 lines
Spell LK_CANRECURSE correctly in the comment.

Revision 1.62: download - view: text, markup, annotated - select for diffs
Tue Dec 27 04:06:46 2005 UTC (18 years, 11 months ago) by chs
Branches: MAIN
Branch point for: yamt-uio_vmspace
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +2 -2 lines
changes for making DIAGNOSTIC not change the kernel ABI:
 - for structure fields that are conditionally present,
   make those fields always present.
 - for functions which are conditionally inline, make them never inline.
 - remove some other functions which are conditionally defined but
   don't actually do anything anymore.
 - make a lock-debugging function conditional on only LOCKDEBUG.

as discussed on tech-kern some time back.

Revision 1.61: download - view: text, markup, annotated - select for diffs
Sat Dec 24 19:01:28 2005 UTC (18 years, 11 months ago) by perry
Branches: MAIN
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +16 -16 lines
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.

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

Revision 1.48.2.7: download - view: text, markup, annotated - select for diffs
Thu Nov 10 14:12:12 2005 UTC (19 years, 1 month ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.48.2.6: preferred, colored; next MAIN 1.49: preferred, colored
Changes since revision 1.48.2.6: +4 -4 lines
Sync with HEAD. Here we go again...

Revision 1.59: download - view: text, markup, annotated - select for diffs
Sun May 29 21:14:40 2005 UTC (19 years, 6 months ago) by christos
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, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Branch point for: yamt-lazymbuf
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +4 -4 lines
Add an internal _TAILQ macro that allows us to be explicit about volatile
qualifiers and use it in the lock case. This will help us clean the XXX
volatile cast-aways in kern_lock.c

Revision 1.57.4.1: download - view: text, markup, annotated - select for diffs
Fri Apr 29 11:29:37 2005 UTC (19 years, 7 months ago) by kent
Branches: kent-audio2
Diff to: previous 1.57: preferred, colored; next MAIN 1.58: preferred, colored
Changes since revision 1.57: +2 -2 lines
sync with -current

Revision 1.57.6.1: download - view: text, markup, annotated - select for diffs
Sat Mar 19 08:36:52 2005 UTC (19 years, 8 months ago) by yamt
Branches: yamt-km
Diff to: previous 1.57: preferred, colored; next MAIN 1.58: preferred, colored
Changes since revision 1.57: +2 -2 lines
sync with head.  xen and whitespace.  xen part is not finished.

Revision 1.48.2.6: download - view: text, markup, annotated - select for diffs
Fri Mar 4 16:54:22 2005 UTC (19 years, 9 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.48.2.5: preferred, colored
Changes since revision 1.48.2.5: +2 -2 lines
Sync with HEAD.

Hi Perry!

Revision 1.58: download - view: text, markup, annotated - select for diffs
Sat Feb 26 22:25:34 2005 UTC (19 years, 9 months ago) by perry
Branches: MAIN
CVS tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, kent-audio2-base
Branch point for: netbsd-3
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +2 -2 lines
nuke trailing whitespace

Revision 1.48.2.5: download - view: text, markup, annotated - select for diffs
Tue Nov 2 07:53:37 2004 UTC (20 years, 1 month ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.48.2.4: preferred, colored
Changes since revision 1.48.2.4: +1 -5 lines
Sync with HEAD.

Revision 1.57: download - view: text, markup, annotated - select for diffs
Sat Oct 23 21:27:33 2004 UTC (20 years, 1 month ago) by yamt
Branches: MAIN
CVS tags: yamt-km-base2, yamt-km-base, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: yamt-km, kent-audio2
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +1 -5 lines
don't reference kernel_lock directly.

Revision 1.48.2.4: download - view: text, markup, annotated - select for diffs
Tue Oct 19 15:58:30 2004 UTC (20 years, 1 month ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.48.2.3: preferred, colored
Changes since revision 1.48.2.3: +2 -2 lines
Sync with HEAD

Revision 1.56: download - view: text, markup, annotated - select for diffs
Sun Oct 17 16:06:00 2004 UTC (20 years, 1 month ago) by jdolecek
Branches: MAIN
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +2 -2 lines
fix comment - LK_NOWAIT, not LK_WAIT

Revision 1.48.2.3: download - view: text, markup, annotated - select for diffs
Tue Sep 21 13:38:47 2004 UTC (20 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.48.2.2: preferred, colored
Changes since revision 1.48.2.2: +1 -1 lines
Fix the sync with head I botched.

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

Revision 1.48.2.1: download - view: text, markup, annotated - select for diffs
Tue Aug 3 10:56:28 2004 UTC (20 years, 4 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +21 -14 lines
Sync with HEAD

Revision 1.52.2.1: download - view: text, markup, annotated - select for diffs
Fri Jul 2 18:18:27 2004 UTC (20 years, 5 months ago) by he
Branches: netbsd-2-0
CVS tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-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
Branch point for: netbsd-2
Diff to: previous 1.52: preferred, colored; next MAIN 1.53: preferred, colored
Changes since revision 1.52: +4 -4 lines
Pull up revision 1.55 (requested by kleink in ticket #580):
  Tidy up the namespace: lint -> __lint__.

Revision 1.55: download - view: text, markup, annotated - select for diffs
Thu Jul 1 22:34:12 2004 UTC (20 years, 5 months ago) by kleink
Branches: MAIN
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +4 -4 lines
Tidy up the namespace: lint -> __lint__.

Revision 1.54: download - view: text, markup, annotated - select for diffs
Tue May 25 14:54:58 2004 UTC (20 years, 6 months ago) by hannken
Branches: MAIN
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +6 -1 lines
Add ffs internal snapshots. Written by Marshall Kirk McKusick for FreeBSD.

- Not enabled by default. Needs kernel option FFS_SNAPSHOT.
- Change parameters of ffs_blkfree.
- Let the copy-on-write functions return an error so spec_strategy
    may fail if the copy-on-write fails.
- Change genfs_*lock*() to use vp->v_vnlock instead of &vp->v_lock.
- Add flag B_METAONLY to VOP_BALLOC to return indirect block buffer.
- Add a function ffs_checkfreefile needed for snapshot creation.
- Add special handling of snapshot files:
    Snapshots may not be opened for writing and the attributes are read-only.
    Use the mtime as the time this snapshot was taken.
    Deny mtime updates for snapshot files.
- Add function transferlockers to transfer any waiting processes from
  one lock to another.
- Add vfsop VFS_SNAPSHOT to take a snapshot and make it accessible through
  a vnode.
- Add snapshot support to ls, fsck_ffs and dump.

Welcome to 2.0F.

Approved by: Jason R. Thorpe <thorpej@netbsd.org>

Revision 1.53: download - view: text, markup, annotated - select for diffs
Tue May 18 11:55:59 2004 UTC (20 years, 6 months ago) by yamt
Branches: MAIN
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +2 -1 lines
introduce LK_EXCLOTHER for lockstatus().
from FreeBSD, but a little differently.  instead of letting lockstatus()
take an additional thread argument, always use curlwp/curcpu.

Revision 1.52: download - view: text, markup, annotated - select for diffs
Wed Jan 14 11:34:48 2004 UTC (20 years, 10 months ago) by yamt
Branches: MAIN
CVS tags: netbsd-2-0-base
Branch point for: netbsd-2-0
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +3 -2 lines
there's no need to initialize simplelock on uniprocessor.

Revision 1.51: download - view: text, markup, annotated - select for diffs
Sun Nov 23 08:57:16 2003 UTC (21 years ago) by yamt
Branches: MAIN
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +6 -1 lines
turn ACQUIRE macro into a function by introducing new internal
flags, LK_SHARE_NONZERO and LK_WAIT_NONZERO.  from FreeBSD.

Revision 1.50: download - view: text, markup, annotated - select for diffs
Thu Aug 7 16:34:07 2003 UTC (21 years, 4 months ago) by agc
Branches: MAIN
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +2 -6 lines
Move UCB-licensed code from 4-clause to 3-clause licence.

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

Revision 1.49: download - view: text, markup, annotated - select for diffs
Tue Jul 8 06:49:20 2003 UTC (21 years, 5 months ago) by itojun
Branches: MAIN
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +4 -5 lines
prototype must not carry variable name

Revision 1.48: download - view: text, markup, annotated - select for diffs
Fri Jun 13 05:13:43 2003 UTC (21 years, 6 months ago) by thorpej
Branches: MAIN
Branch point for: ktrace-lwp
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +12 -1 lines
Add a LOCK_INITIALIZER() macro to statically initialize a struct lock.

Revision 1.47: download - view: text, markup, annotated - select for diffs
Sat Jan 18 09:53:19 2003 UTC (21 years, 10 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +3 -1 lines
Merge the nathanw_sa branch.

Revision 1.45.2.1: download - view: text, markup, annotated - select for diffs
Sun Jun 23 17:51:57 2002 UTC (22 years, 5 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.45: preferred, colored; next MAIN 1.46: preferred, colored
Changes since revision 1.45: +5 -1 lines
catch up with -current on kqueue branch

Revision 1.41.2.3: download - view: text, markup, annotated - select for diffs
Thu Jun 20 03:50:12 2002 UTC (22 years, 5 months ago) by nathanw
Branches: nathanw_sa
CVS tags: nathanw_sa_end
Diff to: previous 1.41.2.2: preferred, colored; branchpoint 1.41: preferred, colored; next MAIN 1.42: preferred, colored
Changes since revision 1.41.2.2: +5 -1 lines
Catch up to -current.

Revision 1.45.14.1: download - view: text, markup, annotated - select for diffs
Thu May 30 13:52:42 2002 UTC (22 years, 6 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.45: preferred, colored; next MAIN 1.46: preferred, colored
Changes since revision 1.45: +5 -1 lines
Catch up with -current.

Revision 1.46: download - view: text, markup, annotated - select for diffs
Tue May 21 01:38:26 2002 UTC (22 years, 6 months ago) by thorpej
Branches: MAIN
CVS tags: netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-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, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, gehenna-devsw-base, fvdl_fs64_base
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +5 -1 lines
Move kernel_lock manipulation info functions so that they will
show up in a profile.

Revision 1.45.10.1: download - view: text, markup, annotated - select for diffs
Mon Mar 11 00:43:12 2002 UTC (22 years, 9 months ago) by thorpej
Branches: newlock
Diff to: previous 1.45: preferred, colored; next MAIN 1.46: preferred, colored
Changes since revision 1.45: +3 -72 lines
Split the "simplelock" stuff out of lock.h into simplelock.h.  The
new __cpu_simple_lock_t basic atomic primitive is still useful, even
with the new mutex implementation.

In mutex.h, use simplelock.h rather than lock.h.

Revision 1.41.2.2: download - view: text, markup, annotated - select for diffs
Tue Nov 27 03:17:19 2001 UTC (23 years ago) by thorpej
Branches: nathanw_sa
Diff to: previous 1.41.2.1: preferred, colored; branchpoint 1.41: preferred, colored
Changes since revision 1.41.2.1: +3 -1 lines
Make lockmgr() lwp-aware:
- Locks are counted against LWPs, not procs.
- When we record the lockholder in the lock structure, we need to
  also record the lwpid.
- When we are checking who holds the lock, also consider lwpid.

Fixes a "locking against myself" panic reported by Allen Briggs that
could be easily triggered by redirecting the output of an LWP-using
program to a file.

Revision 1.41.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 21 20:09:48 2001 UTC (23 years, 5 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +11 -9 lines
Catch up to -current.

Revision 1.45: download - view: text, markup, annotated - select for diffs
Tue Jun 5 04:38:08 2001 UTC (23 years, 6 months ago) by thorpej
Branches: MAIN
CVS tags: thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, thorpej-devvp, pre-chs-ubcperf, post-chs-ubcperf, newlock-base, ifpoll-base, eeh-devprop-base, eeh-devprop
Branch point for: newlock, kqueue, gehenna-devsw
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +4 -1 lines
Add a simple_lock_only_held() LOCKDEBUG routine, which allows code
to assert that exactly zero or one (and a specific one) locks are
held.

From Bill Sommerfeld.

Revision 1.44: download - view: text, markup, annotated - select for diffs
Wed May 30 12:07:05 2001 UTC (23 years, 6 months ago) by mrg
Branches: MAIN
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +2 -2 lines
use _KERNEL_OPT

Revision 1.43: download - view: text, markup, annotated - select for diffs
Sat May 26 16:32:46 2001 UTC (23 years, 6 months ago) by chs
Branches: MAIN
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +1 -7 lines
replace {simple_,}lock{_data,}_t with struct {simple,}lock {,*}.

Revision 1.42: download - view: text, markup, annotated - select for diffs
Mon Apr 30 01:13:20 2001 UTC (23 years, 7 months ago) by lukem
Branches: MAIN
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +7 -2 lines
remove some lint

Revision 1.24.2.2: download - view: text, markup, annotated - select for diffs
Fri Dec 8 09:19:42 2000 UTC (24 years ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.24.2.1: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24.2.1: +33 -6 lines
Sync with HEAD.

Revision 1.41: download - view: text, markup, annotated - select for diffs
Fri Nov 24 03:59:09 2000 UTC (24 years ago) by chs
Branches: MAIN
CVS tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Branch point for: nathanw_sa
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +10 -6 lines
adjust the spinlock macros in the non-MULTIPROCESSOR, non-LOCKDEBUG case
so that gcc will think that static spinlock are used.
this allows us to remove the ugly conditionalization of
static spinlock declarations.

Revision 1.40: download - view: text, markup, annotated - select for diffs
Wed Nov 22 06:31:22 2000 UTC (24 years ago) by thorpej
Branches: MAIN
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +24 -1 lines
Add a LOCKDEBUG check for a r/w spinlock spinning out of control.
Partially from Bill Sommerfeld.

Revision 1.24.2.1: download - view: text, markup, annotated - select for diffs
Mon Nov 20 18:11:31 2000 UTC (24 years ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +41 -34 lines
Update thorpej_scsipi to -current as of a month ago

Revision 1.39: download - view: text, markup, annotated - select for diffs
Sun Nov 19 00:56:39 2000 UTC (24 years ago) by sommerfeld
Branches: MAIN
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +7 -7 lines
Back out mistaken commits.

Revision 1.38: download - view: text, markup, annotated - select for diffs
Sun Nov 19 00:54:50 2000 UTC (24 years ago) by sommerfeld
Branches: MAIN
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +7 -7 lines
Extend kinfo_proc2 with CPU id

Revision 1.37: download - view: text, markup, annotated - select for diffs
Sat Aug 26 19:26:43 2000 UTC (24 years, 3 months ago) by sommerfeld
Branches: MAIN
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +4 -1 lines
Since the spinlock count is per-cpu, we don't need atomic operations
to update it, so don't bother with <machine/atomic.h>

Flush kernel_lock_release_all() and kernel_lock_acquire_count() (which
didn't do spinlock accounting correctly), and replace them with
spinlock_release_all() and spinlock_acquire_count().

Revision 1.36: download - view: text, markup, annotated - select for diffs
Sat Aug 19 19:36:19 2000 UTC (24 years, 3 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +2 -2 lines
Lock debugging fix: Make sure a simplelock's lock_holder gets
initialized properly, and consistently tracks the owning CPU's
cpuid.  Add some diagnostic assertions to enforce this.

Revision 1.35: download - view: text, markup, annotated - select for diffs
Thu Aug 17 04:15:43 2000 UTC (24 years, 3 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +7 -1 lines
Some more lock debugging support:
- LOCK_ASSERT(), which expands to KASSERT() if LOCKDEBUG.
- new simple_lock_held(), which tests if the calling CPU holds
  the specified simple lock.

From Bill Sommerfeld, modified slightly by me.

Revision 1.31.2.2: download - view: text, markup, annotated - select for diffs
Fri Aug 11 23:10:14 2000 UTC (24 years, 4 months ago) by thorpej
Branches: netbsd-1-5
CVS tags: 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
Diff to: previous 1.31.2.1: preferred, colored; branchpoint 1.31: preferred, colored; next MAIN 1.32: preferred, colored
Changes since revision 1.31.2.1: +5 -1 lines
Pullup from trunk:
Add a DIAGNOSTIC or LOCKDEBUG check for held spin locks.

Revision 1.31.2.1: download - view: text, markup, annotated - select for diffs
Fri Aug 11 23:07:40 2000 UTC (24 years, 4 months ago) by thorpej
Branches: netbsd-1-5
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +3 -2 lines
Pullup from trunk:
It doesn't make sense to charge simple locks to proc's, because
simple locks are held by CPUs.  Remove p_simple_locks (which was
unused anyway, really), and add a LOCKDEBUG check for held simple
locks in mi_switch().  Grow p_locks to an int to take up the space
previously used by p_simple_locks so that the proc structure doens't
change size.

Revision 1.34: download - view: text, markup, annotated - select for diffs
Mon Aug 7 22:10:52 2000 UTC (24 years, 4 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +5 -1 lines
Add a DIAGNOSTIC or LOCKDEBUG check for held spin locks.

Revision 1.33: download - view: text, markup, annotated - select for diffs
Mon Aug 7 21:55:22 2000 UTC (24 years, 4 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +3 -2 lines
It doesn't make sense to charge simple locks to proc's, because
simple locks are held by CPUs.  Remove p_simple_locks (which was
unused anyway, really), and add a LOCKDEBUG check for held simple
locks in mi_switch().  Grow p_locks to an int to take up the space
previously used by p_simple_locks so that the proc structure doens't
change size.

Revision 1.32: download - view: text, markup, annotated - select for diffs
Fri Jul 14 07:16:45 2000 UTC (24 years, 5 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +12 -14 lines
ANSI'ify.

Revision 1.27.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 22 17:10:23 2000 UTC (24 years, 5 months ago) by minoura
Branches: minoura-xpg4dl
Diff to: previous 1.27: preferred, colored; next MAIN 1.28: preferred, colored
Changes since revision 1.27: +7 -3 lines
Sync w/ netbsd-1-5-base.

Revision 1.31: download - view: text, markup, annotated - select for diffs
Wed Jun 7 16:37:24 2000 UTC (24 years, 6 months ago) by thorpej
Branches: MAIN
CVS tags: netbsd-1-5-base
Branch point for: netbsd-1-5
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +1 -6 lines
Revert rev. 1.30.

Revision 1.30: download - view: text, markup, annotated - select for diffs
Wed Jun 7 16:25:15 2000 UTC (24 years, 6 months ago) by tron
Branches: MAIN
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +7 -2 lines
Make "src/regress/sys/kern/extent" build again.

Revision 1.29: download - view: text, markup, annotated - select for diffs
Wed Jun 7 13:50:40 2000 UTC (24 years, 6 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +3 -3 lines
Correct SIMPLELOCK_INITIALIZER for the LOCKDEBUG case.

Revision 1.28: download - view: text, markup, annotated - select for diffs
Sun Jun 4 15:18:08 2000 UTC (24 years, 6 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +5 -1 lines
Protect kernel function prototypes with _KERNEL.

Revision 1.27: download - view: text, markup, annotated - select for diffs
Tue May 2 04:41:04 2000 UTC (24 years, 7 months ago) by thorpej
Branches: MAIN
CVS tags: minoura-xpg4dl-base
Branch point for: minoura-xpg4dl
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +2 -2 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.26: download - view: text, markup, annotated - select for diffs
Sat Apr 29 03:31:45 2000 UTC (24 years, 7 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +9 -18 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.24.6.1: download - view: text, markup, annotated - select for diffs
Mon Dec 27 18:36:34 1999 UTC (24 years, 11 months ago) by wrstuden
Branches: wrstuden-devbsize
Diff to: previous 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24: +2 -2 lines
Pull up to last week's -current.

Revision 1.24.4.1: download - view: text, markup, annotated - select for diffs
Mon Nov 15 00:42:21 1999 UTC (25 years ago) by fvdl
Branches: fvdl-softdep
Diff to: previous 1.24: preferred, colored; next MAIN 1.25: preferred, colored
Changes since revision 1.24: +2 -2 lines
Sync with -current

Revision 1.25: download - view: text, markup, annotated - select for diffs
Sat Oct 23 23:00:06 1999 UTC (25 years, 1 month ago) by ross
Branches: MAIN
CVS tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, fvdl-softdep-base, comdex-fall-1999-base, comdex-fall-1999, chs-ubc2-newbase
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +2 -2 lines
delete unused __attribute__((__aligned__)) on locks

Revision 1.24: download - view: text, markup, annotated - select for diffs
Sat Aug 14 06:56:07 1999 UTC (25 years, 4 months ago) by ross
Branches: MAIN
Branch point for: wrstuden-devbsize, thorpej_scsipi, fvdl-softdep
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +3 -3 lines
Arrange struct simplelock more efficiently. (Megabytes of these can be
allocated dynamically.)

Revision 1.23: download - view: text, markup, annotated - select for diffs
Tue Aug 10 21:10:20 1999 UTC (25 years, 4 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +4 -4 lines
Use cpuid_t and cpu_number().

Revision 1.17.2.1.2.3: download - view: text, markup, annotated - select for diffs
Fri Aug 6 12:54:23 1999 UTC (25 years, 4 months ago) by chs
Branches: chs-ubc2
Diff to: previous 1.17.2.1.2.2: preferred, colored; branchpoint 1.17.2.1: preferred, colored; next MAIN 1.18: preferred, colored
Changes since revision 1.17.2.1.2.2: +3 -1 lines
add simple_lock_assert() prototype lost in last resync.

Revision 1.17.2.1.2.2: download - view: text, markup, annotated - select for diffs
Mon Aug 2 22:55:59 1999 UTC (25 years, 4 months ago) by thorpej
Branches: chs-ubc2
Diff to: previous 1.17.2.1.2.1: preferred, colored; branchpoint 1.17.2.1: preferred, colored
Changes since revision 1.17.2.1.2.1: +154 -73 lines
Update from trunk.

Revision 1.22: download - view: text, markup, annotated - select for diffs
Wed Jul 28 19:29:39 1999 UTC (25 years, 4 months ago) by thorpej
Branches: MAIN
CVS tags: chs-ubc2-base
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +2 -5 lines
Fix a thinko in draining of spin locks: bump waitcount in the spin case,
too.  Remove some needless code duplication by adding a "drain" argument
to the ACQUIRE() macro (compiler can [and does] optimize the constant
conditional).

Revision 1.21: download - view: text, markup, annotated - select for diffs
Tue Jul 27 23:45:13 1999 UTC (25 years, 4 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +7 -9 lines
Make a slight rearrangement in how <machine/lock.h> is included.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Tue Jul 27 21:29:15 1999 UTC (25 years, 4 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +52 -32 lines
Improve the LOCKDEBUG code:
- Now compatible with MULTIPROCESSOR (requires other changes not yet
  committed, but which will be later today).
- In addition to tracking simple locks, track exclusive spin locks.
- Count spin locks like we do sleep locks (in the cpu_info for this
  CPU).
- Lock debug lists are now TAILQs, so as to make the locking order
  more obvious when dumping the list.

Also, some suggestions from Bill Sommerfeld:
- SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED constants, which may be
  defined in <machine/lock.h> (default to 1 and 0, respectively).  This
  makes it easier to support architectures which use test-and-clear
  rather than test-and-set.
- Add __attribute__((__aligned__)) to the `lock_data' member of the
  simplelock structure.  This makes it easier to support architectures
  which can only perform atomic operations on very-well-aligned memory
  locations.  NOTE: This changes the size of struct simplelock, and
  will cause a version bump.

Revision 1.19: download - view: text, markup, annotated - select for diffs
Sun Jul 25 06:24:22 1999 UTC (25 years, 4 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +109 -33 lines
Add a spin lock mode to the lock manager.  Provides a read/write
spin lock facility.  Some code and ideas from Ross Harvey.

Revision 1.17.2.1.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 7 04:25:33 1999 UTC (25 years, 6 months ago) by chs
Branches: chs-ubc2
Diff to: previous 1.17.2.1: preferred, colored
Changes since revision 1.17.2.1: +11 -1 lines
merge everything from chs-ubc branch.

Revision 1.17.2.1: download - view: text, markup, annotated - select for diffs
Wed Apr 7 00:34:34 1999 UTC (25 years, 8 months ago) by thorpej
Branches: netbsd-1-4
CVS tags: netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: chs-ubc2
Diff to: previous 1.17: preferred, colored; next MAIN 1.18: preferred, colored
Changes since revision 1.17: +7 -1 lines
Pull up 1.17 -> 1.18.

Revision 1.18: download - view: text, markup, annotated - select for diffs
Tue Apr 6 23:08:48 1999 UTC (25 years, 8 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +7 -1 lines
Add a SIMPLELOCK_INITIALIZER macro, to statically initialize a simplelock,
so that simple_lock_init() is not necessary.

Revision 1.17: download - view: text, markup, annotated - select for diffs
Thu Mar 25 00:20:35 1999 UTC (25 years, 8 months ago) by sommerfe
Branches: MAIN
CVS tags: netbsd-1-4-base
Branch point for: netbsd-1-4
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +4 -3 lines
Prevent deadlock cited in PR4629 from crashing the system.  (copyout
and system call now just return EFAULT).  A complete fix will
presumably have to wait for UBC and/or for vnode locking protocols to
be revamped to allow use of shared locks.

Revision 1.16: download - view: text, markup, annotated - select for diffs
Wed Mar 24 05:51:29 1999 UTC (25 years, 8 months ago) by mrg
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +3 -4 lines
completely remove Mach VM support.  all that is left is the all the
header files as UVM still uses (most of) these.

Revision 1.15: download - view: text, markup, annotated - select for diffs
Sun Feb 28 14:09:45 1999 UTC (25 years, 9 months ago) by fvdl
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +5 -3 lines
Define LK_SETRECURSE.

Revision 1.14.2.2: download - view: text, markup, annotated - select for diffs
Thu Feb 25 03:59:34 1999 UTC (25 years, 9 months ago) by chs
Branches: chs-ubc
Diff to: previous 1.14.2.1: preferred, colored; branchpoint 1.14: preferred, colored; next MAIN 1.15: preferred, colored
Changes since revision 1.14.2.1: +7 -1 lines
define SLOCK_{,UN}LOCKED for LOCKDEBUG.

Revision 1.14.2.1: download - view: text, markup, annotated - select for diffs
Mon Nov 9 06:06:35 1998 UTC (26 years, 1 month ago) by chs
Branches: chs-ubc
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +6 -1 lines
initial snapshot.  lots left to do.

Revision 1.14: download - view: text, markup, annotated - select for diffs
Wed Nov 4 06:19:56 1998 UTC (26 years, 1 month ago) by chs
Branches: MAIN
CVS tags: kenh-if-detach-base, kenh-if-detach, chs-ubc-base
Branch point for: chs-ubc
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +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.13: download - view: text, markup, annotated - select for diffs
Tue Sep 29 07:29:15 1998 UTC (26 years, 2 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +10 -5 lines
- Add a CPU identifier to the simplelock if LOCKDEBUG.
- Arrange for <machine/lock.h> to provide LOCKDEBUG functionality if
  LOCKDEBUG && MULTIPROCESSOR.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Sat Sep 26 20:14:53 1998 UTC (26 years, 2 months ago) by christos
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +4 -4 lines
revert the uniproc lines to the old noop defines. changes broke compiling
on !MULTIPROC && !LOCKDEBUG compiles.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Thu Sep 24 22:30:11 1998 UTC (26 years, 2 months ago) by thorpej
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +11 -9 lines
Key off MULTIPROCESSOR, not NCPUS > 1.  Pull in <machine/lock.h> if
MULTIPROCESSOR is defined, and rely on it to define the simple lock
operations.

Revision 1.10: download - view: text, markup, annotated - select for diffs
Wed May 20 01:32:29 1998 UTC (26 years, 6 months ago) by thorpej
Branches: MAIN
CVS tags: eeh-paddr_t-base, eeh-paddr_t
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +2 -1 lines
defopt LOCKDEBUG

Revision 1.9: download - view: text, markup, annotated - select for diffs
Sun Mar 1 02:24:13 1998 UTC (26 years, 9 months ago) by fvdl
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +3 -3 lines
Merge with Lite2 + local changes

Revision 1.8: download - view: text, markup, annotated - select for diffs
Tue Feb 10 14:08:47 1998 UTC (26 years, 10 months ago) by mrg
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +5 -1 lines
- add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Tue Feb 10 00:25:36 1998 UTC (26 years, 10 months ago) by perry
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +4 -4 lines
add/cleanup multiple inclusion protection.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Sat Feb 7 02:14:05 1998 UTC (26 years, 10 months ago) by chs
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +7 -1 lines
snazzier LOCKDEBUG code.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Thu Feb 5 08:00:40 1998 UTC (26 years, 10 months ago) by mrg
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +7 -1 lines
initial import of the new virtual memory system, UVM, into -current.

UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code.  i provided some help
getting swap and paging working, and other bug fixes/ideas.  chuck
silvers <chuq@chuq.com> also provided some other fixes.

this is the rest of the MI portion changes.

this will be KNF'd shortly.  :-)

Revision 1.3.2.1: download - view: text, markup, annotated - select for diffs
Tue Oct 14 16:03:22 1997 UTC (27 years, 2 months ago) by thorpej
Branches: marc-pcmcia
Diff to: previous 1.3: preferred, colored; next MAIN 1.4: preferred, colored
Changes since revision 1.3: +3 -3 lines
Update marc-pcmcia branch from trunk.

Revision 1.4: download - view: text, markup, annotated - select for diffs
Thu Oct 9 12:49:56 1997 UTC (27 years, 2 months ago) by mycroft
Branches: MAIN
CVS tags: netbsd-1-3-base, netbsd-1-3-RELEASE, netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003, netbsd-1-3-PATCH002, netbsd-1-3-PATCH001, netbsd-1-3-BETA, netbsd-1-3, marc-pcmcia-base
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +3 -3 lines
Make wmesg arguments to various functions const.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Sun Jul 6 22:53:14 1997 UTC (27 years, 5 months ago) by fvdl
Branches: MAIN
CVS tags: thorpej-signal-base, thorpej-signal, marc-pcmcia-bp
Branch point for: marc-pcmcia
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +4 -4 lines
There appear to be spinlock bugs in the VM code. They are not a problem
now, as we're always one on CPU (they will be later, though). With DEBUG,
they cause a lot of output, so DEBUG -> LOCKDEBUG for now.

Revision 1.2: download - view: text, markup, annotated - select for diffs
Sun Jul 6 12:32:38 1997 UTC (27 years, 5 months ago) by fvdl
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +13 -0 lines
Add lock count fields to proc structure. Always define NCPU to 1 for now
in lock.h

Revision 1.1.1.1 (vendor branch): download - view: text, markup, annotated - select for diffs
Sun Jul 6 12:19:53 1997 UTC (27 years, 5 months ago) by fvdl
Branches: CSRG
CVS tags: lite-2
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +0 -0 lines
Import Lite2 locking code

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Jul 6 12:19:53 1997 UTC (27 years, 5 months ago) by fvdl
Branches: MAIN
Initial revision

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>