From: Adrian Vovk Date: Thu, 4 Jan 2024 17:48:39 +0000 (-0500) Subject: stat-util: Add statx version of timespec_load X-Git-Tag: v256-rc1~1284^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d3c2288c9f5dfdf8ef9752f93d298d0b56bbedc0;p=thirdparty%2Fsystemd.git stat-util: Add statx version of timespec_load statx_timestamp is, for all intents and purposes, the same as a struct timespec. So, we can trivially convert it and call timespec_load on it. This commit adds helper functions that do just that. --- diff --git a/src/basic/stat-util.h b/src/basic/stat-util.h index cb736c36dd6..dc11a85f626 100644 --- a/src/basic/stat-util.h +++ b/src/basic/stat-util.h @@ -12,6 +12,7 @@ #include "macro.h" #include "missing_stat.h" #include "siphash24.h" +#include "time-util.h" int is_symlink(const char *path); int is_dir_full(int atfd, const char *fname, bool follow); @@ -109,6 +110,13 @@ int xstatfsat(int dir_fd, const char *path, struct statfs *ret); } var #endif +static inline usec_t statx_timestamp_load(const struct statx_timestamp *ts) { + return timespec_load(&(const struct timespec) { .tv_sec = ts->tv_sec, .tv_nsec = ts->tv_nsec }); +} +static inline nsec_t statx_timestamp_load_nsec(const struct statx_timestamp *ts) { + return timespec_load_nsec(&(const struct timespec) { .tv_sec = ts->tv_sec, .tv_nsec = ts->tv_nsec }); +} + void inode_hash_func(const struct stat *q, struct siphash *state); int inode_compare_func(const struct stat *a, const struct stat *b); extern const struct hash_ops inode_hash_ops;