| Message ID | 20260120103834.1780598-1-uvv.mail@gmail.com |
|---|---|
| State | New |
| Headers | show |
| Series | time64: Use consistent TIME defines | expand |
Hi 2026. 01. 20. 11:38 keltezéssel, uvv.mail@gmail.com írta: > From: Vyacheslav Yurkov <uvv.mail@gmail.com> > > Pipewire crashes when other dependent libraries are built with the > different TIME and FILE_OFFSET defines. pw-v4l2/libcamera will most That is specifically about "libcameraify", which is a similar LD_PRELOAD library. I wouldn't mention it since this change does not affect the libcamera recipe. > likely not work with 32-bits that have 64-bit time but that has to be > fixed in the respective projects. As the removed comment correctly points out, __ioctl_time64, etc. is not handled in pw-v4l2. But I'm still not sure why the change was made originally in yocto since it won't make pw-v4l2 somehow work if an application uses __ioctl_time64. In any case, the current situation is less than ideal, if pipewire and its dependencies (e.g. alsa-lib) disagree about the size of time_t, etc; as two people have already reported issues caused by this. Regards, Barnabás Pőcze > > Related bug report: > https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/5055 > > Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com> > Signed-off-by: Barnabás Pőcze <pobrn@protonmail.com> > --- > meta/conf/distro/include/time64.inc | 4 ---- > 1 file changed, 4 deletions(-) > > diff --git a/meta/conf/distro/include/time64.inc b/meta/conf/distro/include/time64.inc > index 24a81c83f1..3ed0a4253d 100644 > --- a/meta/conf/distro/include/time64.inc > +++ b/meta/conf/distro/include/time64.inc > @@ -21,10 +21,6 @@ TARGET_CC_ARCH:append:x86 = "${@bb.utils.contains('TUNE_FEATURES', 'm32', '${GLI > > GLIBC_64BIT_TIME_FLAGS:pn-glibc = "" > GLIBC_64BIT_TIME_FLAGS:pn-glibc-testsuite = "" > -# pipewire-v4l2 explicitly sets _FILE_OFFSET_BITS=32 to get access to > -# both 32 and 64 bit file APIs. But it does not handle the time side? > -# Needs further investigation > -GLIBC_64BIT_TIME_FLAGS:pn-pipewire = "" > # Undefines _FILE_OFFSET_BITS on purpose in > # libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp > GLIBC_64BIT_TIME_FLAGS:pn-gcc-sanitizers = ""
diff --git a/meta/conf/distro/include/time64.inc b/meta/conf/distro/include/time64.inc index 24a81c83f1..3ed0a4253d 100644 --- a/meta/conf/distro/include/time64.inc +++ b/meta/conf/distro/include/time64.inc @@ -21,10 +21,6 @@ TARGET_CC_ARCH:append:x86 = "${@bb.utils.contains('TUNE_FEATURES', 'm32', '${GLI GLIBC_64BIT_TIME_FLAGS:pn-glibc = "" GLIBC_64BIT_TIME_FLAGS:pn-glibc-testsuite = "" -# pipewire-v4l2 explicitly sets _FILE_OFFSET_BITS=32 to get access to -# both 32 and 64 bit file APIs. But it does not handle the time side? -# Needs further investigation -GLIBC_64BIT_TIME_FLAGS:pn-pipewire = "" # Undefines _FILE_OFFSET_BITS on purpose in # libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp GLIBC_64BIT_TIME_FLAGS:pn-gcc-sanitizers = ""