public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Matthew Wilcox <matthew@wil.cx>
To: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Brian King <brking@us.ibm.com>,
	linux-pci@atrey.karlin.mff.cuni.cz, linux-pm@lists.osdl.org,
	linux-kernel@vger.kernel.org, Alan Cox <alan@lxorguk.ukuu.org.uk>,
	Greg KH <greg@kroah.com>, Adam Belay <abelay@MIT.EDU>
Subject: Re: [PATCH] Block on access to temporarily unavailable pci device
Date: Wed, 18 Oct 2006 09:16:01 -0600	[thread overview]
Message-ID: <20061018151601.GR22289@parisc-linux.org> (raw)
In-Reply-To: <4536446A.6000405@yahoo.com.au>

On Thu, Oct 19, 2006 at 01:12:42AM +1000, Nick Piggin wrote:
> Matthew Wilcox wrote:
> 
> >I also addressed the potential issue with nested attempts to block.
> >Now pci_block_user_cfg_access() can return -EBUSY if it's already blocked,
> >and pci_unblock_user_cfg_access() will WARN if you try to unblock an
> >already unblocked device.
> 
> Why not just WARN if it is already blocked as well? Presumably if the

Because the driver can check the return value and fail the higher level
operation.

> driver needs nested blocking, it is going to have to carry some state
> to know when to do the final unblock anyway, so it may as well just
> not do these redundant blocks either.

No driver needs nested blocking, but blocks may be imposed on a driver's
device by the PCI core, for example.

> ** or ** just do a counting block/unblock to properly support nesting
> them. That is, go one way or the other, and do it properly.

I don't think that's necessary.  Right now, we have one user (IPR's
BIST) and I'm trying to add a second (D-state transitions).  We don't
need nested blocks, but we do need to fail in the highly unlikely case
someone tries to do them.

If it turns out we actually need them later, let's revisit this when we
have a user.

  reply	other threads:[~2006-10-18 15:16 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-17 14:51 [PATCH] Block on access to temporarily unavailable pci device Matthew Wilcox
2006-10-17 14:54 ` Matthew Wilcox
2006-10-17 21:25 ` Brian King
2006-10-18 14:38   ` [linux-pm] " Alan Stern
2006-10-18 14:51     ` Matthew Wilcox
2006-10-18 15:52       ` Alan Stern
2006-10-18 16:05         ` Alan Cox
2006-10-18 16:09           ` Matthew Wilcox
2006-10-18 16:42             ` Alan Cox
2006-10-18 14:51   ` Matthew Wilcox
2006-10-18 14:57     ` Matthew Wilcox
2006-10-18 15:12     ` Nick Piggin
2006-10-18 15:16       ` Matthew Wilcox [this message]
2006-10-18 15:27         ` Nick Piggin
2006-10-18 15:50     ` Alan Cox
2006-10-18 16:20       ` Matthew Wilcox
2006-10-18 16:39         ` Alan Cox
2006-10-18 17:14           ` Matthew Wilcox
2006-10-19 15:41 ` [PATCH] Block on access to temporarily unavailable pci device [version 3] Matthew Wilcox
2006-10-19 16:32   ` Alan Cox
2006-10-19 23:13   ` Adam Belay
2006-10-19 23:51     ` Greg KH
2006-10-20 21:50   ` Brian King

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=20061018151601.GR22289@parisc-linux.org \
    --to=matthew@wil.cx \
    --cc=abelay@MIT.EDU \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=brking@us.ibm.com \
    --cc=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@atrey.karlin.mff.cuni.cz \
    --cc=linux-pm@lists.osdl.org \
    --cc=nickpiggin@yahoo.com.au \
    /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