lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Wed, 07 May 2008 18:50:06 -0500
From:	James Bottomley <James.Bottomley@...senPartnership.com>
To:	Andrew Morton <akpm@...ux-foundation.org>
Cc:	Yinghai Lu <yhlu.kernel@...il.com>, linux-kernel@...r.kernel.org,
	linux-scsi@...r.kernel.org, sathya.prakash@....com,
	Eric.Moore@....com, ebiederm@...ssion.com
Subject: Re: [PATCH] mptsas: add mptsas_shutdown to call pci_disable_msi

On Wed, 2008-05-07 at 16:31 -0700, Andrew Morton wrote:
> On Tue, 22 Apr 2008 20:12:08 -0700
> "Yinghai Lu" <yhlu.kernel@...il.com> wrote:
> 
> > On Tue, Apr 22, 2008 at 7:47 PM, Yinghai Lu <yhlu.kernel.send@...il.com> wrote:
> > >
> > >
> > >  this change
> > >
> > >  | commit 23a274c8a5adafc74a66f16988776fc7dd6f6e51
> > >  | Author: Prakash, Sathya <sathya.prakash@....com>
> > >  | Date:   Fri Mar 7 15:53:21 2008 +0530
> > >  |
> > >  |     [SCSI] mpt fusion: Enable MSI by default for SAS controllers
> > >  |
> > >  |     This patch modifies the driver to enable MSI by default for all SAS chips.
> > >  |
> > >  cause kexec RHEL 5.1 kernel fail.
> > >
> > >  root casue: the rhel 5.1 kernel still use INTx emulation.
> > >  and mptscsih_shutdown doesn't call pci_disable_msi to reenable INTx on kexec path
> > >
> > >  so try to call mptsas_remove in mptsas_shutdown.
> > >  then pci_disable_msi will be called via mptsas_remove==>mptscih_remove==>
> > >  mpt_detach.
> > >
> > >  Signed-off-by: Yinghai Lu <yhlu.kernel@...il.com>
> > >  CC: Prakash, Sathya <sathya.prakash@....com>
> > >  CC: "Moore, Eric" <Eric.Moore@....com>
> > >
> > >  Index: linux-2.6/drivers/message/fusion/mptsas.c
> > >  ===================================================================
> > >  --- linux-2.6.orig/drivers/message/fusion/mptsas.c
> > >  +++ linux-2.6/drivers/message/fusion/mptsas.c
> > >  @@ -3327,6 +3327,11 @@ static void __devexit mptsas_remove(stru
> > >         mptscsih_remove(pdev);
> > >   }
> > >
> > >  +static void mptsas_shutdown(struct pci_dev *pdev)
> > >  +{
> > >  +       mptsas_remove(pdev);
> > >  +}
> > >  +
> > >   static struct pci_device_id mptsas_pci_table[] = {
> > >         { PCI_VENDOR_ID_LSI_LOGIC, MPI_MANUFACTPAGE_DEVID_SAS1064,
> > >                 PCI_ANY_ID, PCI_ANY_ID },
> > >  @@ -3348,7 +3353,7 @@ static struct pci_driver mptsas_driver =
> > >         .id_table       = mptsas_pci_table,
> > >         .probe          = mptsas_probe,
> > >         .remove         = __devexit_p(mptsas_remove),
> > >  -       .shutdown       = mptscsih_shutdown,
> > >  +       .shutdown       = mptsas_shutdown,
> > >   #ifdef CONFIG_PM
> > >         .suspend        = mptscsih_suspend,
> > >         .resume         = mptscsih_resume,
> > >  --
> > 
> > fail on one system with big sas expander...
> > 
> > LBSuse:~ # mkdir /xx
> > LBSuse:~ # mount /dev/sdl1 /xx
> > LBSuse:~ # cd /xx
> > LBSuse:/xx # sh kk_rh_5.1
> > LBSuse:/xx # ./kexec -e
> > BUG: unable to handle kernel NULL pointer dereference at 0000000000000028
> > IP: [<ffffffff80337af4>] sysfs_find_dirent+0x1f/0x5f
> > PGD 41f137067 PUD 424482067 PMD 0
> > Oops: 0000 [1] SMP
> > CPU 7
> > Modules linked in:
> > Pid: 7534, comm: kexec Not tainted
> 
> I don't understand your email.
> 
> Are you saying that this oops is the thing which your patch fixes?
> 
> Or are you saying that this oops occurs even after your patch is applied? 
> That we have a second regression?

The regression is actually PCI generic, not mpt specific.  It was fixed
by this commit:

commit d52877c7b1afb8c37ebe17e2005040b79cb618b0
Author: Yinghai Lu <yhlu.kernel.send@...il.com>
Date:   Wed Apr 23 14:58:09 2008 -0700

    pci/irq: let pci_device_shutdown to call pci_msi_shutdown v2


James


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