The NetBSD Project

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

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.48 / (download) - annotate - [select for diffs], Fri Mar 1 04:32:38 2024 UTC (3 days, 1 hour ago) by mrg
Branch: MAIN
CVS Tags: HEAD
Changes since 1.47: +9 -2 lines
Diff to previous 1.47 (colored)

check that l_nopreempt (preemption count) doesn't change after callbacks

check that the idle loop, soft interrupt handlers, workqueue, and xcall
callbacks do not modify the preemption count, in most cases, knowing it
should be 0 currently.

this work was originally done by simonb.  cleaned up slightly and some
minor enhancement made by myself, and with discussion with riastradh@.

other callback call sites could check this as well (such as MD interrupt
handlers, or really anything that includes a callback registration.  x86
version to be commited separately.)

Revision 1.41.2.1 / (download) - annotate - [select for diffs], Mon Sep 4 16:57:56 2023 UTC (5 months, 4 weeks ago) by martin
Branch: netbsd-10
CVS Tags: netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1
Changes since 1.41: +81 -44 lines
Diff to previous 1.41 (colored) next main 1.42 (colored)

Pull up following revision(s) (requested by riastradh in ticket #342):

	sys/kern/subr_workqueue.c: revision 1.42
	sys/kern/subr_workqueue.c: revision 1.43
	sys/kern/subr_workqueue.c: revision 1.44
	sys/kern/subr_workqueue.c: revision 1.45
	sys/kern/subr_workqueue.c: revision 1.46
	tests/rump/kernspace/workqueue.c: revision 1.7
	sys/kern/subr_workqueue.c: revision 1.47
	tests/rump/kernspace/workqueue.c: revision 1.8
	tests/rump/kernspace/workqueue.c: revision 1.9
	tests/rump/rumpkern/t_workqueue.c: revision 1.3
	tests/rump/rumpkern/t_workqueue.c: revision 1.4
	tests/rump/kernspace/kernspace.h: revision 1.9
	tests/rump/rumpkern/Makefile: revision 1.20

tests/rump/rumpkern: Use PROGDPLIBS, not explicit -L/-l.

This way we relink the t_* test programs whenever changes under
tests/rump/kernspace change libkernspace.a.

workqueue(9) tests: Nix trailing whitespace.

workqueue(9) tests: Destroy struct work immediately on entry.

workqueue(9) tests: Add test for PR kern/57574.

workqueue(9): Avoid touching running work items in workqueue_wait.

As soon as the workqueue function has called, it is forbidden to
touch the struct work passed to it -- the function might free or
reuse the data structure it is embedded in.

So workqueue_wait is forbidden to search the queue for the batch of
running work items.  Instead, use a generation number which is odd
while the thread is processing a batch of work and even when not.

There's still a small optimization available with the struct work
pointer to wait for: if we find the work item in one of the per-CPU
_pending_ queues, then after we wait for a batch of work to complete
on that CPU, we don't need to wait for work on any other CPUs.
PR kern/57574

workqueue(9): Sprinkle dtrace probes for workqueue_wait edge cases.

Let's make it easy to find out whether these are hit.

workqueue(9): Stop violating queue(3) internals.

workqueue(9): Avoid unnecessary mutex_exit/enter cycle each loop.

workqueue(9): Sort includes.
No functional change intended.

workqueue(9): Factor out wq->wq_flags & WQ_FPU in workqueue_worker.
No functional change intended.  Makes it clearer that s is
initialized when used.

Revision 1.47 / (download) - annotate - [select for diffs], Wed Aug 9 08:24:18 2023 UTC (6 months, 3 weeks ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation
Changes since 1.46: +5 -5 lines
Diff to previous 1.46 (colored)

workqueue(9): Factor out wq->wq_flags & WQ_FPU in workqueue_worker.

No functional change intended.  Makes it clearer that s is
initialized when used.

Revision 1.46 / (download) - annotate - [select for diffs], Wed Aug 9 08:24:08 2023 UTC (6 months, 3 weeks ago) by riastradh
Branch: MAIN
Changes since 1.45: +9 -8 lines
Diff to previous 1.45 (colored)

workqueue(9): Sort includes.

No functional change intended.

Revision 1.45 / (download) - annotate - [select for diffs], Wed Aug 9 08:23:45 2023 UTC (6 months, 3 weeks ago) by riastradh
Branch: MAIN
Changes since 1.44: +4 -4 lines
Diff to previous 1.44 (colored)

workqueue(9): Avoid unnecessary mutex_exit/enter cycle each loop.

Revision 1.44 / (download) - annotate - [select for diffs], Wed Aug 9 08:23:35 2023 UTC (6 months, 3 weeks ago) by riastradh
Branch: MAIN
Changes since 1.43: +4 -10 lines
Diff to previous 1.43 (colored)

workqueue(9): Stop violating queue(3) internals.

Revision 1.43 / (download) - annotate - [select for diffs], Wed Aug 9 08:23:25 2023 UTC (6 months, 3 weeks ago) by riastradh
Branch: MAIN
Changes since 1.42: +16 -6 lines
Diff to previous 1.42 (colored)

workqueue(9): Sprinkle dtrace probes for workqueue_wait edge cases.

Let's make it easy to find out whether these are hit.

Revision 1.42 / (download) - annotate - [select for diffs], Wed Aug 9 08:23:13 2023 UTC (6 months, 3 weeks ago) by riastradh
Branch: MAIN
Changes since 1.41: +54 -22 lines
Diff to previous 1.41 (colored)

workqueue(9): Avoid touching running work items in workqueue_wait.

As soon as the workqueue function has called, it is forbidden to
touch the struct work passed to it -- the function might free or
reuse the data structure it is embedded in.

So workqueue_wait is forbidden to search the queue for the batch of
running work items.  Instead, use a generation number which is odd
while the thread is processing a batch of work and even when not.

There's still a small optimization available with the struct work
pointer to wait for: if we find the work item in one of the per-CPU
_pending_ queues, then after we wait for a batch of work to complete
on that CPU, we don't need to wait for work on any other CPUs.

PR kern/57574

XXX pullup-10
XXX pullup-9
XXX pullup-8

Revision 1.41 / (download) - annotate - [select for diffs], Sat Oct 29 11:41:00 2022 UTC (16 months ago) by riastradh
Branch: MAIN
CVS Tags: netbsd-10-base
Branch point for: netbsd-10
Changes since 1.40: +50 -2 lines
Diff to previous 1.40 (colored)

workqueue(9): Sprinkle dtrace probes.

Revision 1.40 / (download) - annotate - [select for diffs], Mon Aug 15 11:43:56 2022 UTC (18 months, 2 weeks ago) by riastradh
Branch: MAIN
CVS Tags: bouyer-sunxi-drm-base, bouyer-sunxi-drm
Changes since 1.39: +6 -2 lines
Diff to previous 1.39 (colored)

workqueue(9): workqueue_wait and workqueue_destroy may sleep.

But might not, so assert sleepable up front.

Revision 1.39 / (download) - annotate - [select for diffs], Tue Sep 8 17:02:18 2020 UTC (3 years, 5 months ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-futex, 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
Changes since 1.38: +7 -15 lines
Diff to previous 1.38 (colored)

workqueue: Lift unnecessary restriction on workqueue_wait.

Allow multiple concurrent waits at a time, and allow enqueueing work
at the same time (as long as it's not the work we're waiting for).
This way multiple users can use a shared global workqueue and safely
wait for individual work items concurrently, while the workqueue is
still in use for other items (e.g., wg(4) peers).

This has the side effect of taking away a diagnostic measure, but I
think allowing the diagnostic's false positives instead of rejecting
them is worth it.  We could cheaply add it back with some false
negatives if it's important.

Revision 1.38 / (download) - annotate - [select for diffs], Sat Aug 1 02:14:43 2020 UTC (3 years, 7 months ago) by riastradh
Branch: MAIN
Changes since 1.37: +7 -2 lines
Diff to previous 1.37 (colored)

New workqueue flag WQ_FPU.

Arranges kthread_fpu_enter/exit around calls to the worker.  Saves
cost over explicit calls to kthread_fpu_enter/exit in the worker by
only doing it once, since there's often a high cost to flushing the
icache and zeroing the fpu registers.

As proposed on tech-kern:
https://mail-index.netbsd.org/tech-kern/2020/06/20/msg026524.html

Revision 1.36.2.1 / (download) - annotate - [select for diffs], Mon Jun 25 07:26:04 2018 UTC (5 years, 8 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.36: +5 -2 lines
Diff to previous 1.36 (colored) next main 1.37 (colored)

Sync with HEAD

Revision 1.33.30.3 / (download) - annotate - [select for diffs], Thu Jun 14 19:59:18 2018 UTC (5 years, 8 months ago) by martin
Branch: netbsd-8
CVS Tags: netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2
Changes since 1.33.30.2: +5 -2 lines
Diff to previous 1.33.30.2 (colored) to branchpoint 1.33 (colored) next main 1.34 (colored)

Pull up following revision(s) (requested by ozaki-r in ticket #879):

	sys/kern/subr_workqueue.c: revision 1.37

Don't wait on workqueue_wait if called from worker itself

Otherwise workqueue_wait never return in such a case.  This treatment
is the same as callout_halt.

Revision 1.37 / (download) - annotate - [select for diffs], Wed Jun 13 05:26:12 2018 UTC (5 years, 8 months ago) by ozaki-r
Branch: MAIN
CVS Tags: phil-wifi-base, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, phil-wifi-20190609, phil-wifi, 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, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, isaki-audio2-base, isaki-audio2, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Changes since 1.36: +5 -2 lines
Diff to previous 1.36 (colored)

Don't wait on workqueue_wait if called from worker itself

Otherwise workqueue_wait never return in such a case.  This treatment
is the same as callout_halt.

Revision 1.36 / (download) - annotate - [select for diffs], Tue Feb 6 03:48:39 2018 UTC (6 years ago) by ozaki-r
Branch: MAIN
CVS Tags: pgoyette-compat-base, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315
Branch point for: pgoyette-compat
Changes since 1.35: +3 -2 lines
Diff to previous 1.35 (colored)

Check the length of a passed name to avoid slient truncation

Revision 1.33.30.2 / (download) - annotate - [select for diffs], Mon Feb 5 14:55:16 2018 UTC (6 years ago) by martin
Branch: netbsd-8
CVS Tags: netbsd-8-0-RC1
Changes since 1.33.30.1: +18 -2 lines
Diff to previous 1.33.30.1 (colored) to branchpoint 1.33 (colored)

Pull up following revision(s) (requested by ozaki-r in ticket #528):
	sys/net/agr/if_agr.c: revision 1.42
	sys/netinet6/nd6_rtr.c: revision 1.137
	sys/netinet6/nd6_rtr.c: revision 1.138
	sys/net/agr/if_agr.c: revision 1.46
	sys/net/route.c: revision 1.206
	sys/net/if.c: revision 1.419
	sys/net/agr/if_agrether.c: revision 1.10
	sys/netinet6/nd6.c: revision 1.241
	sys/netinet6/nd6.c: revision 1.242
	sys/netinet6/nd6.c: revision 1.243
	sys/netinet6/nd6.c: revision 1.244
	sys/netinet6/nd6.c: revision 1.245
	sys/netipsec/ipsec_input.c: revision 1.52
	sys/netipsec/ipsec_input.c: revision 1.53
	sys/net/agr/if_agrsubr.h: revision 1.5
	sys/kern/subr_workqueue.c: revision 1.35
	sys/netipsec/ipsec.c: revision 1.124
	sys/net/agr/if_agrsubr.c: revision 1.11
	sys/net/agr/if_agrsubr.c: revision 1.12
Simplify; share agr_vlan_add and agr_vlan_del (NFCI)
Fix late NULL-checking (CID 1427782: Null pointer dereferences (REVERSE_INULL))
KNF: replace soft tabs with hard tabs
Add missing NULL-checking for m_pullup (CID 1427770: Null pointer dereferences (NULL_RETURNS))
Add locking.
Revert "Get rid of unnecessary splsoftnet" (v1.133)
It's not always true that softnet_lock is held these places.
See PR kern/52947.
Get rid of unnecessary splsoftnet (redo)
Unless NET_MPSAFE, splsoftnet is still needed for rt_* functions.
Use existing fill_[pd]rlist() functions to calculate size of buffer to
allocate, rather than relying on an arbitrary length passed in from
userland.
Allow copyout() of partial results if the user buffer is too small, to
be consistent with the way sysctl(3) is documented.
Garbage-collect now-unused third parrameter in the fill_[pd]rlist()
functions.
As discussed on IRC.
OK kamil@ and christos@
XXX Needs pull-up to netbsd-8 branch.
Simplify, from christos@
More simplification, this time from ozaki-r@
No need to break after return.
One more from christos@
No need to initialize fill_func
more cleanup (don't allow oldlenp == NULL)
Destroy ifq_lock at the end of if_detach
It still can be used in if_detach.
Prevent rt_free_global.wk from being enqueued to workqueue doubly
Check if a queued work is tried to be enqueued again, which is not allowed

Revision 1.35 / (download) - annotate - [select for diffs], Tue Jan 30 11:03:06 2018 UTC (6 years, 1 month ago) by ozaki-r
Branch: MAIN
Changes since 1.34: +18 -2 lines
Diff to previous 1.34 (colored)

Check if a queued work is tried to be enqueued again, which is not allowed

Revision 1.33.30.1 / (download) - annotate - [select for diffs], Tue Jan 16 13:01:10 2018 UTC (6 years, 1 month ago) by martin
Branch: netbsd-8
Changes since 1.33: +85 -18 lines
Diff to previous 1.33 (colored)

Pull up following revision(s) (requested by ozaki-r in ticket #497):
	tests/rump/rumpkern/Makefile: revision 1.16
	tests/rump/kernspace/Makefile: revision 1.6
	tests/rump/kernspace/workqueue.c: revision 1.1
	tests/rump/kernspace/workqueue.c: revision 1.2
	tests/rump/kernspace/workqueue.c: revision 1.3
	tests/rump/kernspace/workqueue.c: revision 1.4
	tests/rump/kernspace/workqueue.c: revision 1.5
	tests/rump/kernspace/workqueue.c: revision 1.6
	tests/rump/rumpkern/t_workqueue.c: revision 1.1
	sys/sys/workqueue.h: revision 1.10
	tests/rump/rumpkern/t_workqueue.c: revision 1.2
	tests/rump/kernspace/kernspace.h: revision 1.5
	tests/rump/kernspace/kernspace.h: revision 1.6
	sys/net/if_bridge.c: revision 1.147
	distrib/sets/lists/debug/mi: revision 1.225
	sys/kern/subr_workqueue.c: revision 1.34
	share/man/man9/workqueue.9: revision 1.12
	sys/net/if_spppsubr.c: revision 1.178
	distrib/sets/lists/tests/mi: revision 1.763
Add simple test for workqueue(9)
Add declaration. build fix
sorry, I forgot to commit this file.
Tweak use of cv_timedwait
- Handle its return value
- Specify more appropriate time-out periods (2 ticks is too short)
Fix a race condition on taking the mutex
The workqueue worker can take the mutex before the tester tries to take it after
calling workqueue_enqueue. If it happens, the worker calls cv_broadcast before
the tester calls cv_timedwait and the tester will wait until the cv timed out
Take the mutex before calling workqueue_enqueue so that the tester surely calls
cv_timedwait before the worker calls cv_broadcast.
The fix stabilizes the test, t_workqueue/workqueue1.
Add workqueue_wait that waits for a specific work to finish
The caller must ensure that no new work is enqueued before calling
workqueue_wait. Note that Note that if the workqueue is WQ_PERCPU, the caller
can enqueue a new work to another queue other than the waiting queue.
Discussed on tech-kern@
Ensure the timer isn't running by using workqueue_wait
Functionalize some routines to add new tests easily (NFC)
Add a test case for workqueue_wait
Fix build

Revision 1.34 / (download) - annotate - [select for diffs], Thu Dec 28 07:00:52 2017 UTC (6 years, 2 months ago) by ozaki-r
Branch: MAIN
Changes since 1.33: +85 -18 lines
Diff to previous 1.33 (colored)

Add workqueue_wait that waits for a specific work to finish

The caller must ensure that no new work is enqueued before calling
workqueue_wait. Note that Note that if the workqueue is WQ_PERCPU, the caller
can enqueue a new work to another queue other than the waiting queue.

Discussed on tech-kern@

Revision 1.32.12.1 / (download) - annotate - [select for diffs], Tue Nov 20 03:02:43 2012 UTC (11 years, 3 months ago) by tls
Branch: tls-maxphys
Changes since 1.32: +4 -2 lines
Diff to previous 1.32 (colored) next main 1.33 (colored)

Resync to 2012-11-19 00:00:00 UTC

Revision 1.32.2.1 / (download) - annotate - [select for diffs], Tue Oct 30 17:22:34 2012 UTC (11 years, 4 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.32: +4 -2 lines
Diff to previous 1.32 (colored) next main 1.33 (colored)

sync with head

Revision 1.33 / (download) - annotate - [select for diffs], Sun Oct 7 22:16:21 2012 UTC (11 years, 4 months ago) by matt
Branch: MAIN
CVS Tags: yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, tls-maxphys-base-20171202, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, rmind-smpnet-nbase, rmind-smpnet-base, rmind-smpnet, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, nick-nhusb, netbsd-8-base, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, matt-nb8-mediatek-base, matt-nb8-mediatek, localcount-20160914, khorben-n900, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, agc-symver-base, agc-symver
Branch point for: netbsd-8
Changes since 1.32: +4 -2 lines
Diff to previous 1.32 (colored)

If the workqueue is using a prio less than PRI_KERNEL, make sure KTHREAD_TS
is used when creating the kthread.

Revision 1.32 / (download) - annotate - [select for diffs], Sun Oct 23 21:41:23 2011 UTC (12 years, 4 months ago) by jym
Branch: MAIN
CVS Tags: 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.31: +5 -4 lines
Diff to previous 1.31 (colored)

Turn a workqueue(9) name into an array in the struct workqueue, rather
than a const char *. This avoids keeping a reference to a string
owned by caller (string could be allocated on stack).

Revision 1.31 / (download) - annotate - [select for diffs], Wed Jul 27 14:35:34 2011 UTC (12 years, 7 months ago) by uebayasi
Branch: MAIN
Changes since 1.30: +2 -4 lines
Diff to previous 1.30 (colored)

These don't need uvm/uvm_extern.h.

Revision 1.24.4.3 / (download) - annotate - [select for diffs], Thu Mar 11 15:04:19 2010 UTC (13 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.24.4.2: +2 -6 lines
Diff to previous 1.24.4.2 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored)

sync with head

Revision 1.30 / (download) - annotate - [select for diffs], Wed Nov 11 14:54:40 2009 UTC (14 years, 3 months ago) by rmind
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, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, matt-premerge-20091211, matt-mips64-premerge-20101231, jruoho-x86intr-base, jruoho-x86intr, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Changes since 1.29: +2 -4 lines
Diff to previous 1.29 (colored)

workqueue_finiqueue: remove unused variable.

Revision 1.29 / (download) - annotate - [select for diffs], Wed Oct 21 21:12:06 2009 UTC (14 years, 4 months ago) by rmind
Branch: MAIN
CVS Tags: jym-xensuspend-nbase
Changes since 1.28: +2 -4 lines
Diff to previous 1.28 (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.24.4.2 / (download) - annotate - [select for diffs], Wed Aug 19 18:48:17 2009 UTC (14 years, 6 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.24.4.1: +3 -3 lines
Diff to previous 1.24.4.1 (colored) to branchpoint 1.24 (colored)

sync with head.

Revision 1.28 / (download) - annotate - [select for diffs], Sun Aug 16 10:59:25 2009 UTC (14 years, 6 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7
Changes since 1.27: +3 -3 lines
Diff to previous 1.27 (colored)

struct lwp -> lwp_t for consistency

Revision 1.26.8.1 / (download) - annotate - [select for diffs], Wed May 13 17:21:57 2009 UTC (14 years, 9 months ago) by jym
Branch: jym-xensuspend
Changes since 1.26: +8 -2 lines
Diff to previous 1.26 (colored) next main 1.27 (colored)

Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.

Revision 1.24.4.1 / (download) - annotate - [select for diffs], Mon May 4 08:13:48 2009 UTC (14 years, 10 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.24: +11 -5 lines
Diff to previous 1.24 (colored)

sync with head.

Revision 1.26.2.1 / (download) - annotate - [select for diffs], Tue Apr 28 07:37:00 2009 UTC (14 years, 10 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.26: +8 -2 lines
Diff to previous 1.26 (colored) next main 1.27 (colored)

Sync with HEAD.

Revision 1.26.4.1 / (download) - annotate - [select for diffs], Sat Apr 4 16:58:25 2009 UTC (14 years, 11 months ago) by snj
Branch: netbsd-5
CVS Tags: 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-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, 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
Changes since 1.26: +8 -2 lines
Diff to previous 1.26 (colored) next main 1.27 (colored)

Pull up following revision(s) (requested by ad in ticket #651):
	sys/kern/subr_workqueue.c: revision 1.27
workqueue_finiqueue: our stack could be swapped out while enqueued to
a worker thread.

Revision 1.27 / (download) - annotate - [select for diffs], Fri Apr 3 19:34:19 2009 UTC (14 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base, jymxensuspend-base, jym-xensuspend-base
Changes since 1.26: +8 -2 lines
Diff to previous 1.26 (colored)

workqueue_finiqueue: our stack could be swapped out while enqueued to
a worker thread.

Revision 1.25.2.1 / (download) - annotate - [select for diffs], Sun Oct 19 22:17:28 2008 UTC (15 years, 4 months ago) by haad
Branch: haad-dm
Changes since 1.25: +4 -4 lines
Diff to previous 1.25 (colored) next main 1.26 (colored)

Sync with HEAD.

Revision 1.22.12.3 / (download) - annotate - [select for diffs], Sun Sep 28 10:40:53 2008 UTC (15 years, 5 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.22.12.2: +2 -2 lines
Diff to previous 1.22.12.2 (colored) to branchpoint 1.22 (colored) next main 1.23 (colored)

Sync with HEAD.

Revision 1.24.6.2 / (download) - annotate - [select for diffs], Wed Sep 24 16:38:57 2008 UTC (15 years, 5 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.24.6.1: +4 -4 lines
Diff to previous 1.24.6.1 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored)

Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.

Revision 1.24.6.1 / (download) - annotate - [select for diffs], Thu Sep 18 04:31:43 2008 UTC (15 years, 5 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.24: +3 -3 lines
Diff to previous 1.24 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.26 / (download) - annotate - [select for diffs], Mon Sep 15 10:43:29 2008 UTC (15 years, 5 months ago) by rmind
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, nick-hppapmap-base2, netbsd-5-base, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, mjf-devfs2-base, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap, netbsd-5, jym-xensuspend
Changes since 1.25: +4 -4 lines
Diff to previous 1.25 (colored)

Replace intptr_t in few places to uintptr_t.

Revision 1.24.8.1 / (download) - annotate - [select for diffs], Thu Jul 3 18:38:12 2008 UTC (15 years, 8 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.24: +3 -3 lines
Diff to previous 1.24 (colored) next main 1.25 (colored)

Sync with head.

Revision 1.22.12.2 / (download) - annotate - [select for diffs], Wed Jul 2 19:08:20 2008 UTC (15 years, 8 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.22.12.1: +1 -1 lines
Diff to previous 1.22.12.1 (colored) to branchpoint 1.22 (colored)

Sync with HEAD.

Revision 1.25 / (download) - annotate - [select for diffs], Wed Jul 2 14:47:34 2008 UTC (15 years, 8 months ago) by matt
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-2, simonb-wapbl-nbase, simonb-wapbl-base
Branch point for: haad-dm
Changes since 1.24: +3 -3 lines
Diff to previous 1.24 (colored)

Switch from KASSERT to CTASSERT for those asserts testing sizes of types.

Revision 1.22.12.1 / (download) - annotate - [select for diffs], Thu Apr 3 12:43:04 2008 UTC (15 years, 11 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.22: +7 -13 lines
Diff to previous 1.22 (colored)

Sync with HEAD.

Revision 1.24 / (download) - annotate - [select for diffs], Thu Mar 27 18:30:15 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, yamt-nfs-mp-base2, yamt-nfs-mp-base, wrstuden-revivesa-base-1, wrstuden-revivesa-base, hpcarm-cleanup-nbase
Branch point for: yamt-nfs-mp, wrstuden-revivesa, simonb-wapbl
Changes since 1.23: +6 -12 lines
Diff to previous 1.23 (colored)

Replace use of CACHE_LINE_SIZE in some obvious places.

Revision 1.22.8.1 / (download) - annotate - [select for diffs], Mon Mar 24 07:16:14 2008 UTC (15 years, 11 months ago) by keiichi
Branch: keiichi-mipv6
Changes since 1.22: +3 -3 lines
Diff to previous 1.22 (colored) next main 1.23 (colored)

sync with head.

Revision 1.21.2.2 / (download) - annotate - [select for diffs], Sun Mar 23 02:05:00 2008 UTC (15 years, 11 months ago) by matt
Branch: matt-armv6
Changes since 1.21.2.1: +3 -3 lines
Diff to previous 1.21.2.1 (colored) to branchpoint 1.21 (colored) next main 1.22 (colored)

sync with HEAD

Revision 1.3.6.7 / (download) - annotate - [select for diffs], Mon Mar 17 09:15:34 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3.6.6: +3 -3 lines
Diff to previous 1.3.6.6 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored)

sync with head.

Revision 1.23 / (download) - annotate - [select for diffs], Mon Mar 10 22:20:14 2008 UTC (15 years, 11 months ago) by martin
Branch: MAIN
CVS Tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, ad-socklock-base1
Changes since 1.22: +3 -3 lines
Diff to previous 1.22 (colored)

Use cpu index instead of the machine dependend, not very expressive
cpuid when naming user-visible kernel entities.

Revision 1.21.2.1 / (download) - annotate - [select for diffs], Wed Jan 9 01:56:20 2008 UTC (16 years, 1 month ago) by matt
Branch: matt-armv6
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored)

sync with HEAD

Revision 1.17.4.2 / (download) - annotate - [select for diffs], Sun Dec 9 19:38:25 2007 UTC (16 years, 2 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.17.4.1: +3 -3 lines
Diff to previous 1.17.4.1 (colored) to branchpoint 1.17 (colored) next main 1.18 (colored)

Sync with HEAD.

Revision 1.21.8.1 / (download) - annotate - [select for diffs], Sat Dec 8 18:20:38 2007 UTC (16 years, 2 months ago) by mjf
Branch: mjf-devfs
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored) next main 1.22 (colored)

Sync with HEAD.

Revision 1.21.10.1 / (download) - annotate - [select for diffs], Sat Dec 8 17:57:47 2007 UTC (16 years, 2 months ago) by ad
Branch: vmlocking2
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored) next main 1.22 (colored)

Sync with head.

Revision 1.3.6.6 / (download) - annotate - [select for diffs], Fri Dec 7 17:33:09 2007 UTC (16 years, 3 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3.6.5: +3 -3 lines
Diff to previous 1.3.6.5 (colored) to branchpoint 1.3 (colored)

sync with head

Revision 1.22 / (download) - annotate - [select for diffs], Wed Dec 5 07:06:54 2007 UTC (16 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-base, jmcneill-pm-base, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386
Branch point for: mjf-devfs2, keiichi-mipv6
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored)

Match the docs: MUTEX_DRIVER/SPIN are now only for porting code written
for Solaris.

Revision 1.3.6.5 / (download) - annotate - [select for diffs], Mon Sep 3 14:41:07 2007 UTC (16 years, 6 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3.6.4: +132 -63 lines
Diff to previous 1.3.6.4 (colored) to branchpoint 1.3 (colored)

sync with head.

Revision 1.12.2.7 / (download) - annotate - [select for diffs], Mon Aug 20 21:27:38 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.12.2.6: +93 -81 lines
Diff to previous 1.12.2.6 (colored) to branchpoint 1.12 (colored) next main 1.13 (colored)

Sync with HEAD.

Revision 1.15.2.1 / (download) - annotate - [select for diffs], Wed Aug 15 13:49:15 2007 UTC (16 years, 6 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.15: +93 -81 lines
Diff to previous 1.15 (colored) next main 1.16 (colored)

Sync with HEAD.

Revision 1.17.4.1 / (download) - annotate - [select for diffs], Thu Aug 9 02:37:20 2007 UTC (16 years, 6 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.17: +79 -75 lines
Diff to previous 1.17 (colored)

Sync with HEAD.

Revision 1.21 / (download) - annotate - [select for diffs], Tue Aug 7 12:50:26 2007 UTC (16 years, 7 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, vmlocking2-base1, vmlocking-nbase, vmlocking-base, nick-csl-alignment-base5, matt-armv6-prevmlocking, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: vmlocking2, mjf-devfs, matt-armv6
Changes since 1.20: +4 -18 lines
Diff to previous 1.20 (colored)

don't bother to set thread's priority by ourselves,
as kthread_create does it for us now.  from Andrew Doran.

Revision 1.20 / (download) - annotate - [select for diffs], Tue Aug 7 10:42:22 2007 UTC (16 years, 7 months ago) by yamt
Branch: MAIN
Changes since 1.19: +39 -54 lines
Diff to previous 1.19 (colored)

- don't assume the order of cpus in a CPU_INFO_FOREACH loop.
- remove unused structure members.
- simplify.

Revision 1.19.2.2 / (download) - annotate - [select for diffs], Sun Aug 5 13:47:26 2007 UTC (16 years, 7 months ago) by ad
Branch: matt-mips64
Changes since 1.19.2.1: +336 -0 lines
Diff to previous 1.19.2.1 (colored) to branchpoint 1.19 (colored) next main 1.20 (colored)

Current convention is to name/number objects after ci->ci_cpuid, so do
that when creating the kthreads. We may want to change this.

Revision 1.19.2.1, Sun Aug 5 13:47:25 2007 UTC (16 years, 7 months ago) by ad
Branch: matt-mips64
Changes since 1.19: +0 -336 lines
FILE REMOVED

file subr_workqueue.c was added on branch matt-mips64 on 2007-08-05 13:47:26 +0000

Revision 1.19 / (download) - annotate - [select for diffs], Sun Aug 5 13:47:25 2007 UTC (16 years, 7 months ago) by ad
Branch: MAIN
CVS Tags: matt-mips64-base
Branch point for: matt-mips64
Changes since 1.18: +3 -3 lines
Diff to previous 1.18 (colored)

Current convention is to name/number objects after ci->ci_cpuid, so do
that when creating the kthreads. We may want to change this.

Revision 1.18 / (download) - annotate - [select for diffs], Sun Aug 5 01:19:17 2007 UTC (16 years, 7 months ago) by rmind
Branch: MAIN
Changes since 1.17: +83 -50 lines
Diff to previous 1.17 (colored)

Improve per-CPU support for the workqueue(9):
 - Make structures CPU-cache friendly, as suggested and explained
   by Andrew Doran.  CACHE_LINE_SIZE definition is invented.
 - Use current CPU if NULL is passed to the workqueue_enqueue().
 - Implemented MI CPU index, which could be used as an index of array.
   Removed linked-lists usage for work queues.

The roundup2() function avoids division, but works only with power of 2.

Reviewed by: <ad>, <yamt>, <tech-kern>

Revision 1.17 / (download) - annotate - [select for diffs], Fri Jul 20 12:43:26 2007 UTC (16 years, 7 months ago) by yamt
Branch: MAIN
CVS Tags: hpcarm-cleanup
Branch point for: jmcneill-pm
Changes since 1.16: +16 -8 lines
Diff to previous 1.16 (colored)

hide internals of struct work.

Revision 1.16 / (download) - annotate - [select for diffs], Wed Jul 18 18:17:03 2007 UTC (16 years, 7 months ago) by ad
Branch: MAIN
Changes since 1.15: +3 -3 lines
Diff to previous 1.15 (colored)

workqueue_destroy: fix a use-after-free.

Revision 1.12.2.6 / (download) - annotate - [select for diffs], Sun Jul 15 13:27:44 2007 UTC (16 years, 7 months ago) by ad
Branch: vmlocking
Changes since 1.12.2.5: +77 -20 lines
Diff to previous 1.12.2.5 (colored) to branchpoint 1.12 (colored)

Sync with head.

Revision 1.15 / (download) - annotate - [select for diffs], Fri Jul 13 07:21:31 2007 UTC (16 years, 7 months ago) by rmind
Branch: MAIN
CVS Tags: nick-csl-alignment-base
Branch point for: nick-csl-alignment
Changes since 1.14: +18 -3 lines
Diff to previous 1.14 (colored)

Make MP parts friendly with various ports (especially UP):
 - #ifdef code parts, which uses CPU_INFO_FOREACH/CPU_INFO_ITERATOR
 - use ci_cpuid only in MP case
 - include machine/cpu.h

Revision 1.14 / (download) - annotate - [select for diffs], Thu Jul 12 20:39:56 2007 UTC (16 years, 7 months ago) by rmind
Branch: MAIN
Changes since 1.13: +65 -23 lines
Diff to previous 1.13 (colored)

Implementation of per-CPU work-queues support for workqueue(9) interface.
WQ_PERCPU flag for workqueue and additional argument for workqueue_enqueue()
to assign a CPU might be used. Notes:
 - For now, the list is used for workqueue_queue, which is non-optimal,
   and will be changed with array, where index would be CPU ID.
 - The data structures should be changed to be cache-friendly.

Reviewed by: <yamt>, <tech-kern>

Revision 1.12.4.1 / (download) - annotate - [select for diffs], Wed Jul 11 20:10:08 2007 UTC (16 years, 7 months ago) by mjf
Branch: mjf-ufs-trans
Changes since 1.12: +12 -12 lines
Diff to previous 1.12 (colored) next main 1.13 (colored)

Sync with head.

Revision 1.13 / (download) - annotate - [select for diffs], Mon Jul 9 21:10:55 2007 UTC (16 years, 7 months ago) by ad
Branch: MAIN
CVS Tags: mjf-ufs-trans-base
Changes since 1.12: +12 -12 lines
Diff to previous 1.12 (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.12.2.5 / (download) - annotate - [select for diffs], Sun Jul 1 19:48:28 2007 UTC (16 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.12.2.4: +3 -3 lines
Diff to previous 1.12.2.4 (colored) to branchpoint 1.12 (colored)

s/MUTEX_SPIN/MUTEX_DRIVER/ as it's called with IPL_NONE now.

Revision 1.12.2.4 / (download) - annotate - [select for diffs], Sun May 13 17:36:36 2007 UTC (16 years, 9 months ago) by ad
Branch: vmlocking
Changes since 1.12.2.3: +6 -5 lines
Diff to previous 1.12.2.3 (colored) to branchpoint 1.12 (colored)

- Pass the error number and residual count to biodone(), and let it handle
  setting error indicators. Prepare to eliminate B_ERROR.
- Add a flag argument to brelse() to be set into the buf's flags, instead
  of doing it directly. Typically used to set B_INVAL.
- Add a "struct cpu_info *" argument to kthread_create(), to be used to
  create bound threads. Change "bool mpsafe" to "int flags".
- Allow exit of LWPs in the IDL state when (l != curlwp).
- More locking fixes & conversion to the new API.

Revision 1.12.2.3 / (download) - annotate - [select for diffs], Tue Apr 10 11:37:02 2007 UTC (16 years, 10 months ago) by ad
Branch: vmlocking
Changes since 1.12.2.2: +6 -6 lines
Diff to previous 1.12.2.2 (colored) to branchpoint 1.12 (colored)

Allow workqueues to be marked as MP safe.

Revision 1.12.2.2 / (download) - annotate - [select for diffs], Tue Apr 10 00:06:44 2007 UTC (16 years, 10 months ago) by ad
Branch: vmlocking
Changes since 1.12.2.1: +6 -6 lines
Diff to previous 1.12.2.1 (colored) to branchpoint 1.12 (colored)

- Add two new arguments to kthread_create1: pri_t pri, bool mpsafe.
- Fork kthreads off proc0 as new LWPs, not new processes.

Revision 1.12.2.1 / (download) - annotate - [select for diffs], Wed Mar 21 19:59:18 2007 UTC (16 years, 11 months ago) by ad
Branch: vmlocking
Changes since 1.12: +3 -4 lines
Diff to previous 1.12 (colored)

Eliminate a needless test.

Revision 1.11.2.1 / (download) - annotate - [select for diffs], Tue Feb 27 16:54:30 2007 UTC (17 years ago) by yamt
Branch: yamt-idlelwp
Changes since 1.11: +5 -5 lines
Diff to previous 1.11 (colored) next main 1.12 (colored)

- sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.

Revision 1.12 / (download) - annotate - [select for diffs], Tue Feb 27 15:07:29 2007 UTC (17 years ago) by yamt
Branch: MAIN
CVS Tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Changes since 1.11: +5 -5 lines
Diff to previous 1.11 (colored)

typedef pri_t and use it instead of int and u_char.

Revision 1.3.6.4 / (download) - annotate - [select for diffs], Mon Feb 26 09:11:16 2007 UTC (17 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3.6.3: +35 -60 lines
Diff to previous 1.3.6.3 (colored) to branchpoint 1.3 (colored)

sync with head.

Revision 1.11 / (download) - annotate - [select for diffs], Sun Feb 11 15:37:20 2007 UTC (17 years ago) by yamt
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Branch point for: yamt-idlelwp
Changes since 1.10: +3 -4 lines
Diff to previous 1.10 (colored)

workqueue_exit: update a comment.

Revision 1.10 / (download) - annotate - [select for diffs], Sun Feb 11 15:36:35 2007 UTC (17 years ago) by yamt
Branch: MAIN
Changes since 1.9: +5 -5 lines
Diff to previous 1.9 (colored)

use cv_signal rather than cv_broadcast where appropriate.

Revision 1.9 / (download) - annotate - [select for diffs], Fri Feb 9 21:55:31 2007 UTC (17 years ago) by ad
Branch: MAIN
CVS Tags: post-newlock2-merge
Changes since 1.8: +34 -58 lines
Diff to previous 1.8 (colored)

Merge newlock2 to head.

Revision 1.3.10.5 / (download) - annotate - [select for diffs], Sat Feb 3 16:32:50 2007 UTC (17 years, 1 month ago) by ad
Branch: newlock2
Changes since 1.3.10.4: +5 -9 lines
Diff to previous 1.3.10.4 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored)

- Require that cv_signal/cv_broadcast be called with the interlock held.
- Provide 'async' versions that's don't need the interlock.

Revision 1.3.10.4 / (download) - annotate - [select for diffs], Thu Jan 25 20:18:37 2007 UTC (17 years, 1 month ago) by ad
Branch: newlock2
Changes since 1.3.10.3: +20 -21 lines
Diff to previous 1.3.10.3 (colored) to branchpoint 1.3 (colored)

Eliminate some uses of mtsleep().

Revision 1.3.10.3 / (download) - annotate - [select for diffs], Fri Jan 12 01:04:07 2007 UTC (17 years, 1 month ago) by ad
Branch: newlock2
Changes since 1.3.10.2: +7 -7 lines
Diff to previous 1.3.10.2 (colored) to branchpoint 1.3 (colored)

Sync with head.

Revision 1.3.6.3 / (download) - annotate - [select for diffs], Sat Dec 30 20:50:06 2006 UTC (17 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3.6.2: +65 -13 lines
Diff to previous 1.3.6.2 (colored) to branchpoint 1.3 (colored)

sync with head.

Revision 1.8 / (download) - annotate - [select for diffs], Thu Dec 21 15:55:25 2006 UTC (17 years, 2 months ago) by yamt
Branch: MAIN
CVS Tags: newlock2-nbase, newlock2-base
Changes since 1.7: +4 -8 lines
Diff to previous 1.7 (colored)

merge yamt-splraiseipl branch.

	- finish implementing splraiseipl (and makeiplcookie).
	  http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
	- complete workqueue(9) and fix its ipl problem, which is reported
	  to cause audio skipping.
	- fix netbt (at least compilation problems) for some ports.
	- fix PR/33218.

Revision 1.5.2.4 / (download) - annotate - [select for diffs], Sun Dec 10 07:18:45 2006 UTC (17 years, 2 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.5.2.3: +6 -6 lines
Diff to previous 1.5.2.3 (colored) to branchpoint 1.5 (colored) next main 1.6 (colored)

sync with head.

Revision 1.3.10.2 / (download) - annotate - [select for diffs], Sat Nov 18 21:39:23 2006 UTC (17 years, 3 months ago) by ad
Branch: newlock2
Changes since 1.3.10.1: +63 -7 lines
Diff to previous 1.3.10.1 (colored) to branchpoint 1.3 (colored)

Sync with head.

Revision 1.7 / (download) - annotate - [select for diffs], Wed Nov 1 10:17:59 2006 UTC (17 years, 4 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-nb4-arm-base, matt-nb4-arm
Changes since 1.6: +6 -6 lines
Diff to previous 1.6 (colored)

remove some __unused from function parameters.

Revision 1.5.2.3 / (download) - annotate - [select for diffs], Sun Oct 22 06:07:11 2006 UTC (17 years, 4 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.5.2.2: +6 -6 lines
Diff to previous 1.5.2.2 (colored) to branchpoint 1.5 (colored)

sync with head

Revision 1.6 / (download) - annotate - [select for diffs], Thu Oct 12 01:32:18 2006 UTC (17 years, 4 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2
Changes since 1.5: +6 -6 lines
Diff to previous 1.5 (colored)

- sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386

Revision 1.5.2.2 / (download) - annotate - [select for diffs], Mon Sep 18 10:41:45 2006 UTC (17 years, 5 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.5.2.1: +0 -4 lines
Diff to previous 1.5.2.1 (colored) to branchpoint 1.5 (colored)

don't bother to wrap splraiseipl and IPL_xxx with #if notyet.

Revision 1.5.2.1 / (download) - annotate - [select for diffs], Mon Sep 18 10:05:26 2006 UTC (17 years, 5 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.5: +2 -2 lines
Diff to previous 1.5 (colored)

adapt to new api.  (#if 0'ed code)

Revision 1.5 / (download) - annotate - [select for diffs], Sat Sep 16 11:15:00 2006 UTC (17 years, 5 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-splraiseipl-base
Branch point for: yamt-splraiseipl
Changes since 1.4: +58 -0 lines
Diff to previous 1.4 (colored)

add workqueue_destroy().

Revision 1.4 / (download) - annotate - [select for diffs], Sat Sep 16 11:14:36 2006 UTC (17 years, 5 months ago) by yamt
Branch: MAIN
Changes since 1.3: +5 -7 lines
Diff to previous 1.3 (colored)

workqueue_create: use kmem_alloc rather than malloc.

Revision 1.3.10.1 / (download) - annotate - [select for diffs], Mon Sep 11 00:05:43 2006 UTC (17 years, 5 months ago) by ad
Branch: newlock2
Changes since 1.3: +11 -34 lines
Diff to previous 1.3 (colored)

Use mutexes to protect workqueues.

Revision 1.2.4.1 / (download) - annotate - [select for diffs], Sat Sep 9 02:57:16 2006 UTC (17 years, 5 months ago) by rpaulo
Branch: rpaulo-netinet-merge-pcb
Changes since 1.2: +3 -3 lines
Diff to previous 1.2 (colored) next main 1.3 (colored)

sync with head

Revision 1.3.6.2 / (download) - annotate - [select for diffs], Wed Jun 21 15:09:38 2006 UTC (17 years, 8 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3.6.1: +211 -0 lines
Diff to previous 1.3.6.1 (colored) to branchpoint 1.3 (colored)

sync with head.

Revision 1.2.6.1 / (download) - annotate - [select for diffs], Thu Jun 1 22:38:09 2006 UTC (17 years, 9 months ago) by kardel
Branch: simonb-timecounters
CVS Tags: simonb-timcounters-final
Changes since 1.2: +3 -3 lines
Diff to previous 1.2 (colored) next main 1.3 (colored)

Sync with head.

Revision 1.2.12.1 / (download) - annotate - [select for diffs], Wed May 24 15:50:41 2006 UTC (17 years, 9 months ago) by tron
Branch: peter-altq
Changes since 1.2: +3 -3 lines
Diff to previous 1.2 (colored) next main 1.3 (colored)

Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.

Revision 1.2.8.1 / (download) - annotate - [select for diffs], Wed May 24 10:58:41 2006 UTC (17 years, 9 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.2: +3 -3 lines
Diff to previous 1.2 (colored) next main 1.3 (colored)

sync with head.

Revision 1.2.10.1 / (download) - annotate - [select for diffs], Thu May 11 23:30:15 2006 UTC (17 years, 9 months ago) by elad
Branch: elad-kernelauth
Changes since 1.2: +3 -3 lines
Diff to previous 1.2 (colored) next main 1.3 (colored)

sync with head

Revision 1.3.6.1, Tue May 2 13:26:07 2006 UTC (17 years, 10 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3: +0 -211 lines
FILE REMOVED

file subr_workqueue.c was added on branch yamt-lazymbuf on 2006-06-21 15:09:38 +0000

Revision 1.3 / (download) - annotate - [select for diffs], Tue May 2 13:26:07 2006 UTC (17 years, 10 months ago) by rpaulo
Branch: MAIN
CVS Tags: yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, yamt-pdpolicy-base5, simonb-timecounters-base, rpaulo-netinet-merge-pcb-base, gdamore-uart-base, gdamore-uart, elad-kernelauth-base, chap-midi-nbase, chap-midi-base, chap-midi, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-lazymbuf, newlock2
Changes since 1.2: +3 -3 lines
Diff to previous 1.2 (colored)

Use for in a forever loop as per KNF.

Revision 1.2 / (download) - annotate - [select for diffs], Sun Dec 11 12:24:30 2005 UTC (18 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base
Branch point for: yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb, peter-altq, elad-kernelauth
Changes since 1.1: +2 -2 lines
Diff to previous 1.1 (colored)

merge ktrace-lwp.

Revision 1.1.4.2 / (download) - annotate - [select for diffs], Thu Nov 10 14:09:45 2005 UTC (18 years, 3 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.1.4.1: +211 -0 lines
Diff to previous 1.1.4.1 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored)

Sync with HEAD. Here we go again...

Revision 1.1.2.2 / (download) - annotate - [select for diffs], Wed Nov 2 11:58:11 2005 UTC (18 years, 4 months ago) by yamt
Branch: yamt-vop
Changes since 1.1.2.1: +211 -0 lines
Diff to previous 1.1.2.1 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored)

sync with head.

Revision 1.1.4.1, Sat Oct 29 11:10:37 2005 UTC (18 years, 4 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.1: +0 -211 lines
FILE REMOVED

file subr_workqueue.c was added on branch ktrace-lwp on 2005-11-10 14:09:45 +0000

Revision 1.1.2.1, Sat Oct 29 11:10:37 2005 UTC (18 years, 4 months ago) by yamt
Branch: yamt-vop
Changes since 1.1: +0 -211 lines
FILE REMOVED

file subr_workqueue.c was added on branch yamt-vop on 2005-11-02 11:58:11 +0000

Revision 1.1 / (download) - annotate - [select for diffs], Sat Oct 29 11:10:37 2005 UTC (18 years, 4 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, ktrace-lwp-base
Branch point for: yamt-vop, ktrace-lwp

add a simple "do it in thread context" framework.

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>