The NetBSD Project

CVS log for src/sys/kern/kern_condvar.c

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

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.41 / (download) - annotate - [select for diffs], Tue Jan 30 07:52:22 2018 UTC (21 months, 2 weeks ago) by ozaki-r
Branch: MAIN
CVS Tags: phil-wifi-base, phil-wifi-20190609, phil-wifi, 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, isaki-audio2-base, isaki-audio2, HEAD
Changes since 1.40: +7 -7 lines
Diff to previous 1.40 (colored)

Apply C99-style struct initialization to syncobj_t

Revision 1.40 / (download) - annotate - [select for diffs], Mon Dec 25 09:13:40 2017 UTC (22 months, 3 weeks ago) by ozaki-r
Branch: MAIN
Changes since 1.39: +5 -5 lines
Diff to previous 1.39 (colored)

Apply C99-style struct initialization to lockops_t

Revision 1.39 / (download) - annotate - [select for diffs], Sun Nov 12 20:04:51 2017 UTC (2 years ago) by riastradh
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202
Changes since 1.38: +6 -3 lines
Diff to previous 1.38 (colored)

Apply same treatment to cv_timedwaitbt.

Revision 1.38 / (download) - annotate - [select for diffs], Sun Nov 12 19:46:34 2017 UTC (2 years ago) by riastradh
Branch: MAIN
Changes since 1.37: +13 -4 lines
Diff to previous 1.37 (colored)

Clarify interpretation of timeout/epsilon in cv_timedwaitbt.

Revision 1.37 / (download) - annotate - [select for diffs], Mon Jul 3 02:12:47 2017 UTC (2 years, 4 months ago) by riastradh
Branch: MAIN
CVS Tags: perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825
Changes since 1.36: +145 -2 lines
Diff to previous 1.36 (colored)

Add cv_timedwaitbt, cv_timedwaitbt_sig.

Takes struct bintime maximum delay, and decrements it in place so
that you can use it in a loop in case of spurious wakeup.

Discussed on tech-kern a couple years ago:

https://mail-index.netbsd.org/tech-kern/2015/03/23/msg018557.html

Added a parameter for expressing desired precision -- not currently
interpreted, but intended for a future tickless kernel with a choice
of high-resolution timers.

Revision 1.36 / (download) - annotate - [select for diffs], Thu Jun 8 01:09:52 2017 UTC (2 years, 5 months ago) by chs
Branch: MAIN
Changes since 1.35: +43 -8 lines
Diff to previous 1.35 (colored)

allow cv_signal() immediately followed by cv_destroy().
this sequence is used by ZFS in a couple places and by supporting it
natively we can undo our local ZFS changes that avoided it.
note that this is only legal when all of the waiters use cv_wait()
and not any of the other variations, and lockdebug will catch
any violations of this rule.

Revision 1.35 / (download) - annotate - [select for diffs], Fri Aug 7 06:22:12 2015 UTC (4 years, 3 months ago) by uebayasi
Branch: MAIN
CVS Tags: 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, 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, netbsd-8-base, matt-nb8-mediatek-base, matt-nb8-mediatek, localcount-20160914, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan
Branch point for: netbsd-8
Changes since 1.34: +3 -4 lines
Diff to previous 1.34 (colored)

o Don't include sys/sched.h.  Scheduler-related operation is done by
  sleepq(9) via SOBJ_SLEEPQ_SORTED.

o Include sys/lwp.h instead of sys/proc.h.

Revision 1.34 / (download) - annotate - [select for diffs], Fri Oct 25 15:51:36 2013 UTC (6 years ago) by martin
Branch: MAIN
CVS Tags: yamt-pagecache-base9, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, rmind-smpnet-nbase, rmind-smpnet-base, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, 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
Branch point for: nick-nhusb
Changes since 1.33: +3 -3 lines
Diff to previous 1.33 (colored)

Mark a diagnostic-only variable

Revision 1.33 / (download) - annotate - [select for diffs], Sat Sep 14 13:18:31 2013 UTC (6 years, 2 months ago) by joerg
Branch: MAIN
Changes since 1.32: +4 -2 lines
Diff to previous 1.32 (colored)

nodebug is only used with LOCKDEBUG

Revision 1.32 / (download) - annotate - [select for diffs], Fri Mar 8 08:36:37 2013 UTC (6 years, 8 months ago) by apb
Branch: MAIN
CVS Tags: riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: rmind-smpnet
Changes since 1.31: +4 -2 lines
Diff to previous 1.31 (colored)

also comment on the meaning of timo=0 for cv_timedwait_sig.

