openzfs / zfs

OpenZFS on Linux and FreeBSD
https://openzfs.github.io/openzfs-docs
Other
10.64k stars 1.75k forks source link

Fedora 41 repo #16590

Open marmarek opened 1 month ago

marmarek commented 1 month ago

Describe the feature would like to see added to OpenZFS

Fedora 41 is going to be released in about a month (https://fedorapeople.org/groups/schedule/f-41/f-41-key-tasks.html), current beta has kernel 6.11. Is there a chance for release with F41 repo before final F41 release?

How will this feature improve OpenZFS?

Helps Fedora users that like to update early.

Additional context

Related comment: https://github.com/openzfs/zfs/issues/16544#issuecomment-2372557723

edgan commented 2 weeks ago

Fedora 41 is expected to be released on October 29th 2024.

edgan commented 2 weeks ago

It has been released.

luerhard commented 2 weeks ago

Fedora 41 is out. I now cannot access my pool anymore. I tried reinstalling the repo but it did not help:

sudo dnf install -y https://zfsonlinux.org/fedora/zfs-release-2-5$(rpm --eval "%{dist}").noarch.rpm
Updating and loading repositories:
 ZFS on Linux for Fedora 41                                                                                                                                                                                                                           100% |   1.5 KiB/s |   1.4 KiB |  00m01s
>>> Status code: 404 for http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml (IP: 52.92.212.195) - http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml - repomd.xml
>>> Status code: 404 for http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml (IP: 52.92.212.195) - http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml - repomd.xml
>>> Status code: 404 for http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml (IP: 52.92.212.195) - http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml - repomd.xml
>>> Status code: 404 for http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml (IP: 52.92.212.195) - http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml - repomd.xml
>>> Librepo error: Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
Repositories loaded.

Am I doing something wrong or is there just not zfs for fedora 41 yet?

edgan commented 2 weeks ago

Fedora 41 is out. I now cannot access my pool anymore. I tried reinstalling the repo but it did not help:

sudo dnf install -y https://zfsonlinux.org/fedora/zfs-release-2-5$(rpm --eval "%{dist}").noarch.rpm
Updating and loading repositories:
 ZFS on Linux for Fedora 41                                                                                                                                                                                                                           100% |   1.5 KiB/s |   1.4 KiB |  00m01s
>>> Status code: 404 for http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml (IP: 52.92.212.195) - http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml - repomd.xml
>>> Status code: 404 for http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml (IP: 52.92.212.195) - http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml - repomd.xml
>>> Status code: 404 for http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml (IP: 52.92.212.195) - http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml - repomd.xml
>>> Status code: 404 for http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml (IP: 52.92.212.195) - http://download.zfsonlinux.org/fedora/41/x86_64/repodata/repomd.xml - repomd.xml
>>> Librepo error: Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
Repositories loaded.

Am I doing something wrong or is there just not zfs for fedora 41 yet?

16645

Fedora 40 with the latest updates, and Fedora 41 on release both use a 6.11 kernel. A released version of zfs that supports 6.11 hasn't happened yet. So there is no point to making a Fedora 41 repository till they make such a release of zfs. It is expected to be 2.2.7, and the official policy is when it is ready.

luerhard commented 2 weeks ago

Interesting. Time to use the macbook then until zfs is ready and I can use my PC again ... (thanks for the response!)

Pretty sure I already was on 6.11 in Fedora 40 though.

tonyhutter commented 2 weeks ago

Fedora 41 was released today - we're testing it right now: https://github.com/openzfs/zfs/pull/16700

edgan commented 2 weeks ago

Not sure what you are on about. I am running 6.11.5-200.fc40.x86_64 kernel and ZFS is working just fine.

zfs-2.2.6-1 zfs-kmod-2.2.6-1

You are right. I had not rebooted my Fedora 40 server that uses zfs, because I expected it to break for all the reasons listed below.

Linux 6.11 compatibility and new promptly release: https://github.com/openzfs/zfs/issues/16645

zfs-2.2.6/META:

Meta:          1
Name:          zfs
Branch:        1.0
Version:       2.2.6
Release:       1
Release-Tags:  relext
License:       CDDL
Author:        OpenZFS
Linux-Maximum: 6.10
Linux-Minimum: 3.10

https://github.com/openzfs/zfs/releases:

[zfs-2.2.6]
Supported Platforms

    Linux: compatible with 4.18 - 6.10 kernels
    FreeBSD: compatible with releases starting from 12.2-RELEASE

Edit: I just upgraded to Fedora 41, and then found this.

Problem 1: conflicting requests
  - nothing provides kernel-devel <= 6.8.999 needed by zfs-dkms-2.2.4-1.fc40.noarch from zfs
  - nothing provides kernel-devel <= 6.9.999 needed by zfs-dkms-2.2.5-1.fc40.noarch from zfs
  - nothing provides kernel-devel <= 6.10.999 needed by zfs-dkms-2.2.6-1.fc40.noarch from zfs

So you have to have a 6.10 kernel installed to keep zfs-dkms happy, and the upgraded uninstalled all the 6.10 kernels. So then zfs-dkms go uninstalled. Then I can't be reinstalled, because there is no 6.10 kernel. Yet, it does seem like zfs works with 6.11 kernels.

I can manually work around this by either rebuilding the fc40 packages, or install a 6.10 kernel to make it happy.

edgan commented 2 weeks ago

So I ended up needing to recompile just the zfs-dkms after modifying the spec file to say 6.11.999 instead of 6.10.999 for the kernel-devel dependency.

http://download.zfsonlinux.org/fedora/40/SRPMS/zfs-dkms-2.2.6-1.fc40.src.rpm

This is where I expect some developer to say, but there are X, Y, and Z reasons that 6.11 is unsupported with zfs-2.2.6. On the other hand, as I see above, Fedora 41 got "released".

I don't actually see Fedora 41 here.

http://download.zfsonlinux.org/fedora/

ftc2 commented 2 weeks ago

i say this at the risk of being off topic in case it helps someone.

if you're on fedora 41 (or otherwise on 6.11), afaik you can just use koji to install 6.10 and then stay there until openzfs supports 6.11.

these two posts summarize how and have some tips: https://forum.level1techs.com/t/picking-a-new-server-os/208353/3 https://forum.level1techs.com/t/picking-a-new-server-os/208353/30

edgan commented 2 weeks ago

i say this at the risk of being off topic in case it helps someone.

if you're on fedora 41 (or otherwise on 6.11), afaik you can just use koji to install 6.10 and then stay there until openzfs supports 6.11.

these two posts summarize how and have some tips: https://forum.level1techs.com/t/picking-a-new-server-os/208353/3 https://forum.level1techs.com/t/picking-a-new-server-os/208353/30

Just ran across this bug.

16621

ftc2 commented 2 weeks ago

i don't get it. you installed 6.10, and openzfs still isn't working?

like those posts you quoted say, here's the 6.10 packages for f41: https://bodhi.fedoraproject.org/updates/?search=kernel-6.10&release=f41

so from looking at that, in the koji steps linked in that second post above, you'd put in 6.10.0-64.fc41 since that's the newest build

then use the rest of the tips in those posts to clean up as you see fit

i would expect the f40 openzfs package to work at that point

edgan commented 2 weeks ago

i don't get it. you installed 6.10, and openzfs still isn't working?

There are different circumstances.

  1. Fedora 40/41 and explicitly booting 6.10. Yes, this works without issue.
  2. Fedora 40/41 with 6.10 installed but booting 6.11. This throws the error I just linked to.
  3. Fedora 40/41 with 6.11 installed with a modified zfs-dkms to allow a 6.11 kernel. This throws the error I just linked to.

I am about to test a modify zfs-dkms with the patch.

16621 would be a X that I thought about above.

Edit:

I took https://github.com/openzfs/zfs/commit/cad9f2df5d212eebe3bfbff9412ab8de0124f023.patch with the patch to the patch below to get it to actually apply. I added this to the zfs-2.2.6-1 and zfs-dkms-2.2.6-1 spec files as a patch. I rebuilt both, installed both, and ran a dracut --force to force the rebuilding of the initramfs. On reboot I don't have the #16621 issue anymore.

--- cad9f2df5d212eebe3bfbff9412ab8de0124f023.patch  2024-11-01 12:44:11.073493278 -0700
+++ zfs-log.patch   2024-11-01 12:26:38.799718460 -0700
@@ -485,17 +485,17 @@
    itx->itx_oid = szp->z_id;

    zil_itx_assign(zilog, itx, tx);
-@@ -663,8 +667,8 @@ zfs_log_write(zilog_t *zilog, dmu_tx_t *tx, int txtype,
+@@ -668,8 +668,8 @@
        if (wr_state == WR_COPIED) {
            int err;
            DB_DNODE_ENTER(db);
 -          err = dmu_read_by_dnode(DB_DNODE(db), off, len, lr + 1,
 -              DMU_READ_NO_PREFETCH);
-+          err = dmu_read_by_dnode(DB_DNODE(db), off, len,
-+              &lr->lr_data[0], DMU_READ_NO_PREFETCH);
-           DB_DNODE_EXIT(db);
++                        err = dmu_read_by_dnode(DB_DNODE(db), off, len,
++                            &lr->lr_data[0], DMU_READ_NO_PREFETCH);
            if (err != 0) {
                zil_itx_destroy(itx);
+               itx = zil_itx_create(txtype, sizeof (*lr));
 @@ -733,7 +737,7 @@ zfs_log_setattr(zilog_t *zilog, dmu_tx_t *tx, int txtype,
    lr_setattr_t    *lr;
    xvattr_t    *xvap = (xvattr_t *)vap;
edgan commented 1 week ago

Fedora 41 was released today - we're testing it right now: #16700

@tonyhutter How is the testing going?

tonyhutter commented 1 week ago

@edgan we'll support Fedora 41 with zfs-2.2.7, which going though iterations here https://github.com/openzfs/zfs/pull/16720.