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

lustre-client-dkms Fails to Install on SLES 15 SP3

Details

    • Bug
    • Resolution: Fixed
    • Blocker
    • Lustre 2.16.0, Lustre 2.15.2
    • Lustre 2.15.0
    • SLES 15 SP3
      Kernel 5.3.18-57-default
      DKMS 2.3-bp153.1.17
    • 3
    • 9223372036854775807

    Description

      Hi.

      I am trying to install Lustre Client 2.15 on SLES 15 SP3 with the default kernel and dkms packages, but the installation of the lustre-client-dkms package fails with the following log:

       

      (13/13) Installing: lustre-client-dkms-2.15.0-1.noarch ...................................................................................................[done]
      Additional rpm output:
      Loading new lustre-client-2.15.0 DKMS files...
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #0.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #1.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #2.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #3.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #4.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #5.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #6.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #7.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #8.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #9.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #10.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #11.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #12.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #13.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #14.
      dkms.conf: Error! Directive 'DEST_MODULE_LOCATION' does not begin with
      '/kernel', '/updates', or '/extra' in record #15.
      Error! Bad conf file.
      File: /usr/src/lustre-client-2.15.0/dkms.conf
      does not represent a valid dkms.conf file.
      warning: %post(lustre-client-dkms-2.15.0-1.noarch) scriptlet failed, exit status 8
      

       

       

      The package is being installed directly using zypper (zypper in lustre-client-dkms), after adding the following repo:

      https://downloads.whamcloud.com/public/lustre/lustre-2.15.0/sles15sp3/client/

       

      A similar issue had been reported before and apparently fixed in Lustre 2.9 here:

      https://jira.whamcloud.com/browse/LU-8630

      I am not sure if it has come back, or the fix is somehow not getting applied to installation on SLES. Is there a fix or work-around for this?

      Attachments

        Activity

          [LU-16037] lustre-client-dkms Fails to Install on SLES 15 SP3

          "Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/48117/
          Subject: LU-16037 build: remove quotes from %

          {mkconf_options}

          Project: fs/lustre-release
          Branch: b2_15
          Current Patch Set:
          Commit: 10d8a10f832bfa71cf3fe32d1fad3e1b548fc74c

          gerrit Gerrit Updater added a comment - "Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/48117/ Subject: LU-16037 build: remove quotes from % {mkconf_options} Project: fs/lustre-release Branch: b2_15 Current Patch Set: Commit: 10d8a10f832bfa71cf3fe32d1fad3e1b548fc74c
          pjones Peter Jones added a comment -

          Landed for 2.16

          pjones Peter Jones added a comment - Landed for 2.16

          "Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/48044/
          Subject: LU-16037 build: remove quotes from %

          {mkconf_options}

          Project: fs/lustre-release
          Branch: master
          Current Patch Set:
          Commit: 33efefc496159f7d0caed0fa85d8f92603060ae2

          gerrit Gerrit Updater added a comment - "Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/48044/ Subject: LU-16037 build: remove quotes from % {mkconf_options} Project: fs/lustre-release Branch: master Current Patch Set: Commit: 33efefc496159f7d0caed0fa85d8f92603060ae2

          "Jian Yu <yujian@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/48117
          Subject: LU-16037 build: remove quotes from %

          {mkconf_options}

          Project: fs/lustre-release
          Branch: b2_15
          Current Patch Set: 1
          Commit: b2801d9892fd6466594afabe94740a345deaa6c8

          gerrit Gerrit Updater added a comment - "Jian Yu <yujian@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/48117 Subject: LU-16037 build: remove quotes from % {mkconf_options} Project: fs/lustre-release Branch: b2_15 Current Patch Set: 1 Commit: b2801d9892fd6466594afabe94740a345deaa6c8

          "Jian Yu <yujian@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/48044
          Subject: LU-16037 build: remove quotes from %

          {mkconf_options}

          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: 55fe9cd68a59d3c85ed2000311e02d2b844832c9

          gerrit Gerrit Updater added a comment - "Jian Yu <yujian@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/48044 Subject: LU-16037 build: remove quotes from % {mkconf_options} Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 55fe9cd68a59d3c85ed2000311e02d2b844832c9
          yujian Jian Yu added a comment - - edited

          Hi utopiabound,
          I saw the changes were introduced from https://review.whamcloud.com/28210. Did the extra space issue occur at that time?

          I made the following changes to remove the quotes around the "-k updates" option:

          diff --git a/lustre-dkms.spec.in b/lustre-dkms.spec.in
          index c749b087b8bb..6627889b3b7a 100644
          --- a/lustre-dkms.spec.in
          +++ b/lustre-dkms.spec.in
          @@ -122,7 +122,7 @@ the repository with other debuginfo rpms.
           %setup -q -n @PACKAGE@-%{version}
           
           %build
          -%{mkconf} -n %{module} -v %{version} -f dkms.conf %{mkconf_options}
          +%{mkconf} -n %{module} -v %{version} -f dkms.conf %(echo %{mkconf_options} | sed -e 's/"//g')
          

          With the above change, lustre-client-dkms can be built and installed successfully. I'll submit the change to Gerrit after my login issue is resolved.

          yujian Jian Yu added a comment - - edited Hi utopiabound , I saw the changes were introduced from https://review.whamcloud.com/28210 . Did the extra space issue occur at that time? I made the following changes to remove the quotes around the "-k updates" option: diff --git a/lustre-dkms.spec.in b/lustre-dkms.spec.in index c749b087b8bb..6627889b3b7a 100644 --- a/lustre-dkms.spec.in +++ b/lustre-dkms.spec.in @@ -122,7 +122,7 @@ the repository with other debuginfo rpms. %setup -q -n @PACKAGE@-%{version} %build -%{mkconf} -n %{module} -v %{version} -f dkms.conf %{mkconf_options} +%{mkconf} -n %{module} -v %{version} -f dkms.conf %(echo %{mkconf_options} | sed -e 's/" //g' ) With the above change, lustre-client-dkms can be built and installed successfully. I'll submit the change to Gerrit after my login issue is resolved.
          yujian Jian Yu added a comment -
          + lustre/scripts/dkms.mkconf -n lustre-client -v 2.15.1_RC1_dirty -f dkms.conf '-k updates'
          + PROG=lustre/scripts/dkms.mkconf
          + kmoddir=extra
          + getopts n:v:f:k: opt
          + case $opt in
          + pkgname=lustre-client
          + getopts n:v:f:k: opt
          + case $opt in
          + pkgver=2.15.1_RC1_dirty
          + getopts n:v:f:k: opt
          + case $opt in
          + filename=dkms.conf
          + getopts n:v:f:k: opt
          + case $opt in
          + kmoddir=' updates'             <---------------------- extra space
          

          dkms.mkconf was called from lustre-dkms.spec.in as follows:

          %if "%{_vendor}" == "redhat" || "%{_vendor}" == "fedora"
                  %global kmod_name kmod-%{lustre_name}
                  %define mkconf_options %{nil}
          #for Suse / Ubuntu
          %else
                  %global kmod_name %{lustre_name}-kmp
                  %define mkconf_options "-k updates"
          %endif
          <~snip~>
          %build
          %{mkconf} -n %{module} -v %{version} -f dkms.conf %{mkconf_options}
          

          We need to find a way to pass "-k updates" option to dkms.mkconf without being wrapped with single quotes.

          yujian Jian Yu added a comment - + lustre/scripts/dkms.mkconf -n lustre-client -v 2.15.1_RC1_dirty -f dkms.conf '-k updates' + PROG=lustre/scripts/dkms.mkconf + kmoddir=extra + getopts n:v:f:k: opt + case $opt in + pkgname=lustre-client + getopts n:v:f:k: opt + case $opt in + pkgver=2.15.1_RC1_dirty + getopts n:v:f:k: opt + case $opt in + filename=dkms.conf + getopts n:v:f:k: opt + case $opt in + kmoddir=' updates' <---------------------- extra space dkms.mkconf was called from lustre-dkms.spec.in as follows: % if "%{_vendor}" == "redhat" || "%{_vendor}" == "fedora" %global kmod_name kmod-%{lustre_name} %define mkconf_options %{nil} # for Suse / Ubuntu % else %global kmod_name %{lustre_name}-kmp %define mkconf_options "-k updates" %endif <~snip~> %build %{mkconf} -n %{module} -v %{version} -f dkms.conf %{mkconf_options} We need to find a way to pass "-k updates" option to dkms.mkconf without being wrapped with single quotes.
          yujian Jian Yu added a comment -

          I can reproduce the failure.
          In dkms.conf:

          # Common modules for both Client & Server
          BUILT_MODULE_NAME[${#BUILT_MODULE_NAME[@]}]="lnet_selftest"
          BUILT_MODULE_LOCATION[${#BUILT_MODULE_LOCATION[@]}]="lnet/selftest/"
          DEST_MODULE_LOCATION[${#DEST_MODULE_LOCATION[@]}]="/ updates/lnet/"
          BUILT_MODULE_NAME[${#BUILT_MODULE_NAME[@]}]="lnet"
          BUILT_MODULE_LOCATION[${#BUILT_MODULE_LOCATION[@]}]="lnet/lnet/"
          DEST_MODULE_LOCATION[${#DEST_MODULE_LOCATION[@]}]="/ updates/lnet/"
          <~snip~>
          

          Somehow there is an extra space in the location value. Investigating.

          yujian Jian Yu added a comment - I can reproduce the failure. In dkms.conf: # Common modules for both Client & Server BUILT_MODULE_NAME[${#BUILT_MODULE_NAME[@]}]="lnet_selftest" BUILT_MODULE_LOCATION[${#BUILT_MODULE_LOCATION[@]}]="lnet/selftest/" DEST_MODULE_LOCATION[${#DEST_MODULE_LOCATION[@]}]="/ updates/lnet/" BUILT_MODULE_NAME[${#BUILT_MODULE_NAME[@]}]="lnet" BUILT_MODULE_LOCATION[${#BUILT_MODULE_LOCATION[@]}]="lnet/lnet/" DEST_MODULE_LOCATION[${#DEST_MODULE_LOCATION[@]}]="/ updates/lnet/" <~snip~> Somehow there is an extra space in the location value. Investigating.
          pjones Peter Jones added a comment -

          JIan

          Has this issue already been fixed in 2.15.1?

          Peter

          pjones Peter Jones added a comment - JIan Has this issue already been fixed in 2.15.1? Peter

          People

            yujian Jian Yu
            Zohouri Hamidreza Zohouri
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: