Whamcloud - gitweb
LU-19040 kernel: update SLES15 SP6 [6.4.0-150600.23.50.1] 69/59369/2
authorJian Yu <yujian@whamcloud.com>
Thu, 22 May 2025 06:40:56 +0000 (23:40 -0700)
committerOleg Drokin <green@whamcloud.com>
Tue, 27 May 2025 02:06:55 +0000 (02:06 +0000)
Update SLES15 SP6 kernel to 6.4.0-150600.23.50.1 for Lustre client.

Lustre-change: https://review.whamcloud.com/59368
Lustre-commit: TBD (from a470380feef87413575d189e548a1a7c82ef0da4)

LU-17905 kernel: new kernel [SLES15 SP6 6.4.0-150600.23.14.2]

This patch makes changes to support new SLES15 SP6 release
with kernel 6.4.0-150600.23.14.2 for Lustre client.

Lustre-change: https://review.whamcloud.com/55563
Lustre-commit: 020e361cfdbad529e31525052e660268d7bd976d

Was-Change-Id: Ib9159d200122595d0a56e3581cfc66d75ddb59f6

LU-18102 tests: skip read/write in sanity/27J for some kernels

Kernel commit v5.11-10234-gcbd59c48ae2b (5.12) skips filemap_read()
with 0 file size, commit v6.2-rc4-61-g5956592ce337 (6.2) just correct
the last page read in filemap_read(), it still skips the real file
read with 0 sized file.

Lustre-change: https://review.whamcloud.com/55977
Lustre-commit: adb3d20f3c8d3a720b293d3d5977a1849a9e0cb7

Was-Change-Id: I1c562cce1374df7659c8d178fb3601e4dfb01744

Fixes: b711af7d24 ("LU-16101 tests: skip sanity/27J for more kernels")
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Test-Parameters: trivial mdtcount=4 mdscount=2 \
  clientdistro=sles15sp6 testlist=sanity

Test-Parameters: optional mdtcount=4 mdscount=2 \
  clientdistro=sles15sp6 testgroup=full-dne-part-1

Test-Parameters: optional mdtcount=4 mdscount=2 \
  clientdistro=sles15sp6 testgroup=full-dne-part-2

Test-Parameters: optional mdtcount=4 mdscount=2 \
  clientdistro=sles15sp6 testgroup=full-dne-part-3

Change-Id: Ie2d530f0edb28326bbcbd1326f40e3e7db845c21
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/59369
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Alex Deiter <adeiter@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
contrib/lbuild/funcs.sh
contrib/lbuild/lbuild-sles15
lustre.spec.in
lustre/ChangeLog
lustre/autoconf/lustre-core.m4
lustre/kernel_patches/targets/6.4-sles15sp6.target.in [new file with mode: 0644]
lustre/tests/sanity.sh

index 3170810..977721d 100644 (file)
@@ -211,6 +211,7 @@ autodetect_target() {
         sles15.3) target="$(uname -r | cut -d . -f 1,2)-sles15sp3";;
        sles15.4) target="$(uname -r | cut -d . -f 1,2)-sles15sp4";;
        sles15.5) target="$(uname -r | cut -d . -f 1,2)-sles15sp5";;
+       sles15.6) target="$(uname -r | cut -d . -f 1,2)-sles15sp6";;
           fc18)   target="3.x-fc18";;
              *)   fatal 1 "I don't know what distro $distro is.\nEither update autodetect_target() or use the --target argument.";;
     esac
index 2bc2df8..33eca62 100644 (file)
@@ -45,6 +45,10 @@ get_distro_kdir() {
                        ;;
                esac
                ;;
+       6.4)
+               distro=sles15.6
+               kdir=updates-sles15.6-src
+               ;;
        esac
 
        case $1 in
index 52e60d9..e4917e3 100644 (file)
@@ -389,8 +389,13 @@ BuildRequires: mpich-devel
 %if "%{_vendor}" == "redhat" || 0%{?suse_version} < 1500
 BuildRequires: openmpi-devel
 %else
+%if 0%{?sle_version} && 0%{?sle_version} >= 150600
+BuildRequires: openmpi4-devel
+%else
 BuildRequires: openmpi2-devel
 %endif
+# openmpi-devel
+%endif
 # openmpi
 %endif
 # mpi
index 22ecee8..dac2b54 100644 (file)
@@ -39,8 +39,8 @@ TBD  Whamcloud
          4.18.0-477.27.1.el8  (RHEL8.8)
          5.15.0-88            (Ubuntu 22.04)
          5.4.0-110            (Ubuntu 20.04)
+         6.4.0-150600.23.50   (SLES15 SP6)
          5.14.21-150500.55.65 (SLES15 SP5)
-         5.14.21-150400.24.100 (SLES15 SP4)
        * Other clients known to build on these kernels at some point (others may also work):
          3.10.0-862.14.4.el7  (RHEL7.5)
          3.10.0-957.27.2.el7  (RHEL7.6)
@@ -67,6 +67,7 @@ TBD  Whamcloud
          4.12.14-197.75       (SLES15 SP1)
          5.3.18-24.96         (SLES15 SP2)
          5.3.18-150300.59.93  (SLES15 SP3)
