On Mon, 11 Nov 2024, ende.tan@xxxxxxxxxxxxxxxx wrote: > From: Tan En De <ende.tan@xxxxxxxxxxxxxxxx> > > Include tv_sec in addition to tv_nsec in __clock_gettime(). If the value > of variable 'a' wraps around, it may cause 'delta' to be negative, while > 'delta' is defined with u64 type. > > Signed-off-by: Tan En De <ende.tan@xxxxxxxxxxxxxxxx> > --- > src/queuelat/queuelat.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/src/queuelat/queuelat.c b/src/queuelat/queuelat.c > index c549cd8..c057389 100644 > --- a/src/queuelat/queuelat.c > +++ b/src/queuelat/queuelat.c > @@ -292,7 +292,8 @@ static inline unsigned long long __clock_gettime(void) > if (ret < 0) > return 0; > > - return now.tv_nsec; > + // Combine seconds and nanoseconds into a single value in nanoseconds > + return (unsigned long long)now.tv_sec * 1000000000ULL + now.tv_nsec; > } > > #define gettick(val) do { (val) = __clock_gettime(); } while (0) > -- > 2.34.1 > > > Signed-off-by: John Kacur <jkacur@xxxxxxxxxx>