/**
* @brief Set cpu boosting for the target process (pid/tids).
*
+ * @remarks The original cpu schedule configuration of the target process is backed up if it is currently not boosted. \n
* @param[in] pid The target process pid/tids \n
- * If pid.pid is nonzero, pid.tid and pid.tid_count are ignored. \n
+ * If pid.pid is nonzero, pid.tid and pid.tid_count are ignored, \n
+ * and cpu boosting is applied for all the threads of pid.pid. \n
* If pid.pid is zero and pid.tid is not NULL, all tids in the list are used \n
- * If pid.pid is zero and pid.tid is NULL, pid of the calling thread is used. \n
+ * If pid.pid is zero and pid.tid is NULL, tid of the calling thread is used. \n
* The caller must (de)allocate the buffer in the pid.tid pointer.
* @param[in] level The cpu boosting level
* @param[in] timeout_msec The timeout in milliseconds, -1 to apply boosting permanently
/**
* @brief Clear cpu boosting for the target process (pid/tids).
*
+ * @remarks The backed-up cpu schedule configuration of the target process is restored. \n
+ * Without the backed-up configuration, the default non-boosting configuration (SCHED_OTHER and nice=0) is applied. \n
* @param[in] pid The target process pid/tids \n
- * If pid.pid is nonzero, pid.tid and pid.tid_count are ignored. \n
+ * If pid.pid is nonzero, pid.tid and pid.tid_count are ignored, \n
+ * and cpu boosting is cleared for all the threads of pid.pid. \n
* If pid.pid is zero and pid.tid is not NULL, all tids in the list are used \n
- * If pid.pid is zero and pid.tid is NULL, pid of the calling thread is used. \n
+ * If pid.pid is zero and pid.tid is NULL, tid of the calling thread is used. \n
* The caller must (de)allocate the buffer in the pid.tid pointer.
*
* @return 0 on success, otherwise a negative error value.
* @brief Get the cpu boosting level for the target process (pid/tids).
*
* @param[in] pid The target process pid/tids \n
- * If pid.pid is nonzero, pid.tid and pid.tid_count are ignored. \n
- * If pid.pid is zero and pid.tid is not NULL, all tids in the list are used \n
- * If pid.pid is zero and pid.tid is NULL, pid of the calling thread is used. \n
+ * If pid.pid is nonzero, pid.tid and pid.tid_count are ignored, \n
+ * and all the threads of pid.pid are checked. \n
+ * If pid.pid is zero and pid.tid is not NULL, all tids in the list are checked. \n
+ * If pid.pid is zero and pid.tid is NULL, the calling thread is checked. \n
* The caller must (de)allocate the buffer in the pid.tid pointer.
* @param[out] level The boosting level for the target process (pid/tids) \n
- * The level argument will be filled with the level value corresponding to the pid argument. \n
+ * The level->tid_level array will be filled with cpu_boosting_level_e for tids requested by the pid argument. \n
* The caller must (de)allocate the buffer in the level.tid_level pointer.
*
* @return 0 on success, otherwise a negative error value.
* @param[in] dest_process The name of destination process
* @param[in] pid The destination process pid/tids \n
* If pid.pid is nonzero, pid.tid and pid.tid_count are ignored. \n
+ * and all the threads of pid.pid are registered. \n
* If pid.pid is zero and pid.tid is not NULL, all tids in the list are used \n
* If pid.pid is zero and pid.tid is NULL, pid of the calling thread is used. \n
* The caller must (de)allocate the buffer in the pid.tid pointer.