QRES public interface for use by other kernel modules. More...
#include "qres_gw.h"
#include "qsup.h"
#include <linux/aquosa/qos_debug.h>
#include <linux/aquosa/rres_interface.h>
#include <linux/aquosa/rres_kpi_protected.h>
Go to the source code of this file.
Data Structures | |
struct | qres_server |
Main QRES Server struct, conceptually extends the RRES Server struct (in a OO fashion). More... | |
Typedefs | |
typedef struct qres_server | qres_server_t |
Main QRES Server struct, conceptually extends the RRES Server struct (in a OO fashion). | |
Functions | |
static qres_server_t * | qres_find_by_rres (server_t *srv) |
static kal_lock_t * | qres_get_lock (void) |
Return a spinlock_t suitable for synchronizing against concurrent requests made through the QRES device interface. | |
qos_rv | qres_init (void) |
Perform QoS Res/Sup initialization. | |
qos_rv | qres_cleanup (void) |
Perform QoS Res and Sup cleanup. | |
qos_rv | qres_create_server (qres_params_t *param, qres_sid_t *p_sid) |
Create a new server for the specified task with provided parameters. | |
qos_rv | qres_init_server (qres_server_t *srv, qres_params_t *param) |
qos_rv | qres_destroy_server (qres_server_t *srv) |
Detach all tasks from from the specified server, and destroy the server. | |
qos_rv | _qres_cleanup_server (server_t *srv) |
Virtual destructor override. | |
qos_rv | qres_attach_task (qres_server_t *qres, struct task_struct *tsk) |
Attach to the server identified by srv_id the task identified by tsk. | |
qos_rv | qres_detach_task (qres_server_t *qres, struct task_struct *tsk) |
Detach the specified task from its server and, if no other tasks reside therein, destroy the server. | |
qos_rv | qres_set_params (qres_server_t *qres, qres_params_t *param) |
Change scheduling parameters of the server to which the specified task is attached. | |
qos_rv | qres_get_params (qres_server_t *srv, qres_params_t *params) |
Get the scheduling parameters of the server attached to the specified task. | |
qos_rv | qres_get_exec_abs_time (qres_server_t *qres, qres_time_t *exec_time, qres_atime_t *abs_time) |
This is used by QMGR kernel mod, too. | |
qres_time_t | qres_get_curr_budget (qres_server_t *qres) |
Retrieve the remaining budget for the current server instance. | |
qres_time_t | qres_get_next_budget (qres_server_t *qres) |
Retrieve the budget to be used for the very next server instance. | |
qres_time_t | qres_get_appr_budget (qres_server_t *qres) |
Retrieve the budget approved for the subsequent server instances. | |
qos_rv | qres_get_deadline (qres_server_t *qres, struct timespec *p_deadline) |
Retrieve the current server deadline. | |
kal_uid_t | qres_get_owner_uid (qres_server_t *qres) |
Retrieve the owner UID for the current server. | |
kal_gid_t | qres_get_owner_gid (qres_server_t *qres) |
Retrieve the owner GID for the current server. | |
static qres_server_t * | qres_find_by_id (qres_sid_t sid) |
QRES public interface for use by other kernel modules.
Definition in file qres_interface.h.