public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Linus Torvalds <torvalds@linux-foundation.org>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Parag Warudkar <parag.lkml@gmail.com>,
	Matt Carlson <mcarlson@broadcom.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	"David S. Miller" <davem@davemloft.net>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: What should PCI core do during suspend-resume? (was: Re: 2.6.29-rc3: tg3 dead after resume)
Date: Sat, 31 Jan 2009 15:39:18 -0800 (PST)	[thread overview]
Message-ID: <alpine.LFD.2.00.0901311534340.3067@localhost.localdomain> (raw)
In-Reply-To: <alpine.LFD.2.00.0901311516360.2978@localhost.localdomain>



On Sat, 31 Jan 2009, Linus Torvalds wrote:
> 
> But how many people test STR while doing a "ping -f" from another machine?
> 
> It _should_ work. Do you guarantee that it does?

Btw, this really only is interesting if there's a shared interrupt. 

I'm sure that there are network drivers that will crash even on their own 
with _just_ the right timing (imagine having a delayed interrupt pending, 
then doing the "pci_set_power_state(PCI_D3hot)" thing, and then get the 
interrupt handler invoked on another CPU _just_ afterwards), but it's 
probably really hard to trigger, and a bug in that specific driver anyway.

But what's much more interesting (and not necessarily a driver bug, but a 
general PM infrastructure problem) is if we have that shared interrupt 
case, and the network driver gets lots of interrupts just as "driver X" is 
shutting down with that interrupt shared. Then, "driver X" will get 
interrupts after the PM layer has put its device to sleep, and now "driver 
X" is quite understandably confused - it didn't even do the "put to sleep" 
itself, but now its device is no longer responding.

And now it's not a really unlikely race condition any more. 

			Linus

  reply	other threads:[~2009-01-31 23:40 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-29  0:14 2.6.29-rc3: tg3 dead after resume Parag Warudkar
2009-01-29  1:09 ` Linus Torvalds
2009-01-29  1:49   ` Parag Warudkar
2009-01-29  2:10     ` Linus Torvalds
2009-01-29  2:19       ` Matt Carlson
2009-01-29 22:22         ` Rafael J. Wysocki
2009-01-29 18:42     ` Matt Carlson
2009-01-29 22:06       ` Parag Warudkar
2009-01-29 22:22         ` Matt Carlson
2009-01-29 22:35           ` Parag Warudkar
2009-01-29 23:10             ` Rafael J. Wysocki
2009-01-30 18:40             ` Matt Carlson
2009-01-30 22:50               ` Parag Warudkar
2009-01-30 23:06                 ` Linus Torvalds
2009-01-30 23:33                   ` Linus Torvalds
2009-01-30 23:45                   ` Parag Warudkar
2009-01-30 23:57                     ` Linus Torvalds
2009-01-30 23:59                     ` Rafael J. Wysocki
2009-01-31  0:28                       ` Parag Warudkar
2009-01-31  0:38                         ` Rafael J. Wysocki
2009-01-31  0:44                           ` Ingo Molnar
2009-01-31  0:47                             ` Rafael J. Wysocki
2009-01-31  1:21                           ` Parag Warudkar
2009-01-31  1:37                             ` Rafael J. Wysocki
2009-01-31  1:42                               ` Parag Warudkar
2009-02-03  9:29                                 ` Rafael J. Wysocki
2009-02-03 21:27                                   ` Parag Warudkar
2009-02-03 22:15                                     ` Rafael J. Wysocki
2009-02-03 23:50                                       ` WARNING: at drivers/pci/pci-driver.c:368 Parag Warudkar
2009-02-04  0:10                                         ` Rafael J. Wysocki
2009-02-04  0:17                                           ` Parag Warudkar
2009-02-04  0:19                                             ` Parag Warudkar
2009-02-04  0:38                                       ` 2.6.29-rc3: tg3 dead after resume Parag Warudkar
2009-02-04  0:41                                         ` Rafael J. Wysocki
2009-02-07  3:00                                           ` Linus Torvalds
2009-02-07 18:03                                             ` Jesse Barnes
2009-01-31  1:46                             ` Linus Torvalds
2009-01-31  1:54                               ` Parag Warudkar
2009-01-31  2:25                                 ` Linus Torvalds
2009-01-31  2:40                                   ` Parag Warudkar
2009-01-31 18:51                                     ` Rafael J. Wysocki
2009-01-31  2:19                               ` Linus Torvalds
2009-01-31 20:45                                 ` Rafael J. Wysocki
2009-01-31  1:41                           ` Linus Torvalds
2009-01-31 21:08                             ` Rafael J. Wysocki
2009-01-31 21:42                               ` What should PCI core do during suspend-resume? (was: Re: 2.6.29-rc3: tg3 dead after resume) Rafael J. Wysocki
2009-01-31 21:59                                 ` Linus Torvalds
2009-01-31 23:08                                   ` Rafael J. Wysocki
2009-01-31 23:27                                     ` Linus Torvalds
2009-01-31 23:39                                       ` Linus Torvalds [this message]
2009-02-01  0:36                                         ` Rafael J. Wysocki
2009-02-01  1:06                                           ` Linus Torvalds
2009-02-01  1:13                                             ` Linus Torvalds
2009-02-01  1:20                                             ` Arjan van de Ven
2009-02-01  1:24                                             ` Rafael J. Wysocki
2009-02-07  9:21                                 ` Pavel Machek
2009-01-31 21:47                               ` 2.6.29-rc3: tg3 dead after resume Linus Torvalds
2009-01-31 22:46                                 ` Rafael J. Wysocki
2009-01-31 23:01                                   ` Linus Torvalds
2009-02-01  0:11                                     ` Rafael J. Wysocki
2009-02-01  0:32                                       ` Linus Torvalds
2009-02-01  0:41                                         ` Rafael J. Wysocki
2009-02-01  0:51                                         ` Linus Torvalds
2009-02-07  3:27                                           ` Benjamin Herrenschmidt
2009-02-07  3:26                                     ` Benjamin Herrenschmidt
2009-01-29 23:03         ` Rafael J. Wysocki
2009-01-29 23:41           ` Matt Carlson
2009-01-30  0:10             ` Rafael J. Wysocki
2009-01-30 22:31               ` Parag Warudkar
2009-01-30 22:36                 ` Linus Torvalds
2009-01-30 22:54                 ` Rafael J. Wysocki
2009-01-30 23:07                   ` Linus Torvalds
2009-01-30 23:13                   ` Parag Warudkar
2009-01-30 23:31                     ` Rafael J. Wysocki
2009-01-30 23:51                       ` Linus Torvalds
2009-01-31  0:07                         ` Rafael J. Wysocki
2009-01-31  0:34                         ` Rafael J. Wysocki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LFD.2.00.0901311534340.3067@localhost.localdomain \
    --to=torvalds@linux-foundation.org \
    --cc=akpm@linux-foundation.org \
    --cc=davem@davemloft.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mcarlson@broadcom.com \
    --cc=netdev@vger.kernel.org \
    --cc=parag.lkml@gmail.com \
    --cc=rjw@sisk.pl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox