Opened on 04/23/12 at 12:50:06
Closed on 12/03/13 at 15:04:53
#2056 closed defect (fixed)
libqos conversion from uint32_t to time_t
Reported by: | Gedare Bloom | Owned by: | Joel Sherrill |
---|---|---|---|
Priority: | normal | Milestone: | 4.11 |
Component: | score | Version: | 4.11 |
Severity: | normal | Keywords: | |
Cc: | ralf.corsepius@…, petben@… | Blocked By: | |
Blocking: |
Description
I think there is a casting in libqos that assumes time_t is equivalent to uint32_t.
In schedulercbs.h we have
typedef struct {
/ Relative deadline of the server. */
time_t deadline;
/ Budget (computation time) of the server. */
time_t budget;
} Scheduler_CBS_Parameters;
In qreslib.h we have
typedef struct {
/ Relative deadline of the server. */
uint32_t P;
/ Budget (computation time) of the server. */
uint32_t Q;
} qres_params_t;
RTEMS_INLINE_ROUTINE qos_rv qres_create_server (
qres_params_t *params,
qres_sid_t *server_id
)
{
return _Scheduler_CBS_Create_server(
(Scheduler_CBS_Parameters *) params,
NULL,
server_id
);
}
Looking at the AquosA api http://aquosa.sourceforge.net/aquosa-docs/aquosa-qosres/html/ I think we should be defining the qres_params_t in terms of qres_time_t instead of uint32_t, which means the structures should be identical.
I think we can fix this just by typedef Scheduler_CBS_Parameters qres_params_t;
Attachments (1)
Change History (5)
comment:1 Changed on 04/23/12 at 12:50:28 by Gedare Bloom
Cc: | Petr Benes added |
---|
Changed on 04/23/12 at 12:58:51 by Gedare Bloom
Attachment: | 0001-PR2056-libqos-conversion-from-uint32_t-to-time_t.patch added |
---|
comment:2 Changed on 04/23/12 at 14:43:02 by Ralf Corsepius
Cc: | Ralf Corsepius added |
---|
comment:3 Changed on 12/03/13 at 15:04:53 by Gedare Bloom
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:4 Changed on 11/24/14 at 18:58:28 by Gedare Bloom
Version: | HEAD → 4.11 |
---|
Replace Version=HEAD with Version=4.11 for the tickets with Milestone >= 4.11
fix qres_params_t