Fix compile error when using rusage functionality on FreeRTOS
Signed-off-by: Thijs Sassen <thijs.sassen@adlinktech.com>
This commit is contained in:
parent
378b4b19d7
commit
0b57b74b93
2 changed files with 4 additions and 3 deletions
|
@ -27,6 +27,7 @@ typedef struct {
|
||||||
} ddsrt_thread_t;
|
} ddsrt_thread_t;
|
||||||
|
|
||||||
typedef UBaseType_t ddsrt_tid_t;
|
typedef UBaseType_t ddsrt_tid_t;
|
||||||
|
typedef TaskHandle_t ddsrt_thread_list_id_t;
|
||||||
#define PRIdTID "lu"
|
#define PRIdTID "lu"
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
|
|
|
@ -66,13 +66,13 @@ rusage_self(ddsrt_rusage_t *usage)
|
||||||
}
|
}
|
||||||
|
|
||||||
static dds_return_t
|
static dds_return_t
|
||||||
rusage_thread(ddsrt_rusage_t *usage)
|
rusage_thread(ddsrt_thread_list_id_t tid, ddsrt_rusage_t *usage)
|
||||||
{
|
{
|
||||||
TaskStatus_t states;
|
TaskStatus_t states;
|
||||||
|
|
||||||
memset(usage, 0, sizeof(*usage));
|
memset(usage, 0, sizeof(*usage));
|
||||||
memset(&states, 0, sizeof(states));
|
memset(&states, 0, sizeof(states));
|
||||||
vTaskGetInfo(xTaskGetCurrentTaskHandle(), &states, pdFALSE, eInvalid);
|
vTaskGetInfo(tid, &states, pdFALSE, eInvalid);
|
||||||
usage->stime = states.ulRunTimeCounter * DDSRT_NSECS_IN_RUSAGE_TIME_BASE;
|
usage->stime = states.ulRunTimeCounter * DDSRT_NSECS_IN_RUSAGE_TIME_BASE;
|
||||||
|
|
||||||
return DDS_RETCODE_OK;
|
return DDS_RETCODE_OK;
|
||||||
|
@ -97,7 +97,7 @@ ddsrt_getrusage(enum ddsrt_getrusage_who who, ddsrt_rusage_t *usage)
|
||||||
assert(usage != NULL);
|
assert(usage != NULL);
|
||||||
|
|
||||||
if (who == DDSRT_RUSAGE_THREAD) {
|
if (who == DDSRT_RUSAGE_THREAD) {
|
||||||
rc = rusage_thread_anythread(xTaskGetCurrentTaskHandle(), usage);
|
rc = ddsrt_getrusage_anythread(xTaskGetCurrentTaskHandle(), usage);
|
||||||
} else {
|
} else {
|
||||||
rc = rusage_self(usage);
|
rc = rusage_self(usage);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue