Home | History | Annotate | Download | only in sysmon
History log of /src/sys/dev/sysmon/sysmon_taskq.c
RevisionDateAuthorComments
 1.23  31-Dec-2021  riastradh sysmon(9): Fix mistake in sysmon_task_queue_barrier.

Need to allocate the task structure with malloc(9), not on the stack;
the task thread will free it with free(9). Forgot to squash this
into previous commit.
 1.22  31-Dec-2021  riastradh sysmon(9): New sysmon_task_queue_barrier(pri) function.

This waits for the completion of all tasks at priority pri or lower
that are currently queued at the time of the call.
 1.21  31-Dec-2021  riastradh sysmon: Delete trailing whitespace. No functional change intended.
 1.20  08-Feb-2018  dholland Typos.
 1.19  28-Apr-2015  martin sysmon_task_queue_sched needs to RUN_ONCE(tq_preinit) as well, it can
be called from sysmon_envsys_register() early.
 1.18  27-Apr-2015  pgoyette Replace a home-grown run-once implementation with the real RUN_ONCE()
 1.17  24-Apr-2015  pgoyette This really does need to return an error code, so change the
sysmon_task_queue_fini() function to have a non-void type.
 1.16  24-Apr-2015  agc It's a function returning void; don't return an error code.
 1.15  23-Apr-2015  pgoyette Modularize sysmon and its components
 1.14  05-Sep-2008  gmcgarry branches: 1.14.38; 1.14.58;
Rearrange code in the sysmon queue execution thread to simplify locking logic.
Removes unreachable code warning.
 1.13  06-Apr-2008  xtraeme branches: 1.13.4; 1.13.6; 1.13.10;
Pass KTHREAD_MPSAFE to kthread_create(). I've been testing this for
some weeks in both UP and SMP without any issue so far.
 1.12  04-Jan-2008  ad branches: 1.12.6;
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.
 1.11  05-Dec-2007  ad branches: 1.11.4;
Match the docs: MUTEX_DRIVER/SPIN are now only for porting code written
for Solaris.
 1.10  21-Jul-2007  xtraeme branches: 1.10.4; 1.10.6; 1.10.12; 1.10.14; 1.10.16;
Convert sysmon_taskqueue to use mutex(9) and condvar(9) and initialize
them in init_main.c via sysmon_task_queue_preinit().

Reviewed and ok by ad@.
 1.9  09-Jul-2007  ad branches: 1.9.2;
Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements
 1.8  27-Jun-2007  xtraeme Use aprint_debug rather than printf for the annoying message
"WARNING: Callback scheduled before sysmon task queue thread present.".
 1.7  16-Nov-2006  christos branches: 1.7.8; 1.7.10;
__unused removal on arguments; approved by core.
 1.6  12-Oct-2006  christos - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
 1.5  11-Dec-2005  christos branches: 1.5.20; 1.5.22;
merge ktrace-lwp.
 1.4  29-May-2005  christos branches: 1.4.2;
- add const
- avoid variable shadowing.
 1.3  06-Sep-2003  christos Rename the thread command name so that it fits on top's display.
 1.2  14-Jul-2003  lukem add missing __KERNEL_RCSID()
 1.1  20-Apr-2003  thorpej branches: 1.1.2;
Generic "task queue" for sysmon back-ends. This provides a thread
context for callbacks that require it in order to handle sysmon-related
events.

Adapted from the "OsdSchedule" bits of the ACPI code.
 1.1.2.4  10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.1.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.1.2.1  03-Aug-2004  skrll Sync with HEAD
 1.4.2.3  21-Jan-2008  yamt sync with head
 1.4.2.2  07-Dec-2007  yamt sync with head
 1.4.2.1  03-Sep-2007  yamt sync with head.
 1.5.22.2  10-Dec-2006  yamt sync with head.
 1.5.22.1  22-Oct-2006  yamt sync with head
 1.5.20.1  18-Nov-2006  ad Sync with head.
 1.7.10.1  11-Jul-2007  mjf Sync with head.
 1.7.8.5  20-Aug-2007  ad Sync with HEAD.
 1.7.8.4  15-Jul-2007  ad Sync with head.
 1.7.8.3  13-May-2007  ad - 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.
 1.7.8.2  10-Apr-2007  ad Nuke the deferred kthread creation stuff, as it's no longer needed.
Pointed out by thorpej@.
 1.7.8.1  09-Apr-2007  ad - Add two new arguments to kthread_create1: pri_t pri, bool mpsafe.
- Fork kthreads off proc0 as new LWPs, not new processes.
 1.9.2.1  15-Aug-2007  skrll Sync with HEAD.
 1.10.16.2  21-Jul-2007  xtraeme Convert sysmon_taskqueue to use mutex(9) and condvar(9) and initialize
them in init_main.c via sysmon_task_queue_preinit().

Reviewed and ok by ad@.
 1.10.16.1  21-Jul-2007  xtraeme file sysmon_taskq.c was added on branch matt-mips64 on 2007-07-21 23:15:17 +0000
 1.10.14.1  08-Dec-2007  ad Sync with head.
 1.10.12.2  18-Feb-2008  mjf Sync with HEAD.
 1.10.12.1  08-Dec-2007  mjf Sync with HEAD.
 1.10.6.1  09-Jan-2008  matt sync with HEAD
 1.10.4.1  09-Dec-2007  jmcneill Sync with HEAD.
 1.11.4.1  08-Jan-2008  bouyer Sync with HEAD
 1.12.6.2  28-Sep-2008  mjf Sync with HEAD.
 1.12.6.1  02-Jun-2008  mjf Sync with HEAD.
 1.13.10.1  19-Oct-2008  haad Sync with HEAD.
 1.13.6.1  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.13.4.1  04-May-2009  yamt sync with head.
 1.14.58.1  06-Jun-2015  skrll Sync with HEAD
 1.14.38.1  03-Dec-2017  jdolecek update from HEAD

RSS XML Feed