Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-18459

Lustre 2.16.1 ldiskfs doesn't build on latest EL9.4 (5.14.0-427.42.1.el9_4.x86_64)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • None
    • Lustre 2.16.1
    • None
    • 3
    • 9223372036854775807

    Description

      Opening this after discussing with Andreas at the DDN Data Summit.

      ldiskfs doesn't build against the latest EL9.4 kernel (5.14.0-427.42.1.el9_4.x86_64) due to some recent changes in ext4. I think it's due to the changes in ext4_xattr_inode_lookup_create() in particular.

      From rpm -q --changelog kernel-5.14.0-427.42.1.el9_4:

      * Fri Oct 11 2024 Scott Weaver <scweaver@redhat.com> [5.14.0-427.41.1.el9_4]
      <snip>
      - ext4: do not create EA inode under buffer lock (Carlos Maiolino) [RHEL-48285 RHEL-48282] {CVE-2024-40972}
      - ext4: fold quota accounting into ext4_xattr_inode_lookup_create() (Carlos Maiolino) [RHEL-48285 RHEL-48282] {CVE-2024-40972}
      - ext4: fix uninitialized ratelimit_state->lock access in __ext4_fill_super() (Carlos Maiolino) [RHEL-48519 RHEL-48517] {CVE-2024-40998}
      - ext4: turn quotas off if mount failed after enabling quotas (Carlos Maiolino) [RHEL-48519 RHEL-48517] {CVE-2024-40998}
      

       

      The reject is:
       

      $ cat ./ldiskfs/linux-stage/fs/ext4/xattr.c.rej
      --- fs/ext4/xattr.c
      +++ fs/ext4/xattr.c
      @@ -1639,6 +1669,7 @@ static int ext4_xattr_set_entry(struct ext4_xattr_info *i,
       	int in_inode = i->in_inode;
       	struct inode *old_ea_inode = NULL;
       	struct inode *new_ea_inode = NULL;
      +	struct delayed_iput_work *diwork = NULL;
       	size_t old_size, new_size;
       	int ret;
       
      @@ -1872,7 +1907,7 @@ update_hash:
       
       	ret = 0;
       out:
      -	iput(old_ea_inode);
      +	delayed_iput(old_ea_inode, diwork);
       	iput(new_ea_inode);
       	return ret;
       }
      
      

       
      Attaching logs of build failure with the latest tag 2.16.1.

      Note: building against 5.14.0-427.31.1.el9 (the version tested by Whamcloud and listed in lustre/ChangeLog) works fine.

      Attachments

        Issue Links

          Activity

            People

              wc-triage WC Triage
              sthiell Stephane Thiell
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: