UNSOLVED

sjelle

updated

17 years ago

S

sjelle

5 Posts

0

39858

September 22nd, 2009 07:00

dkms kernel upgrade installed-weak

We have a Dell R710 originally installed with RHEL 5.3 Kernel 2.6.18-128.el5. We have an MD3000 attached and have installed the DKMS Dell drivers for mptlinux, linuxrdac.

We then upgraded the kernel to 2.6.18-128.4.1. Initially we could not talk to the MD3000 at all. We re-installed the drivers Dell drivers. Everything is working, but “dkms status|grep -i weak” shows that drivers dkms kernel module drivers are installed-weak.

- Is this an issue?
- How to we correct this?
- It has been suggested that we use grub to boot back to the prior kernel and issue “dkms match –k 2.6.18-128.4.1.el5 –templatekernel 2.6.18-128.el5”. Is this a good idea?
- What is the proper procedure we should do for the next kernel update (when we are using dkms)?

Thanks
sjelle

[root@xxxx dkms]# dkms status|grep -i weak
linuxrdac, 09.03.0C06.0030, 2.6.18-128.el5, x86_64: installed-weak from 2.6.18-128.4.1.el5
mptlinux, 4.00.38.02, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
sg, 3.5.34dell, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
ioatdma, 3.59, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
netxtreme2, 4.8.21, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
e1000e, 0.5.11.2, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
bnx2i, 1.6.2, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
ixgbe, 1.3.56.11, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
igb, 1.3.8.6, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5

  • Dev Mgr

    6 Operator

    •

    9308 Posts

    •

    3 Points

    853

    0

    Posted September 22nd, 2009 08:00

    What is the output from a "dkms status"?

  • sjelle

    5 Posts

    853

    0

    Posted September 22nd, 2009 08:00

    Here is the complete output of of "dkms status"

    [root@xxxx ~]# dkms status
    linuxrdac, 09.03.0C06.0030, 2.6.18-92.el5, i686: built
    linuxrdac, 09.03.0C06.0030, 2.6.18-128.4.1.el5, x86_64: installed
    mptlinux, 4.00.38.02, 2.6.18-128.el5PAE, i686: built
    mptlinux, 4.00.38.02, 2.6.18-128.el5, x86_64: installed (original_module exists)
    mptlinux, 4.00.38.02, 2.6.18-128.el5, i686: built
    mptlinux, 4.00.38.02, 2.6.18-128.el5xen, x86_64: built
    mptlinux, 4.00.38.02, 2.6.18-128.el5xen, i686: built
    tg3, 3.92n, 2.6.18-128.4.1.el5, x86_64: built
    tg3, 3.92n, 2.6.18-128.el5, x86_64: built
    tg3, 3.92n, 2.6.18-128.el5xen, x86_64: built
    netxtreme2, 4.8.21, 2.6.18-128.el5, x86_64: installed (original_module exists)
    netxtreme2, 4.8.21, 2.6.18-128.el5xen, x86_64: built
    ioatdma, 3.59, 2.6.18-92.el5xen, x86_64: built
    ioatdma, 3.59, 2.6.18-92.el5xen, i686: built
    ioatdma, 3.59, 2.6.18-92.el5, x86_64: built
    ioatdma, 3.59, 2.6.18-92.el5, i686: built
    ioatdma, 3.59, 2.6.18-92.el5PAE, i686: built
    ioatdma, 3.59, 2.6.16.21-0.8-smp, x86_64: built
    ioatdma, 3.59, 2.6.18-128.el5PAE, i686: built
    ioatdma, 3.59, 2.6.16.60-0.21-xen, x86_64: built
    ioatdma, 3.59, 2.6.16.60-0.21-smp, x86_64: built
    ioatdma, 3.59, 2.6.16.21-0.8-xen, x86_64: built
    ioatdma, 3.59, 2.6.16.21-0.8-debug, x86_64: built
    ioatdma, 3.59, 2.6.18-8.el5PAE, i686: built
    ioatdma, 3.59, 2.6.16.60-0.21-kdump, x86_64: built
    ioatdma, 3.59, 2.6.16.21-0.8-kdump, x86_64: built
    ioatdma, 3.59, 2.6.18-128.el5, x86_64: installed (original_module exists)
    ioatdma, 3.59, 2.6.18-128.el5, i686: built
    ioatdma, 3.59, 2.6.18-8.el5, x86_64: built
    ioatdma, 3.59, 2.6.18-8.el5, i686: built
    ioatdma, 3.59, 2.6.16.21-0.8-default, x86_64: built
    ioatdma, 3.59, 2.6.18-8.el5xen, x86_64: built
    ioatdma, 3.59, 2.6.18-8.el5xen, i686: built
    ioatdma, 3.59, 2.6.18-128.el5xen, x86_64: built
    ioatdma, 3.59, 2.6.18-128.el5xen, i686: built
    ioatdma, 3.59, 2.6.16.60-0.21-debug, x86_64: built
    ioatdma, 3.59, 2.6.16.60-0.21-default, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-92.el5xen, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-92.el5xen, i686: built
    e1000e, 0.5.11.2, 2.6.9-78.ELsmp, x86_64: built
    e1000e, 0.5.11.2, 2.6.9-78.ELsmp, i686: built
    e1000e, 0.5.11.2, 2.6.18-92.el5, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-92.el5, i686: built
    e1000e, 0.5.11.2, 2.6.18-92.el5PAE, i686: built
    e1000e, 0.5.11.2, 2.6.16.21-0.8-smp, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-128.el5PAE, i686: built
    e1000e, 0.5.11.2, 2.6.27.19-5-xen, x86_64: built
    e1000e, 0.5.11.2, 2.6.16.60-0.21-xen, x86_64: built
    e1000e, 0.5.11.2, 2.6.9-78.ELlargesmp, x86_64: built
    e1000e, 0.5.11.2, 2.6.16.60-0.21-smp, x86_64: built
    e1000e, 0.5.11.2, 2.6.16.21-0.8-xen, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-8.el5PAE, i686: built
    e1000e, 0.5.11.2, 2.6.9-78.ELhugemem, i686: built
    e1000e, 0.5.11.2, 2.6.16.60-0.21-kdump, x86_64: built
    e1000e, 0.5.11.2, 2.6.9-78.EL, x86_64: built
    e1000e, 0.5.11.2, 2.6.9-78.EL, i686: built
    e1000e, 0.5.11.2, 2.6.5-7.308-default, x86_64: built
    e1000e, 0.5.11.2, 2.6.16.21-0.8-kdump, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-128.el5, x86_64: installed (original_module exists)
    e1000e, 0.5.11.2, 2.6.18-128.el5, i686: built
    e1000e, 0.5.11.2, 2.6.18-8.el5, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-8.el5, i686: built
    e1000e, 0.5.11.2, 2.6.5-7.308-smp, x86_64: built
    e1000e, 0.5.11.2, 2.6.16.21-0.8-default, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-8.el5xen, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-8.el5xen, i686: built
    e1000e, 0.5.11.2, 2.6.18-128.el5xen, x86_64: built
    e1000e, 0.5.11.2, 2.6.18-128.el5xen, i686: built
    e1000e, 0.5.11.2, 2.6.27.19-5-default, x86_64: built
    e1000e, 0.5.11.2, 2.6.16.60-0.21-default, x86_64: built
    bnx2i, 1.6.2, 2.6.18-128.el5, x86_64: installed
    sg, 3.5.34dell, 2.6.18-128.el5, x86_64: installed (original_module exists)
    sg, 3.5.34dell, 2.6.18-8.el5, x86_64: built
    igb, 1.3.8.6, 2.6.18-92.el5xen, x86_64: built
    igb, 1.3.8.6, 2.6.18-92.el5xen, i686: built
    igb, 1.3.8.6, 2.6.9-78.ELsmp, x86_64: built
    igb, 1.3.8.6, 2.6.9-78.ELsmp, i686: built
    igb, 1.3.8.6, 2.6.18-92.el5, x86_64: built
    igb, 1.3.8.6, 2.6.18-92.el5, i686: built
    igb, 1.3.8.6, 2.6.18-92.el5PAE, i686: built
    igb, 1.3.8.6, 2.6.16.21-0.8-smp, x86_64: built
    igb, 1.3.8.6, 2.6.18-128.el5PAE, i686: built
    igb, 1.3.8.6, 2.6.27.19-5-xen, x86_64: built
    igb, 1.3.8.6, 2.6.16.60-0.21-xen, x86_64: built
    igb, 1.3.8.6, 2.6.9-78.ELlargesmp, x86_64: built
    igb, 1.3.8.6, 2.6.16.60-0.21-smp, x86_64: built
    igb, 1.3.8.6, 2.6.16.21-0.8-xen, x86_64: built
    igb, 1.3.8.6, 2.6.18-8.el5PAE, i686: built
    igb, 1.3.8.6, 2.6.9-78.ELhugemem, i686: built
    igb, 1.3.8.6, 2.6.16.60-0.21-kdump, x86_64: built
    igb, 1.3.8.6, 2.6.9-78.EL, x86_64: built
    igb, 1.3.8.6, 2.6.9-78.EL, i686: built
    igb, 1.3.8.6, 2.6.5-7.308-default, x86_64: built
    igb, 1.3.8.6, 2.6.16.21-0.8-kdump, x86_64: built
    igb, 1.3.8.6, 2.6.18-128.el5, x86_64: installed (original_module exists)
    igb, 1.3.8.6, 2.6.18-128.el5, i686: built
    igb, 1.3.8.6, 2.6.18-8.el5, x86_64: built
    igb, 1.3.8.6, 2.6.18-8.el5, i686: built
    igb, 1.3.8.6, 2.6.5-7.308-smp, x86_64: built
    igb, 1.3.8.6, 2.6.16.21-0.8-default, x86_64: built
    igb, 1.3.8.6, 2.6.18-8.el5xen, x86_64: built
    igb, 1.3.8.6, 2.6.18-8.el5xen, i686: built
    igb, 1.3.8.6, 2.6.18-128.el5xen, x86_64: built
    igb, 1.3.8.6, 2.6.18-128.el5xen, i686: built
    igb, 1.3.8.6, 2.6.27.19-5-default, x86_64: built
    igb, 1.3.8.6, 2.6.16.60-0.21-default, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-92.el5xen, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-92.el5xen, i686: built
    ixgbe, 1.3.56.11, 2.6.9-78.ELsmp, x86_64: built
    ixgbe, 1.3.56.11, 2.6.9-78.ELsmp, i686: built
    ixgbe, 1.3.56.11, 2.6.18-92.el5, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-92.el5, i686: built
    ixgbe, 1.3.56.11, 2.6.18-92.el5PAE, i686: built
    ixgbe, 1.3.56.11, 2.6.16.21-0.8-smp, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-128.el5PAE, i686: built
    ixgbe, 1.3.56.11, 2.6.27.19-5-xen, x86_64: built
    ixgbe, 1.3.56.11, 2.6.16.60-0.21-xen, x86_64: built
    ixgbe, 1.3.56.11, 2.6.9-78.ELlargesmp, x86_64: built
    ixgbe, 1.3.56.11, 2.6.16.60-0.21-smp, x86_64: built
    ixgbe, 1.3.56.11, 2.6.16.21-0.8-xen, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-8.el5PAE, i686: built
    ixgbe, 1.3.56.11, 2.6.9-78.ELhugemem, i686: built
    ixgbe, 1.3.56.11, 2.6.16.60-0.21-kdump, x86_64: built
    ixgbe, 1.3.56.11, 2.6.9-78.EL, x86_64: built
    ixgbe, 1.3.56.11, 2.6.9-78.EL, i686: built
    ixgbe, 1.3.56.11, 2.6.5-7.308-default, x86_64: built
    ixgbe, 1.3.56.11, 2.6.16.21-0.8-kdump, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-128.el5, x86_64: installed (original_module exists)
    ixgbe, 1.3.56.11, 2.6.18-128.el5, i686: built
    ixgbe, 1.3.56.11, 2.6.18-8.el5, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-8.el5, i686: built
    ixgbe, 1.3.56.11, 2.6.5-7.308-smp, x86_64: built
    ixgbe, 1.3.56.11, 2.6.16.21-0.8-default, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-8.el5xen, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-8.el5xen, i686: built
    ixgbe, 1.3.56.11, 2.6.18-128.el5xen, x86_64: built
    ixgbe, 1.3.56.11, 2.6.18-128.el5xen, i686: built
    ixgbe, 1.3.56.11, 2.6.27.19-5-default, x86_64: built
    ixgbe, 1.3.56.11, 2.6.16.60-0.21-default, x86_64: built
    linuxrdac, 09.03.0C06.0030, 2.6.18-128.el5, x86_64: installed-weak from 2.6.18-128.4.1.el5
    mptlinux, 4.00.38.02, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
    sg, 3.5.34dell, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
    ioatdma, 3.59, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
    netxtreme2, 4.8.21, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
    e1000e, 0.5.11.2, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
    bnx2i, 1.6.2, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
    ixgbe, 1.3.56.11, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5
    igb, 1.3.8.6, 2.6.18-128.4.1.el5, x86_64: installed-weak from 2.6.18-128.el5

  • sjelle

    5 Posts

    853

    0

    Posted September 23rd, 2009 09:00

    Hoping someone has some insight into dkms and "installed-weak" handling... We have to make a decision soon whether to attempt a resolution on production soon. 

    Thanks

    sjelle

  • 853

    0

    Posted September 28th, 2009 09:00

    "installed-weak" means that the drivers were not recompiled for the kernel version you are running.  Instead it is relying on Red Hat's stable Kernel Application Binary Interface (kABI) promise, to let drivers built on an older kernel run fine on a newer kernel.  'installed-weak' modules are _not_ used by the kernel if there is a native-built version of the drivers for your particular kernel version already provided by Red Hat.  This is by design, as new Red Hat-published kernels are expected to have the latest drivers.

    If you are finding that you need the version from the DKMS package, and not the version already in the kernel package, you can have DKMS build and install it for you.

    # dkms uninstall -m themodule -v theversion -k thekernelversion

    # dkms build -m themodule -v theversion -k thekernelversion
    # dkms install -m themodule -v theversion -k thekernelversion

     

  • 853

    0

    Posted September 28th, 2009 09:00

    but simply being 'installed-weak' is not a problem.

  • sjelle

    5 Posts

    853

    0

    Posted September 28th, 2009 10:00

    Matt, thanks for the information...

    I understand more from your comments, but am still a little confused.

    I assume that we still need the DKMS drivers (mptlinux, linuxrdac, plus a few others) because when we rebooted after the kernel upgrade to 2.6.18-128.4.1, we could not talk to the MD3000 and many I/O error messages were being written to /var/log/messages.  Is this a correct assumption?
    ----
    The dkms commands are hidden from us because we are an install script on the "Dell MD3000 Resource CD".  This script gives us the menu options  to "Install SAS 5/E Adapter Driver" and "Install Multi-pathing driver".  We believe these 2 menu choices install mptlinux and linuxdrac DKMS driver modules.  After we had done the kernel upgrade to 2.6.18-128.4.1, and could not communicate to the MD3000, we ran this "Dell MD3000 Resource CD" install script again (on the new kernel) to arrive at the "installed-weak" status we are at currently.


    ----
    If we need really do need the DKMS version of these drivers you are suggesting the following comamnds:
    # dkms uninstall -m themodule -v theversion -k thekernelversion

    # dkms build -m themodule -v theversion -k thekernelversion
    # dkms install -m themodule -v theversion -k thekernelversion

    - Can all three of these commands be issued when booted to our current Kernel of 2.6.18-128.4.1?
    - For the “uninstall” command - do we specify our current Kernel version (in which I believe it is weak installed “2.6.18-128.4.1”)?
    - I assume that we do not need to do anything with the "Dell MD3000 Resource CD" for these steps correct?
    - Is there a way to know if there is a native-built version of the driver in our current kernel?
    ----
    - Someone else had suggested that we boot to the prior kernel and issue: dkms match –k 2.6.18-128.4.1.el5 –templatekernel 2.6.18-128.el5”... Would that have also worked?  If so would we have had to boot to the prior kernel, or could the match command be issued until the current kernel of 2.6.18-128.4.1?

    ----
    - For future kernel upgrade we want to make sure that we understand the correct procedure (assuming that these kernel drivers are still needed with the new kernel).   There are currently 9 "installed-weak" modules.  I believe these are all related to the "Dell MD3000 Resource CD" install.   It would be nice if we could build a checklist so whenever we do a kernel upgrade we can just follow this checklist for the dkms driver modules.  We would like to understand when each step is performed (i.e. before new kernel install, between new kernel install and boot to new kernel, after new kernel boot.  We would like to understand if running the install script from the "Dell MD3000 Resource CD" should be done with a kernel upgrade.  Is there a way to check if a native-built version of the driver is available in the new kernel?  If that would be the case, would we need to  uninstall the dkms driver module version?

    Thanks and sorry for all of the follow-up questions,
    sjelle

     

  • sjelle

    5 Posts

    853

    0

    Posted November 2nd, 2009 07:00

    Matt or others...

    Can you provide any additional information.  Please see my prior post (dated 9-28) with additional questions/clarifications.


    Thanks,
    sjelle