Debian Patches

Status for isochron/0.9-0.2

Patch Description Author Forwarded Bugs Origin Last update
Fix-calloc-transposed-args.patch Fix calloc-transposed-args
Compiling with reasonable strict compiler errors gives:

not in the later argument [-Werror=calloc-transposed-args]
Bastian Germann <bage@debian.org> no https://github.com/NXP/isochron/pull/24 2025-02-18
common-Fix-format-string-for-64-bit-time_t.patch common: Fix format string for 64 bit time_t
32 bit systems can have a libc configured with 64 bit wide time_t.
Extend the format string for time_t so that it can take 64 bit values.
Bastian Germann <bage@debian.org> no https://github.com/NXP/isochron/pull/25 2025-02-18
fix-mips64-ppc64.patch isochron: fix build with mips64 and ppc64
In a strange turn of events, the __s64 and __u64 types exported by the
Linux kernel headers cannot be portably printed directly, neither using
%lld and %llu (as we currently attempt), nor using PRId64 and PRIu64
(which are supposed to solve this, but for the int64_t and uint64_t types).

We have:

arch __s64 evaluates to PRId64 evaluates to
powerpc64 long int lld
x86_64 long long int ld

To reconcile both kinds of architectures, we need to explicitly cast
to the larger type and keep printing with the larger printf format
specifier (PRId64/PRIu64 aren't useful options).

This fixes multiple issues such as below (for powerpc64), not including
them all for brevity:

src/orchestrate.c: In function ‘isochron_node_rtt_finalize’:
src/orchestrate.c:85:73: error: format ‘%lld’ expects argument of type ‘long long int’, but argument 4 has type ‘__s64’ {aka ‘long int’} [-Werror=format=]
printf("Max TCP round trip time to node %s over %zu measurements is %lld ns\n",
~~~^
%ld
node->name, node->num_rtt_measurements, node->max_rtt);
~~~~~~~~~~~~~
cc1: all warnings being treated as errors

Thanks to Bastian Germann <bage@debian.org> for reporting this to me.
Vladimir Oltean <vladimir.oltean@nxp.com> no upstream, 740f586040e2f8b7a2a6258a8b93556b775717bb 2025-02-21
glibc2.41.patch Fix build with GLIBC 2.41
Starting with GLIBC 2.41, the sched_setattr() function and the
corresponding sched_attr structure are provided when _GNU_SOURCE is
defined. This causes a build failure due to conflict.

Fix that by just using the GLIBC definition and function when available.
Aurelien Jarno <aurelien@aurel32.net> no upstream, 7f06efd5b40ef1cfb6210883bc4307bac338adc0 2025-03-02

All known versions for source package 'isochron'

Links