Scenario: - FreeBSD stable/14, ca. February 2025; also openSUSE Tumbleweed 15.6 - Creating a new zpool (on FreeBSD) - zfs send -R | zfs receive -Fuv a filesystem tree from a version 28 zpool, the filesystems are version 3 (latest is 5) Result: - Creating symlinks with a length of more than ca. 60 bytes results in a zero-sized symlink (readlink returns 0 bytes) Expected result: - Creating symlinks should always work - If there is an incompatibility between pool version, feature flags, and filesystem versions, a warning should be printed (kernel message to syslog when importing the pool, for each filesystem in the imported pool. Resolution: - zpool upgrade shows that the new zpool is up to date. - zfs upgrade shows that some filesystems can be upgraded, amongst them the affected one. - Run zfs upgrade on the affected filesystems. Note: - The pools are shared between (dual boot) openSUSE Leap 15.6 and FreeBSD stable/14. The behavior (bug) was the same on both systems. Interestingly, a search for "openzfs empty symlink" or "openzfs zero size symlink" did not turn up anything of interest. Maybe this bug report changes that. ;-) This should probably go to openzfs.org. -- Martin
Yes. Please report this issue to https://github.com/openzfs/zfs/issues too.
(In reply to Alan Somers from comment #1) I do not have a github account and would appreciate if you could do it instead. -- Martin
(In reply to Martin Birgmeier from comment #2) No, I can't. That is, I could certainly create the issue. But afterwards OpenZFS's maintainers would try to ask questions of the OP, propose workarounds, offer patches, etc. And I wouldn't be able to help them. That's why you need to create the issue yourself.