Revision 1.31 / (download) - annotate - [select for diffs], Fri Mar 8 08:35:09 2013 UTC (6 years, 8 months ago) by apb
Branch: MAIN
Changes since 1.30: +4 -2 lines
Diff to previous 1.30 (colored)

Add comments saying that a cv_timedwait and sleepq_block interpret
timo = 0 as an infinite timeout.  This is already documented in the
cv_timedwait(9) man page, and there is no sleeq_block(9) man page.

Revision 1.30 / (download) - annotate - [select for diffs], Wed Jul 27 14:35:33 2011 UTC (8 years, 3 months ago) by uebayasi
Branch: MAIN
CVS Tags: yamt-pagecache-tag8, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, 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
Branch point for: yamt-pagecache, tls-maxphys
Changes since 1.29: +2 -4 lines
Diff to previous 1.29 (colored)

These don't need uvm/uvm_extern.h.

Revision 1.29 / (download) - annotate - [select for diffs], Thu Apr 14 20:19:35 2011 UTC (8 years, 7 months ago) by jym
Branch: MAIN
CVS Tags: rmind-uvmplock-nbase, rmind-uvmplock-base, cherry-xenmp-base, cherry-xenmp
Changes since 1.28: +4 -4 lines
Diff to previous 1.28 (colored)

Typo fix.

