From: "Michael Chan" <[EMAIL PROTECTED]> Date: Wed, 18 Jul 2007 20:40:47 -0700
> [TG3]: Fix msi issue with kexec/kdump. > > Tina Yang <[EMAIL PROTECTED]> discovered an MSI related problem > when doing kdump. The problem is that the kexec kernel is booted > without going through system reset, and as a result, MSI may already > be enabled when tg3_init_one() is called. tg3_init_one() calls > pci_save_state() which will save the stale MSI state. Later on in > tg3_open(), we call pci_enable_msi() to reconfigure MSI on the chip > before we reset the chip. After chip reset, we call > pci_restore_state() which will put the stale MSI address/data back > onto the chip. > > This is no longer a problem in the latest kernel because > pci_restore_state() has been changed to restore MSI state from > internal data structures which will guarantee restoring the proper > MSI state. > > But I think we should still fix it. Our save and restore sequence > can still cause very subtle problems down the road. The fix is to > have our own functions save and restore precisely what we need. We > also change it to save and restore state inside tg3_chip_reset() in a > more straight forward way. > > Thanks to Tina for helping to test and debug the problem. > > Signed-off-by: Michael Chan <[EMAIL PROTECTED]> Looks good, applied. For good measure, I bumped the driver version and release date. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html