All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@rjwysocki.net>
To: Jiang Liu <jiang.liu@linux.intel.com>
Cc: "Luck, Tony" <tony.luck@intel.com>,
	Alex Williamson <alex.williamson@redhat.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	"x86@kernel.org" <x86@kernel.org>,
	"mingo@redhat.com" <mingo@redhat.com>,
	"bp@alien8.de" <bp@alien8.de>, "Zheng, Lv" <lv.zheng@intel.com>,
	"hpa@zytor.com" <hpa@zytor.com>,
	"tglx@linutronix.de" <tglx@linutronix.de>,
	"yinghai@kernel.org" <yinghai@kernel.org>,
	"lenb@kernel.org" <lenb@kernel.org>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] x86/PCI: Fully disable devices before releasing IRQ resource
Date: Thu, 12 Mar 2015 17:08:08 +0100	[thread overview]
Message-ID: <20677458.zLzU1h62B0@vostro.rjw.lan> (raw)
In-Reply-To: <5500EEC1.9000902@linux.intel.com>

On Thursday, March 12, 2015 09:41:21 AM Jiang Liu wrote:
> On 2015/3/12 9:17, Rafael J. Wysocki wrote:
> > On Wednesday, March 11, 2015 10:04:42 PM Luck, Tony wrote:
> >>>> Unfortunately there's a long standing comment in pci_device_remove():
> >>>>
> >>>>         /*
> >>>>          * We would love to complain here if pci_dev->is_enabled is set, that
> >>>>          * the driver should have called pci_disable_device(), but the
> >>>>          * unfortunate fact is there are too many odd BIOS and bridge setups
> >>>>          * that don't like drivers doing that all of the time.
> >>>>          * Oh well, we can dream of sane hardware when we sleep, no matter how
> >>>>          * horrible the crap we have to deal with is when we are awake...
> >>>>          */
> >>>>
> >>>> So, unless we can somehow ignore that comment, I suspect forcing the
> >>>> device to be disabled on driver remove, whether done from pci-core or
> >>>> from x86/pci, is going to cause all sorts of breakage.  Are the
> >>>> expectations set by b4b55cda5874 really valid?  It seems like something
> >>>> needs to be done to allow the IRQ to be automatically re-established on
> >>>> x86 regardless of the driver doing the right thing when releasing the
> >>>> device.  We're still looking at a regression for v4.0 as a result of
> >>>> b4b55cda5874.
> >>>
> >>> In which case we probably should revert commit b4b55cda5874 for the time being.
> >>>
> >>> At least I'd be very nervous about any ad-hoc fixes at this stage of the cycle.
> >>
> >> The comment goes back to the dawn of "git" time ... not sure how much further
> >> back.
> >>
> >> Is this actually still an issue on modern systems?  Maybe we need a black list
> >> or white list to separate the good from bad systems?
> > 
> > The answer to that is "We don't know" and in my not so humble opinion it is too
> > risky to try to find out at the end of the cycle.
> Hi Rafael and Alex,
> How about a patch which:
> 1) gives a warning if PCI device is still enabled when unloading driver

That may become sort of noisy.  I really would prefer to introduce things like
that by the beginning of the cycle, not by the end of it.

> 2) release PCI interrupt only if PCI device is disabled.
> By this way, we could support IOAPIC hot-removal on latest platforms and
> avoid regressions on old platforms.

Well, please submit a patch for discussion.

I would like to know Bjorn's opinion about that too at least.

Rafael


  reply	other threads:[~2015-03-12 15:44 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-05 21:06 [PATCH] x86/PCI: Fully disable devices before releasing IRQ resource Alex Williamson
2015-03-06  1:49 ` Jiang Liu
2015-03-06  3:51   ` Alex Williamson
2015-03-11 16:47     ` Alex Williamson
2015-03-11 22:04       ` Rafael J. Wysocki
2015-03-11 22:04         ` Luck, Tony
2015-03-11 22:04           ` Luck, Tony
2015-03-11 22:04           ` Luck, Tony
2015-03-12  1:17           ` Rafael J. Wysocki
2015-03-12  1:41             ` Jiang Liu
2015-03-12 16:08               ` Rafael J. Wysocki [this message]
2015-03-13  1:49                 ` Jiang Liu
2015-03-13  2:06       ` [Bugfix] x86/PCI: Release PCI IRQ resource only if PCI device is disabled when unbinding Jiang Liu
2015-03-13 21:45         ` 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=20677458.zLzU1h62B0@vostro.rjw.lan \
    --to=rjw@rjwysocki.net \
    --cc=alex.williamson@redhat.com \
    --cc=bhelgaas@google.com \
    --cc=bp@alien8.de \
    --cc=hpa@zytor.com \
    --cc=jiang.liu@linux.intel.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lv.zheng@intel.com \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    --cc=yinghai@kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.