Bug #428 » 0001-Fix-remove-consumer-health-poll-update-on-startup.patch
src/bin/lttng-sessiond/main.c | ||
---|---|---|
health_register(HEALTH_TYPE_CONSUMER);
|
||
/*
|
||
* Since the consumer thread can be spawned at any moment in time, we init
|
||
* the health to a poll status (1, which is a valid health over time).
|
||
* When the thread starts, we update here the health to a "code" path being
|
||
* an even value so this thread, when reaching a poll wait, does not
|
||
* trigger an error with an even value.
|
||
*
|
||
* Here is the use case we avoid.
|
||
*
|
||
* +1: the first poll update during initialization (main())
|
||
* +2 * x: multiple code update once in this thread.
|
||
* +1: poll wait in this thread (being a good health state).
|
||
* == even number which after the wait period shows as a bad health.
|
||
*
|
||
* In a nutshell, the following poll update to the health state brings back
|
||
* the state to an even value meaning a code path.
|
||
*/
|
||
health_poll_update();
|
||
health_code_update();
|
||
/*
|
||
* Pass 2 as size here for the thread quit pipe and kconsumerd_err_sock.
|
- « Previous
- 1
- 2
- Next »