lkml.org 
[lkml]   [2007]   [Mar]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: SATA resume slowness, e1000 MSI warning
    Date
    Jeff Garzik <jeff@garzik.org> writes:

    > Eric W. Biederman wrote:
    >> Until I get the best scenario I can come up with is a tg3 hardware bug
    >> that doesn't renable the pci-X capability after a restore of power state.
    >
    >
    > Speaking of tg3, make sure you are aware that the number of calls to save-state
    > functions may not match the number of calls to the restore-state functions.
    > ISTR seeing some memleak bugs in PCI related to this.

    Thanks that looks like the problem, multiple calls to save before one
    call to restore when you have a pci-x capability would easily trigger
    this problem. I just surveyed a bunch of the pci_save_state and
    pci_restore_state users and this appears to be a common idiom not just
    a tg3 thing....

    It looks like when code was added to save/restore the msi capability
    was added to pci_save/restore_state that an assumption was added that
    pci_save_state and pci_restore state were only used for suspend and
    only used in pairs. There is even a partial bug fix that removed the
    worst of the symptoms of that assumption from the msi code but failed
    to recognize the core problem.

    Now that we have code to work with pcie and pcix capabilities as well
    as msi this problem is much easier to hit.

    All of pci_save_state and pci_restore_state is going to have to be
    restructured to fix this, and it is late in the game. Ugh.
    Oh well, better to fix it now

    At least I get my answer about if what pci_save_state is doing
    is reasonable. It is not. pci_save_state no longer supports being
    used in conjunction with hardware reset and has become a
    suspend/resume specific function.

    Now I'm off to wite some patches to fix this.

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

    \
     
     \ /
      Last update: 2007-03-08 18:33    [W:4.274 / U:0.284 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site