Date: Sun, 26 Sep 2021 02:27:20 -0700 From: Mark Millard via freebsd-current <freebsd-current@freebsd.org> To: freebsd-ports@freebsd.org, Bryan Drewery <bdrewery@FreeBSD.org> Cc: freebsd-current <freebsd-current@freebsd.org>, Free BSD <freebsd-arm@freebsd.org> Subject: Re: I get odd time reports from poudriere on armv7 system, under a (non-debug) main [so: 14] FreeBSD. Message-ID: <187B69AF-9465-41DE-BFD0-A4AA0F7F9068@yahoo.com> In-Reply-To: <C6D3F55B-C567-4EED-AC88-B6C18F6C6154@yahoo.com> References: <C6D3F55B-C567-4EED-AC88-B6C18F6C6154@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2021-Sep-25, at 23:25, Mark Millard <marklmi at yahoo.com> wrote: > I get odd time reports from poudriere on an armv7 under main [so: 14]: >=20 >=20 >=20 > # poudriere bulk -jmain-CA7 lang/rust > [00:00:00] Creating the reference jail... done > . . . > [00:00:00] Balancing pool > [main-CA7-default] [2021-09-25_23h11m13s] [balancing_pool:] Queued: 70 = Built: 0 Failed: 0 Skipped: 0 Ignored: 0 Fetched: 0 Tobuild: 70 = Time: -258342:-3:-36 > [00:00:00] Recording filesystem state for prepkg... done > . . . >=20 >=20 > # poudriere bulk -j13_0R-CA7 lang/rust > [00:00:00] Creating the reference jail... done > . . . > [00:00:00] Balancing pool > [13_0R-CA7-default] [2021-09-25_18h06m23s] [balancing_pool:] Queued: 1 = Built: 0 Failed: 0 Skipped: 0 Ignored: 0 Fetched: 0 Tobuild: 1 = Time: -9522:-38:-44 > [00:00:00] Recording filesystem state for prepkg... done > . . . >=20 >=20 > # poudriere bulk -j13_0R-CA7 lang/rust > [00:00:00] Creating the reference jail... done > . . . > [00:00:00] Balancing pool > [13_0R-CA7-default] [2021-09-25_22h52m58s] [balancing_pool:] Queued: 1 = Built: 0 Failed: 0 Skipped: 0 Ignored: 0 Fetched: 0 Tobuild: 1 = Time: -666894:-15:-9 > [00:00:00] Recording filesystem state for prepkg... done > . . . >=20 >=20 > For reference: >=20 > # poudriere version > poudriere-git-3.3.99.20210907_1 >=20 > # uname -apKU > FreeBSD OPiP2E_RPi2v11 14.0-CURRENT FreeBSD 14.0-CURRENT #9 = main-n249019-0637070b5bca-dirty: Sat Sep 4 03:15:41 PDT 2021 = root@CA72_16Gp_ZFS:/usr/obj/BUILDs/main-CA7-nodbg-clang/usr/main-src/arm.a= rmv7/sys/GENERIC-NODBG-CA7 arm armv7 1400032 1400032 >=20 > # poudriere jail -jmain-CA7 -i > Jail name: main-CA7 > Jail version: 14.0-CURRENT > Jail arch: arm.armv7 > Jail method: null > Jail mount: /usr/obj/DESTDIRs/main-CA7-poud > Jail fs: =20 > Jail updated: 2021-06-27 17:58:33 > Jail pkgbase: disabled >=20 > # poudriere jail -j13_0R-CA7 -i > Jail name: 13_0R-CA7 > Jail version: 13.0-RELEASE-p4 > Jail arch: arm.armv7 > Jail method: null > Jail mount: /usr/obj/DESTDIRs/13_0R-CA7-poud > Jail fs: =20 > Jail updated: 2021-09-06 19:10:46 > Jail pkgbase: disabled >=20 > # chroot /usr/obj/DESTDIRs/main-CA7-poud/ > # uname -apKU > FreeBSD OPiP2E_RPi2v11 14.0-CURRENT FreeBSD 14.0-CURRENT #9 = main-n249019-0637070b5bca-dirty: Sat Sep 4 03:15:41 PDT 2021 = root@CA72_16Gp_ZFS:/usr/obj/BUILDs/main-CA7-nodbg-clang/usr/main-src/arm.a= rmv7/sys/GENERIC-NODBG-CA7 arm armv7 1400032 1400032 >=20 > # chroot /usr/obj/DESTDIRs/13_0R-CA7-poud/ > # uname -apKU > FreeBSD OPiP2E_RPi2v11 14.0-CURRENT FreeBSD 14.0-CURRENT #9 = main-n249019-0637070b5bca-dirty: Sat Sep 4 03:15:41 PDT 2021 = root@CA72_16Gp_ZFS:/usr/obj/BUILDs/main-CA7-nodbg-clang/usr/main-src/arm.a= rmv7/sys/GENERIC-NODBG-CA7 arm armv7 1400032 1300139 >=20 This looks to be poudriere's problem . . . poudriere/src/libexec/poudriere/clock/clock.c has: if (argc =3D=3D 3 && strcmp(argv[2], "-nsec") =3D=3D 0) printf("%ld.%ld\n", ts.tv_sec, ts.tv_nsec); else printf("%ld\n", ts.tv_sec); where: struct timespec { time_t tv_sec; /* seconds */ long tv_nsec; /* and nanoseconds */ }; but for tv_sec the type is for armv7: /usr/include/machine/_types.h:typedef __int64_t __time_t; = /* time()... */ =46rom man arch: Machine-dependent type sizes: Architecture void * long double time_t aarch64 8 16 8 amd64 8 16 8 armv6 4 8 8 armv7 4 8 8 i386 4 12 4 mips 4 8 8 mipsel 4 8 8 mipselhf 4 8 8 mipshf 4 8 8 mipsn32 4 8 8 mips64 8 8 8 mips64el 8 8 8 mips64elhf 8 8 8 mips64hf 8 8 8 powerpc 4 8 8 powerpcspe 4 8 8 powerpc64 8 8 8 powerpc64le 8 8 8 riscv64 8 16 8 riscv64sf 8 16 8 %ld is for long arguments, 32-bits in an ILP32 context, not __int64_t (long long) arguments. Applies to armv6, armv7, mips, mipsel, mipselhf, mipshf, mipsn32, powerpc, and powerpcspe. Note: i386 should use %ld for time_t for FreeBSD, despite being IPL32. =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?187B69AF-9465-41DE-BFD0-A4AA0F7F9068>