+         5.14.21-150400.24.100 (SLES15 SP4)
          4.4.0-131            (Ubuntu 16.04)
          4.15.0-48            (Ubuntu 18.04)
          5.8.0-53             (Ubuntu 20.04.2 HWE)
index 98f5bcb..6603063 100644 (file)
@@ -5119,6 +5119,7 @@ lustre/kernel_patches/targets/5.3-sles15sp2.target
 lustre/kernel_patches/targets/5.3-sles15sp3.target
 lustre/kernel_patches/targets/5.14-sles15sp4.target
 lustre/kernel_patches/targets/5.14-sles15sp5.target
+lustre/kernel_patches/targets/6.4-sles15sp6.target
 lustre/kernel_patches/targets/3.x-fc18.target
 lustre/ldlm/Makefile
 lustre/fid/Makefile
diff --git a/lustre/kernel_patches/targets/6.4-sles15sp6.target.in b/lustre/kernel_patches/targets/6.4-sles15sp6.target.in
new file mode 100644 (file)
index 0000000..b9a3fd1
--- /dev/null
@@ -0,0 +1,37 @@
+lnxmaj="6.4"
+lnxmin=".0"
+lnxrel="150600.23.50"
+# use this when there is an "RPM fix" which means that the name of the
+# (source) RPM has been updated but the version of the kernel inside the
+# RPM is not also updated
+rpmfix=".1"
+
+# this is the delimeter that goes before the "smp" at the end of the version
+# defaults to empty
+FLAVOR_DELIMITER="-"
+
+KERNEL_SRPM=kernel-source-${lnxmaj}${lnxmin}-${lnxrel}${rpmfix}.src.rpm
+SERIES=""
+VERSION=$lnxmaj
+EXTRA_VERSION="${lnxmin#.}-${lnxrel}_lustre.@VERSION@"
+LUSTRE_VERSION=@VERSION@
+
+OFED_VERSION=inkernel
+
+BASE_ARCHS="i686 ppc x86_64 ia64 ppc64"
+BIGMEM_ARCHS=""
+BOOT_ARCHS=""
+JENSEN_ARCHS=""
+DEFAULT_ARCHS="i686 x86_64 ia64 ppc64"
+BIGSMP_ARCHS=""
+PSERIES64_ARCHS="ppc"
+UP_ARCHS=""
+SRC_ARCHS=""
+#RPMSMPTYPE="smp"
+
+for cc in gcc ; do
+    if which $cc >/dev/null 2>/dev/null ; then
+        export CC=$cc
+        break
+    fi
+done
index c5ada84..0ebddac 100755 (executable)
@@ -2789,11 +2789,6 @@ test_27J() {
        (( $MDS1_VERSION > $(version_code 2.12.51) )) ||
                skip "Need MDS version newer than 2.12.51"
 
-       # skip basic ops on file with foreign LOV tests on 5.12-6.2 kernels
-       # until the filemap_read() issue is fixed by v6.2-rc4-61-g5956592ce337
-       (( $LINUX_VERSION_CODE < $(version_code 5.12.0) ||
-          $LINUX_VERSION_CODE >= $(version_code 6.2.0) )) ||
-               skip "Need kernel < 5.12.0 or >= 6.2.0 for filemap_read() fix"
 
        test_mkdir $DIR/$tdir
        local uuid1=$(cat /proc/sys/kernel/random/uuid)
@@ -2862,14 +2857,19 @@ test_27J() {
        $LFS setstripe -c 2 $DIR/$tdir/${tfile}2 &&
                error "$DIR/$tdir/${tfile}2: setstripe should fail"
 
-       # R/W should fail
-       cat $DIR/$tdir/$tfile && error "$DIR/$tdir/$tfile: read should fail"
-       cat $DIR/$tdir/${tfile}2 &&
-               error "$DIR/$tdir/${tfile}2: read should fail"
-       cat /etc/passwd > $DIR/$tdir/$tfile &&
-               error "$DIR/$tdir/$tfile: write should fail"
-       cat /etc/passwd > $DIR/$tdir/${tfile}2 &&
-               error "$DIR/$tdir/${tfile}2: write should fail"
+       # skip basic ops on file with foreign LOV tests on >5.12 kernels
+       (( $LINUX_VERSION_CODE < $(version_code 5.12.0) )) && {
+               # kernel >= 5.12.0 would skip filemap_read() with 0 sized file
+               # R/W should fail
+               cat $DIR/$tdir/$tfile &&
+                       error "$DIR/$tdir/$tfile: read should fail"
+               cat $DIR/$tdir/${tfile}2 &&
+                       error "$DIR/$tdir/${tfile}2: read should fail"
+               cat /etc/passwd > $DIR/$tdir/$tfile &&
+                       error "$DIR/$tdir/$tfile: write should fail"
+               cat /etc/passwd > $DIR/$tdir/${tfile}2 &&
+                       error "$DIR/$tdir/${tfile}2: write should fail"
+       }
 
        # chmod should work
        chmod 222 $DIR/$tdir/$tfile ||