Skip to content

[PATCH v1] abi: time: change odp_time_t abi type to uint64_t#2343

Open
MatiasElo wants to merge 1 commit intoOpenDataPlane:masterfrom
MatiasElo:dev/time_t-abi
Open

[PATCH v1] abi: time: change odp_time_t abi type to uint64_t#2343
MatiasElo wants to merge 1 commit intoOpenDataPlane:masterfrom
MatiasElo:dev/time_t-abi

Conversation

@MatiasElo
Copy link
Copy Markdown
Collaborator

Change odp_time_t ABI type from struct to uint64_t, which makes the time API implementation simpler. The change triggered a couple false positive 'maybe-uninitialized' warnings.

Change odp_time_t ABI type from struct to uint64_t, which makes the time
API implementation simpler. The change triggered a couple false positive
'maybe-uninitialized' warnings.

Signed-off-by: Matias Elo <matias.elo@nokia.com>
@odpbuild odpbuild changed the title abi: time: change odp_time_t abi type to uint64_t [PATCH v1] abi: time: change odp_time_t abi type to uint64_t Apr 27, 2026
**/

typedef struct odp_time_s odp_time_t;
typedef uint64_t odp_time_t;
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The struct wrapped uint64_t has the benefit that it better enforces proper API usage as variables of odp_time_t cannot be used directly in time calculation and comparisons. It also makes odp_time_t type unique. I wonder if the implementation simplifications are big enough to outweigh the reduction of API safety.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps the biggest benefit of changing this would be that it enables applications to compare odp_time_t values directly to ODP_TIME_NULL. Currently, odp_time_t is a bit of an exception compared to other ODP handles.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants