On Wed, Jun 25, 2025 at 11:54 PM Olivier Cochard-Labbé <oliv...@freebsd.org>
wrote:

> Hi Alan,
>
>
> On Sun, Jun 15, 2025 at 6:02 PM Alan Somers <asom...@freebsd.org> wrote:
>
>> The branch main has been updated by asomers:
>>
>> URL:
>> https://cgit.FreeBSD.org/src/commit/?id=5c1ba994a8bcb6676ea3d1bb21b072b90e2d3ae9
>>
>> commit 5c1ba994a8bcb6676ea3d1bb21b072b90e2d3ae9
>> Author:     Alan Somers <asom...@freebsd.org>
>> AuthorDate: 2024-05-07 17:48:33 +0000
>> Commit:     Alan Somers <asom...@freebsd.org>
>> CommitDate: 2025-06-15 16:01:37 +0000
>>
>>     Add a regression test for a libtpool bug
>>
>>
>>
> It seems this commit is the cause of preventing all my (freshly installed)
> ZFS systems from booting than stop with:
>
> Mounting local filesystems:.
> ld-elf.so.1: Shared object "libtpool.so.2" not found, required by "zfs"
>
> Because liptpool.so.2 isn’t no more in /lib (belong to the / dataset), but
> in another dataset (/usr/lib) but it needs to use zfs to mount this one.
>
> Could the added include<src.opts.mk> in its Makefile modified the
> installed directory of libtpool.so.2 ?
>
> Here is the bisect script used:
>
> #!/bin/sh
> set -eu
> WRKDIR=/tmp/bisec
> mkdir -p $WRKDIR/lib $WRKDIR/usr/lib $WRKDIR/usr/include
> make -C cddl/lib/libtpool
> make -C cddl/lib/libtpool install DESTDIR=$WRKDIR
> if [ -f $WRKDIR/lib/libtpool.so.2 ]; then
>     rm -rf $WRKDIR
>     exit 0
> else
>     rm -rf $WRKDIR
>     exit 1
> fi
>
> And my bisect session pointed me to this commit.
> git bisect start HEAD 9ce5410b9094 --
> git bisect run /tmp/bisec.libtpool.sh
> git bisect reset
>
> Regards,
> Olivier
>

Wow!  That change was definitely not intended.  And I"m very sorry for the
breakage.  Could you please try this patch?

diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc
index cab8949b635b..aa8883cf9b7c 100644
--- a/ObsoleteFiles.inc
+++ b/ObsoleteFiles.inc
@@ -51,6 +51,9 @@
 #   xargs -n1 | sort | uniq -d;
 # done

+# 20250626: For 11 days 15.0-CURRENT installed libtpool to the wrong
location
+MOVED_LIBS+=usr/lib/libtpool.so.2
+
 # 20250623: fscandir() renamed to fdscandir()
 OLD_FILES+=usr/share/man/man3/fscandir.3.gz
 OLD_FILES+=usr/share/man/man3/fscandir_b.3.gz
diff --git a/cddl/lib/libtpool/Makefile b/cddl/lib/libtpool/Makefile
index 3ab625dd306b..e14eea509708 100644
--- a/cddl/lib/libtpool/Makefile
+++ b/cddl/lib/libtpool/Makefile
@@ -3,6 +3,7 @@


 LIB=   tpool
+SHLIBDIR?=      /lib
 LIBADD=        spl
 PACKAGE=       libzfs

Reply via email to