Revision 1.28 / (download) - annotate - [select for diffs], Sat Dec 5 22:38:19 2009 UTC (9 years, 11 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip, matt-premerge-20091211, matt-mips64-premerge-20101231, jruoho-x86intr-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: rmind-uvmplock, jruoho-x86intr
Changes since 1.27: +2 -17 lines
Diff to previous 1.27 (colored)

tsleep() on lbolt is now illegal.  Convert cv_wakeup(&lbolt) to
cv_broadcast(&lbolt) and get rid of the prior.

Revision 1.27 / (download) - annotate - [select for diffs], Wed Oct 21 21:12:06 2009 UTC (10 years ago) by rmind
Branch: MAIN
CVS Tags: jym-xensuspend-nbase
Changes since 1.26: +7 -24 lines
Diff to previous 1.26 (colored)

Remove uarea swap-out functionality:

- Addresses the issue described in PR/38828.
- Some simplification in threading and sleepq subsystems.
- Eliminates pmap_collect() and, as a side note, allows pmap optimisations.
- Eliminates XS_CTL_DATA_ONSTACK in scsipi code.
- Avoids few scans on LWP list and thus potentially long holds of proc_lock.
- Cuts ~1.5k lines of code.  Reduces amd64 kernel size by ~4k.
- Removes __SWAP_BROKEN cases.

Tested on x86, mips, acorn32 (thanks <mpumford>) and partly tested on
acorn26 (thanks to <bjh21>).

Discussed on <tech-kern>, reviewed by <ad>.

Revision 1.26 / (download) - annotate - [select for diffs], Fri Dec 19 07:57:28 2008 UTC (10 years, 11 months ago) by thorpej
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, mjf-devfs2-base, jymxensuspend-base, jym-xensuspend-base, jym-xensuspend
Changes since 1.25: +25 -8 lines
Diff to previous 1.25 (colored)

Make condvars really opaque -- hide the wait message member from consumers
of the API.

Revision 1.25 / (download) - annotate - [select for diffs], Mon Jun 16 12:03:01 2008 UTC (11 years, 5 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base4, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, simonb-wapbl-nbase, simonb-wapbl-base, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap
Changes since 1.24: +3 -13 lines
Diff to previous 1.24 (colored)

PR kern/38761: new (?) race in buffer cache code

Back out the workaround from cv_has_waiters(), which is not longer needed.
Removal was missed earlier.

Revision 1.24 / (download) - annotate - [select for diffs], Mon Jun 16 10:03:47 2008 UTC (11 years, 5 months ago) by ad
Branch: MAIN
Changes since 1.23: +15 -14 lines
Diff to previous 1.23 (colored)

PR kern/38761: new (?) race in buffer cache code

- Back out the previous workaround now that the sleep queue code has
  been changed to never let the queue become empty if there are valid
  waiters.
- Use sleepq_hashlock() to improve clarity.
- Sprinkle some assertions.

Revision 1.23 / (download) - annotate - [select for diffs], Sun Jun 15 09:56:18 2008 UTC (11 years, 5 months ago) by chris
Branch: MAIN
Changes since 1.22: +15 -8 lines
Diff to previous 1.22 (colored)

Fix for biowait hangs, and possibly other condvar hangs.  Also should fix
PR kern/38761.

The condvar must access the sleepq with the sleepq lock held, doing so
is causing inconsistent sleepq state to be read.

This is because some accesses to the sleepq don't come via the cv code,
but are call directly into sleepq_changepri and sleepq_lendpri, which take
the sleepq lock, and removes then re-inserts lwps into the sleepq.

Running a build.sh with -j8 now completes on my quad-core, also tested by
Simon@ on a 8-core server and matt@ on a quad-core.

I believe there is room to be more efficient with this, as we now take the
sleepq lock for all cv_broadcast and cv_signal calls. I'll look into this
and post a diff to tech-kern.

Revision 1.22 / (download) - annotate - [select for diffs], Wed Jun 4 11:22:55 2008 UTC (11 years, 5 months ago) by ad
Branch: MAIN
Branch point for: simonb-wapbl
Changes since 1.21: +4 -4 lines
Diff to previous 1.21 (colored)

Disable the wakeup assertion for the time being because the tty code
triggers it.

Revision 1.21 / (download) - annotate - [select for diffs], Sat May 31 16:25:23 2008 UTC (11 years, 5 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base3
Changes since 1.20: +8 -8 lines
Diff to previous 1.20 (colored)

Fix wmesg for !LOCKDEBUG.

Revision 1.20 / (download) - annotate - [select for diffs], Sat May 31 13:36:25 2008 UTC (11 years, 5 months ago) by ad
Branch: MAIN
Changes since 1.19: +105 -77 lines
Diff to previous 1.19 (colored)

- Give each condition variable its own sleep queue head.  Helps the system
  to scale more gracefully when there are thousands of active threads.
  Proposed on tech-kern@.

- Use LOCKDEBUG to catch some errors in the use of condition variables:

  freeing an active CV
  re-initializing an active CV
  using multiple distinct mutexes during concurrent waits
  not holding the interlocking mutex when calling cv_broadcast/cv_signal
  waking waiters and destroying the CV before they run and exit it

Revision 1.19 / (download) - annotate - [select for diffs], Mon May 26 12:58:24 2008 UTC (11 years, 5 months ago) by ad
Branch: MAIN
Changes since 1.18: +3 -3 lines
Diff to previous 1.18 (colored)

Broken assertion.

Revision 1.18 / (download) - annotate - [select for diffs], Mon May 26 12:08:39 2008 UTC (11 years, 5 months ago) by ad
Branch: MAIN
Changes since 1.17: +16 -12 lines
Diff to previous 1.17 (colored)

Take the mutex pointer and waiters count out of sleepq_t: the values can
be or are maintained elsewhere. Now a sleepq_t is just a TAILQ_HEAD.

Revision 1.17 / (download) - annotate - [select for diffs], Mon Apr 28 20:24:02 2008 UTC (11 years, 6 months ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-base2, yamt-nfs-mp-base2, hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa
Changes since 1.16: +2 -9 lines
Diff to previous 1.16 (colored)

Remove clause 3 and 4 from TNF licenses

Revision 1.16 / (download) - annotate - [select for diffs], Mon Mar 17 16:54:51 2008 UTC (11 years, 8 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp
Changes since 1.15: +6 -6 lines
Diff to previous 1.15 (colored)

Add a boolean parameter to syncobj_t::sobj_unsleep. If true we want the
existing behaviour: the unsleep method unlocks and wakes the swapper if
needs be. If false, the caller is doing a batch operation and will take
care of that later. This is kind of ugly, but it's difficult for the caller
to know which lock to release in some situations.

Revision 1.15 / (download) - annotate - [select for diffs], Wed Mar 5 17:05:21 2008 UTC (11 years, 8 months ago) by ad
Branch: MAIN
Changes since 1.14: +42 -10 lines
Diff to previous 1.14 (colored)

- Add cv_is_valid(), for use in assertions. Performs basic sanity checks.
- Add more assertions.

Revision 1.14 / (download) - annotate - [select for diffs], Tue Nov 6 00:42:41 2007 UTC (12 years ago) by ad
Branch: MAIN
CVS Tags: 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, matt-armv6-base, 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
Branch point for: mjf-devfs2, keiichi-mipv6
Changes since 1.13: +6 -29 lines
Diff to previous 1.13 (colored)

Merge scheduler changes from the vmlocking branch. All discussed on
tech-kern:

- Invert priority space so that zero is the lowest priority. Rearrange
  number and type of priority levels into bands. Add new bands like
  'kernel real time'.
- Ignore the priority level passed to tsleep. Compute priority for
  sleep dynamically.
- For SCHED_4BSD, make priority adjustment per-LWP, not per-process.

Revision 1.13 / (download) - annotate - [select for diffs], Mon Oct 8 14:07:08 2007 UTC (12 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, vmlocking-base
Branch point for: mjf-devfs, bouyer-xenamd64
Changes since 1.12: +3 -3 lines
Diff to previous 1.12 (colored)

Merge from vmlocking: relax an assertion if panicstr != NULL.

Revision 1.12 / (download) - annotate - [select for diffs], Thu Aug 2 22:01:40 2007 UTC (12 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base2, yamt-x86pmap-base, nick-csl-alignment-base5, matt-mips64-base
Branch point for: yamt-x86pmap, matt-mips64, matt-armv6, jmcneill-pm
Changes since 1.11: +4 -8 lines
Diff to previous 1.11 (colored)

cv_wakeup: the entire queue has to be searched, as we can't know how many
waiters there are.

Revision 1.11 / (download) - annotate - [select for diffs], Wed Aug 1 23:21:14 2007 UTC (12 years, 3 months ago) by ad
Branch: MAIN
Changes since 1.10: +23 -2 lines
Diff to previous 1.10 (colored)

Ressurect cv_wakeup() and use it on lbolt. Should fix PR kern/36714.
(background/foreground signal lossage in -current with various programs).

Revision 1.10 / (download) - annotate - [select for diffs], Wed Aug 1 20:30:38 2007 UTC (12 years, 3 months ago) by ad
Branch: MAIN
Changes since 1.9: +15 -9 lines
Diff to previous 1.9 (colored)

Improve assertions slightly. When awakening assert that the CV has not
been destroyed.

Revision 1.9 / (download) - annotate - [select for diffs], Mon Jul 9 21:10:51 2007 UTC (12 years, 4 months ago) by ad
Branch: MAIN
CVS Tags: nick-csl-alignment-base, mjf-ufs-trans-base, hpcarm-cleanup
Branch point for: nick-csl-alignment
Changes since 1.8: +3 -2 lines
Diff to previous 1.8 (colored)

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

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

Revision 1.8 / (download) - annotate - [select for diffs], Thu May 17 14:51:38 2007 UTC (12 years, 6 months ago) by yamt
Branch: MAIN
Changes since 1.7: +12 -15 lines
Diff to previous 1.7 (colored)

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

from doc/BRANCHES:

	idle lwp, and some changes depending on it.

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

Revision 1.7 / (download) - annotate - [select for diffs], Thu Mar 29 17:39:34 2007 UTC (12 years, 7 months ago) by ad
Branch: MAIN
CVS Tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic
Changes since 1.6: +4 -4 lines
Diff to previous 1.6 (colored)

Make cv_has_waiters() return type bool.

Revision 1.6 / (download) - annotate - [select for diffs], Thu Mar 29 17:34:39 2007 UTC (12 years, 7 months ago) by ad
Branch: MAIN
Changes since 1.5: +40 -43 lines
Diff to previous 1.5 (colored)

- cv_wakeup: remove this. There are ~zero situations where it's useful.
- cv_wait and friends: after resuming execution, check to see if we have
  been restarted as a result of cv_signal. If we have, but cannot take
  the wakeup (because of eg a pending Unix signal or timeout) then try to
  ensure that another LWP sees it. This is necessary because there may
  be multiple waiters, and at least one should take the wakeup if possible.
  Prompted by a discussion with pooka@.
- typedef struct lwp lwp_t;
- int -> bool, struct lwp -> lwp_t in a few places.

Revision 1.5 / (download) - annotate - [select for diffs], Tue Feb 27 15:07:28 2007 UTC (12 years, 8 months ago) by yamt
Branch: MAIN
Branch point for: vmlocking, reinoud-bufcleanup, mjf-ufs-trans
Changes since 1.4: +3 -3 lines
Diff to previous 1.4 (colored)

typedef pri_t and use it instead of int and u_char.

Revision 1.4 / (download) - annotate - [select for diffs], Mon Feb 26 09:20:52 2007 UTC (12 years, 8 months ago) by yamt
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Changes since 1.3: +7 -5 lines
Diff to previous 1.3 (colored)

implement priority inheritance.

Revision 1.3 / (download) - annotate - [select for diffs], Sun Feb 11 15:41:53 2007 UTC (12 years, 9 months ago) by yamt
Branch: MAIN
Branch point for: yamt-lazymbuf, yamt-idlelwp
Changes since 1.2: +6 -10 lines
Diff to previous 1.2 (colored)

unwrap short lines.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Feb 9 21:55:30 2007 UTC (12 years, 9 months ago) by ad
Branch: MAIN
CVS Tags: post-newlock2-merge
Changes since 1.1: +358 -0 lines
Diff to previous 1.1 (colored)

Merge newlock2 to head.

Revision 1.1, Fri Oct 20 19:40:17 2006 UTC (13 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-splraiseipl-base2, newlock2-nbase, newlock2-base
Branch point for: newlock2
FILE REMOVED

file kern_condvar.c was initially added on branch newlock2.

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>