lkml.org 
[lkml]   [2008]   [Apr]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: regression caused by: genirq: do not leave interupts enabled on free_irq
    On Tue, Apr 15, 2008 at 12:44 AM, Andrew Morton
    <akpm@linux-foundation.org> wrote:
    >
    > On Fri, 11 Apr 2008 12:48:43 -0700 "Yinghai Lu" <yhlu.kernel@gmail.com> wrote:
    >
    > > On Fri, Apr 11, 2008 at 11:22 AM, Yinghai Lu <yhlu.kernel@gmail.com> wrote:
    > > > On Fri, Apr 11, 2008 at 12:30 AM, Eric W. Biederman
    > > > <ebiederm@xmission.com> wrote:
    > > > >
    > > > >
    > > >
    > > >
    > > > > On Fri, 2008-04-11 at 00:17 -0700, Yinghai Lu wrote:
    > > > > > On Fri, Apr 11, 2008 at 12:14 AM, Yinghai Lu <yhlu.kernel@gmail.com> wrote:
    > > > > > > On Fri, Apr 11, 2008 at 12:01 AM, Thomas Gleixner <tglx@linutronix.de> wrote:
    > > > > > > > On Thu, 10 Apr 2008, Yinghai Lu wrote:
    > > > > > > > > last week found:
    > > > > > > > > after latest kernel kexec RHEL 5.1 or other stack kernel, the nvidia
    > > > > > > > > forcedeth doesn't work anymore.
    > > > > > > > >
    > > > > > > > > I stared at forcedeth.c two days. and revert every patches about that
    > > > > > > > > doesn't help.
    > > > > > > >
    > > > > > > > So forcedeth does not come up again, when you kexec from linus.git
    > > > > > > > into an older distro kernel. Or is it the other way round ?
    > > > > > > RHEL 5.1 kexec RHEL 5.1 : works
    > > > > > > RHEL 5.1 kexec linus kernel: works
    > > > > > > linus (after -rc2) kexec linus tree: works:
    > > > > > > linus (after -rc2) kexec RHEL 5.1 : forcedeth will not come up
    > > > > > > linus ( before -rc2 include rc2) kexec RHEL 5.1 works
    > > > > > >
    > > > > > the forcedeth can not get IP address...
    > > > >
    > > > > Sounds like you are not getting any interrupts when you receive a
    > > > > packet. (i.e. The interrupt line is staying disabled).
    > > > >
    > > > > Is MSI an option here? I'm wondering if we disable the MSI and
    > > > > something is not enabling it.
    > > >
    > > >
    > > >
    > > > after
    > > > setpci -s 0x00:08.0 0x60.b=0xfe
    > > >
    > > > the eth0 can get ip address with ifup eth0.
    > >
    > > it is RHEL 5.1 problem...with msi.
    > >
    > > somehow msi entry msi_attrib_maskbit=is_mask_bit_support always get
    > > 0...., and use msi_irq_wo_maskbit_type instead of
    > > msi_irq_w_maskbit_type
    > >
    > > so when load that directly without kexec
    > > that 0x60 always to 0x00.
    > >
    > > and this time kernel after 2.6.25-rc2 ( not included) really shutdown
    > > the msi with 0xff the all maskbit...
    > >
    >
    > So... where did this end up? It's a post-2.6.24 regression, isn't it?
    >
    > Do we think it's a bug in the RHEL 5.1 kernel? Even so, that's a problem
    > for the 2.6.25 kernel.

    it is RHEL 5.1 kernel problem, it has code for maskbit with msi there,
    but that does work...

    I sent out patch for 2.6.25 so it can be used to kexec old kernel that
    doesn't support maskbit for MSI.

    please comment...

    [PATCH] x86_64: restore mask_bits in msi shutdown


    for MSI, default_shutdown will call mask_bit for msi device. so all
    mask bits will
    left disabled after free_irq.
    then if kexec next kernel that only can use msi_enable bit.
    all device's MSI can not be used.

    So try to restore MSI mask bits that is saved before using msi in first kernel.

    http://lkml.org/lkml/2008/4/11/369

    YH


    \
     
     \ /
      Last update: 2008-04-15 10:05    [W:4.610 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site