All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <greg@kroah.com>
To: Yu Zhao <yu.zhao@uniscape.net>
Cc: "Zhao, Yu" <yu.zhao@intel.com>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"achiang@hp.com" <achiang@hp.com>,
	"grundler@parisc-linux.org" <grundler@parisc-linux.org>,
	"mingo@elte.hu" <mingo@elte.hu>,
	"jbarnes@virtuousgeek.org" <jbarnes@virtuousgeek.org>,
	"matthew@wil.cx" <matthew@wil.cx>,
	"randy.dunlap@oracle.com" <randy.dunlap@oracle.com>,
	"rdreier@cisco.com" <rdreier@cisco.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"virtualization@lists.linux-foundation.org" 
	<virtualization@lists.linux-foundation.org>
Subject: Re: [PATCH 16/16 v6] PCI: document the new PCI boot parameters
Date: Fri, 7 Nov 2008 21:25:19 -0800	[thread overview]
Message-ID: <20081108052519.GA11067@kroah.com> (raw)
In-Reply-To: <49151CED.8060507@uniscape.net>

On Sat, Nov 08, 2008 at 01:00:29PM +0800, Yu Zhao wrote:
> Greg KH wrote:
>> On Fri, Nov 07, 2008 at 04:35:47PM +0800, Zhao, Yu wrote:
>>> Greg KH wrote:
>>>> On Fri, Nov 07, 2008 at 04:17:02PM +0800, Zhao, Yu wrote:
>>>>>> Well, to do it "correctly" you are going to have to tell the driver to
>>>>>> shut itself down, and reinitialize itself.
>>>>>> Turns out, that doesn't really work for disk and network devices 
>>>>>> without
>>>>>> dropping the connection (well, network devices should be fine 
>>>>>> probably).
>>>>>> So you just can't do this, sorry.  That's why the BIOS handles all of
>>>>>> these issues in a PCI hotplug system.
>>>>>> How does the hardware people think we are going to handle this in the
>>>>>> OS?  It's not something that any operating system can do, is it part 
>>>>>> of
>>>>>> the IOV PCI spec somewhere?
>>>>> No, it's not part of the PCI IOV spec.
>>>>>
>>>>> I just want the IOV (and whole PCI subsystem) have more flexibility on 
>>>>> various BIOSes. So can we reconsider about resource rebalance as boot 
>>>>> option, or should we forget about this idea?
>>>> As you have proposed it, the boot option will not work at all, so I
>>>> think we need to forget about it.  Especially if it is not really
>>>> needed.
>>> I guess at least one thing would work if people don't want to boot twice: 
>>> give the bus number 0 as rebalance starting point, then all system 
>>> resources would be reshuffled :-)
>> Hm, but don't we do that today with our basic resource reservation logic
>> at boot time?  What would be different about this kind of proposal?
>
> The generic PCI core can do this but this feature is kind of disabled by 
> low level PCI code in x86. The low level code tries to reserve resource 
> according to configuration from BIOS. If the BIOS is wrong, the allocation 
> would fail and the generic PCI core couldn't repair it because the bridge 
> resources may have been allocated by the PCI low level and the PCI core 
> can't expand them to find enough resource for the subordinates.

Yes, we do this on purpose.

> The proposal is to disable x86 PCI low level to allocation resources 
> according to BIOS so PCI core can fully control the resource allocation. 
> The PCI core takes all resources from BARs it knows into account and 
> configure the resource windows on the bridges according to its own 
> calculation.

Ah, so you mean we should revert back to the way we use to do x86 PCI
resource allocation from about a year and a half ago to about 8 years
ago?

Hint, there was a reason why we switched over to using the BIOS instead
of doing it ourselves.  Turns out we have to trust the BIOS here, as
that is exactly what other operating systems do.  Trying to do it on our
own was too fragile and resulted in too many problems over time.

Go look at the archives for when this all was switched, you'll see the
reasons why.

So no, we will not be going back to the way we used to do things, we
changed for a reason :)

thanks,

greg k-h

  parent reply	other threads:[~2008-11-08  5:28 UTC|newest]

Thread overview: 237+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-22  8:38 [PATCH 0/16 v6] PCI: Linux kernel SR-IOV support Yu Zhao
2008-10-22  8:40 ` [PATCH 1/16 v6] PCI: remove unnecessary arg of pci_update_resource() Yu Zhao
2008-10-22  8:40 ` Yu Zhao
2008-10-22  8:40 ` [PATCH 2/16 v6] PCI: define PCI resource names in an 'enum' Yu Zhao
2008-10-22 14:24   ` Bjorn Helgaas
2008-10-22 14:44     ` Yu Zhao
2008-10-22 14:44       ` Yu Zhao
2008-10-22 14:51       ` Bjorn Helgaas
2008-10-22 14:53         ` Yu Zhao
2008-10-22 14:53           ` Yu Zhao
2008-10-22 14:51       ` Bjorn Helgaas
2008-10-22 14:24   ` Bjorn Helgaas
2008-11-14  0:43   ` Simon Horman
2008-10-22  8:40 ` Yu Zhao
2008-10-22  8:41 ` [PATCH 3/16 v6] PCI: export __pci_read_base Yu Zhao
2008-10-22  8:41 ` Yu Zhao
2008-10-22  8:41 ` [PATCH 4/16 v6] PCI: make pci_alloc_child_bus() be able to handle NULL bridge Yu Zhao
2008-10-22  8:41 ` Yu Zhao
2008-10-22  8:41 ` [PATCH 5/16 v6] PCI: add a wrapper for resource_alignment() Yu Zhao
2008-10-22  8:41 ` Yu Zhao
2008-10-22  8:42 ` [PATCH 6/16 v6] PCI: add a new function to map BAR offset Yu Zhao
2008-10-22  8:42 ` Yu Zhao
2008-10-22  8:42 ` [PATCH 7/16 v6] PCI: cleanup pcibios_allocate_resources() Yu Zhao
2008-10-23  7:10   ` Yinghai Lu
2008-10-23  6:50     ` Yu Zhao
2008-10-23  6:50     ` Yu Zhao
2008-10-23  7:10   ` Yinghai Lu
2008-10-22  8:42 ` Yu Zhao
2008-10-22  8:43 ` [PATCH 8/16 v6] PCI: add boot options to reassign resources Yu Zhao
2008-10-22  8:43 ` Yu Zhao
2008-10-22 14:35   ` Bjorn Helgaas
2008-10-22 14:49     ` Yu Zhao
2008-10-22 14:49     ` Yu Zhao
2008-10-22 14:35   ` Bjorn Helgaas
2008-10-22  8:43 ` [PATCH 9/16 v6] PCI: add boot option to align MMIO resources Yu Zhao
2008-10-22 14:34   ` Bjorn Helgaas
2008-10-22 14:52     ` Yu Zhao
2008-10-22 14:52     ` Yu Zhao
2008-10-22 14:34   ` Bjorn Helgaas
2008-10-22  8:43 ` Yu Zhao
2008-10-22  8:43 ` [PATCH 10/16 v6] PCI: cleanup pci_bus_add_devices() Yu Zhao
2008-10-22  8:43 ` Yu Zhao
2008-10-22  8:44 ` [PATCH 11/16 v6] PCI: split a new function from pci_bus_add_devices() Yu Zhao
2008-10-22  8:44 ` Yu Zhao
2008-10-22  8:44 ` [PATCH 12/16 v6] PCI: support the SR-IOV capability Yu Zhao
2008-10-22  8:44 ` Yu Zhao
2008-10-22  8:44 ` [PATCH 13/16 v6] PCI: reserve bus range for SR-IOV device Yu Zhao
2008-10-22  8:44 ` Yu Zhao
2008-10-22  8:45 ` [PATCH 14/16 v6] PCI: document for SR-IOV user and developer Yu Zhao
2008-10-22  8:45 ` Yu Zhao
2008-10-22  8:45 ` [PATCH 15/16 v6] PCI: document the SR-IOV sysfs entries Yu Zhao
2008-10-22  8:45 ` Yu Zhao
2008-11-06  4:33   ` Greg KH
2008-11-06  4:46     ` Greg KH
2008-11-07  3:01       ` Zhao, Yu
2008-11-07  3:01       ` Zhao, Yu
2008-11-07  3:18         ` Greg KH
2008-11-13  6:50           ` Yu Zhao
2008-11-14  0:55             ` Greg KH
2008-11-17  8:09               ` Yu Zhao
2008-11-17  8:09               ` Yu Zhao
2008-11-18 15:05                 ` Greg KH
2008-11-18 15:05                 ` Greg KH
2008-11-18 16:49                 ` Kay Sievers
2008-11-18 16:49                 ` Kay Sievers
2008-11-13  6:50           ` Yu Zhao
2008-11-07  3:18         ` Greg KH
2008-11-06  4:46     ` Greg KH
2008-11-06  4:33   ` Greg KH
2008-10-22  8:45 ` [PATCH 16/16 v6] PCI: document the new PCI boot parameters Yu Zhao
2008-10-22  8:45 ` Yu Zhao
2008-10-22 14:27   ` Bjorn Helgaas
2008-10-22 17:01     ` Randy Dunlap
2008-10-22 17:01     ` Randy Dunlap
2008-10-22 14:27   ` Bjorn Helgaas
2008-11-06  4:32   ` Greg KH
2008-11-06  4:32   ` Greg KH
2008-11-07  2:37     ` Zhao, Yu
2008-11-07  2:50       ` Greg KH
2008-11-07  3:40         ` Zhao, Yu
2008-11-07  3:40         ` Zhao, Yu
2008-11-07  4:17           ` Matthew Wilcox
2008-12-11  1:43             ` Yu Zhao
2008-12-11  4:33               ` Grant Grundler
2008-12-11 15:39                 ` H L
2008-12-11 15:39                 ` H L
2008-12-11  4:33               ` Grant Grundler
2008-12-11  1:43             ` Yu Zhao
2008-11-07  4:17           ` Matthew Wilcox
2008-11-07  6:16           ` Greg KH
2008-11-07  7:50             ` Zhao, Yu
2008-11-07  7:50             ` Zhao, Yu
2008-11-07  8:02               ` Greg KH
2008-11-07  8:17                 ` Zhao, Yu
2008-11-07  8:17                 ` Zhao, Yu
2008-11-07  8:24                   ` Greg KH
2008-11-07  8:35                     ` Zhao, Yu
2008-11-07  8:35                     ` Zhao, Yu
2008-11-07 18:53                       ` Greg KH
2008-11-08  5:00                         ` Yu Zhao
2008-11-08  5:00                         ` Yu Zhao
2008-11-08  5:25                           ` Greg KH
2008-11-08  5:25                           ` Greg KH [this message]
2008-11-08  6:05                             ` Yu Zhao
2008-11-08  6:05                             ` Yu Zhao
2008-11-08  5:50                           ` freevanx
2008-11-08  5:54                             ` Greg KH
2008-11-08  5:54                             ` Greg KH
2008-11-07 18:53                       ` Greg KH
2008-11-07  8:24                   ` Greg KH
2008-11-07  8:02               ` Greg KH
2008-11-09 14:19             ` Pavel Machek
2008-11-09 14:19             ` Pavel Machek
2008-11-09 14:34               ` Alexander Graf
2008-11-09 14:34               ` Alexander Graf
2008-11-07  6:16           ` Greg KH
2008-11-07  2:50       ` Greg KH
2008-11-07  2:37     ` Zhao, Yu
2008-11-06  4:48 ` [PATCH 0/16 v6] PCI: Linux kernel SR-IOV support Greg KH
2008-11-06 15:40   ` H L
2008-11-06 15:43     ` Greg KH
2008-11-06 15:43     ` Greg KH
2008-11-06 16:41       ` H L
2008-11-06 16:41       ` H L
2008-11-06 16:49         ` Greg KH
2008-11-06 17:38           ` Fischer, Anna
2008-11-06 17:38           ` Fischer, Anna
2008-11-06 18:03             ` Greg KH
2008-11-06 18:03             ` Greg KH
2008-11-06 20:04               ` Fischer, Anna
2008-11-06 20:04               ` Fischer, Anna
2008-11-09 12:44               ` Avi Kivity
2008-11-09 19:25                 ` Greg KH
2008-11-09 19:37                   ` Avi Kivity
2008-11-09 19:37                     ` Avi Kivity
2008-11-11  6:08                     ` Greg KH
2008-11-11  9:00                       ` Avi Kivity
2008-11-11  9:00                         ` Avi Kivity
2008-11-11  6:08                     ` Greg KH
2008-11-09 19:25                 ` Greg KH
2008-11-09 12:44               ` Avi Kivity
2008-11-06 18:36             ` Matthew Wilcox
2008-11-06 18:36             ` Matthew Wilcox
2008-11-06 22:38               ` Anthony Liguori
2008-11-06 22:38               ` Anthony Liguori
2008-11-06 22:58                 ` Matthew Wilcox
2008-11-06 22:58                 ` Matthew Wilcox
2008-11-07  6:19                   ` Greg KH
2008-11-07 15:17                     ` Yu Zhao
2008-11-07 18:48                       ` Greg KH
2008-11-07 18:48                       ` Greg KH
2008-11-08 11:09                         ` Fischer, Anna
2008-11-08 11:09                           ` Fischer, Anna
2008-11-08 15:37                           ` Leonid Grossman
2008-11-08 15:37                           ` Leonid Grossman
2008-11-08 11:09                         ` Fischer, Anna
2008-11-13  7:49                         ` Yu Zhao
2008-11-13  7:49                           ` Yu Zhao
2008-11-13  7:49                         ` Yu Zhao
2008-11-07 15:17                     ` Yu Zhao
2008-11-07  6:19                   ` Greg KH
2008-11-09 12:47                   ` Avi Kivity
2008-11-09 12:47                     ` Avi Kivity
2008-11-07  1:52                 ` Dong, Eddie
2008-11-07  1:52                 ` Dong, Eddie
2008-11-07  2:08                 ` Nakajima, Jun
2008-11-07  2:08                 ` Nakajima, Jun
2008-11-07 15:21                 ` Andi Kleen
2008-11-12 22:41                   ` Anthony Liguori
2008-11-16 16:04                     ` Avi Kivity
2008-11-16 16:04                     ` Avi Kivity
2008-11-17  1:46                       ` Zhao, Yu
2008-11-17  1:46                       ` Zhao, Yu
2008-11-12 22:41                   ` Anthony Liguori
2008-11-07 15:21                 ` Andi Kleen
2008-11-09 12:53                   ` Avi Kivity
2008-11-09 12:53                   ` Avi Kivity
2008-11-07 16:01                 ` Yu Zhao
2008-11-07 16:01                 ` Yu Zhao
2008-11-06 17:47           ` Matthew Wilcox
2008-11-06 17:47           ` Matthew Wilcox
2008-11-06 17:53             ` Greg KH
2008-11-06 22:24               ` Simon Horman
2008-11-06 22:24               ` Simon Horman
2008-11-06 22:40               ` Anthony Liguori
2008-11-06 22:40               ` Anthony Liguori
2008-11-07  6:17                 ` Greg KH
2008-11-07  6:17                 ` Greg KH
2008-11-07  7:47                   ` Zhao, Yu
2008-11-07  7:47                   ` Zhao, Yu
2008-11-11  0:18                     ` Rusty Russell
2008-11-17 12:01                       ` Yu Zhao
2008-11-17 12:01                       ` Yu Zhao
2008-11-09 12:58                   ` Avi Kivity
2008-11-09 12:58                   ` Avi Kivity
2008-11-09  6:41                 ` Muli Ben-Yehuda
2008-11-09 13:03                   ` Avi Kivity
2008-11-09 13:03                   ` Avi Kivity
2008-11-09  6:41                 ` Muli Ben-Yehuda
2008-11-06 23:54               ` Chris Wright
2008-11-06 23:54               ` Chris Wright
2008-11-07  6:10                 ` Greg KH
2008-11-07  6:10                 ` Greg KH
2008-11-07  7:06                 ` Zhao, Yu
2008-11-07  7:29                   ` Leonid Grossman
2008-11-07  7:29                   ` Leonid Grossman
2008-11-07  7:06                 ` Zhao, Yu
2008-11-06 17:53             ` Greg KH
2008-11-06 18:05           ` H L
2008-11-06 18:24             ` Greg KH
2008-11-06 18:24             ` Greg KH
2008-11-06 21:35               ` Fischer, Anna
2008-11-07  6:18                 ` Greg KH
2008-11-07  6:03               ` Zhao, Yu
2008-11-07  6:03               ` Zhao, Yu
2008-11-06 18:05           ` H L
2008-11-06 16:49         ` Greg KH
2008-11-06 16:51       ` git repository for SR-IOV development? H L
2008-11-06 16:51         ` H L
2008-11-06 16:59         ` Greg KH
2008-11-06 16:59         ` Greg KH
2008-11-06 19:58           ` H L
2008-11-06 22:56             ` Simon Horman
2008-11-06 22:56             ` Simon Horman
2008-11-06 22:56               ` Simon Horman
2008-11-07  1:58             ` Greg KH
2008-11-07 13:09               ` Yu Zhao
2008-11-07 13:09               ` Yu Zhao
2008-11-07  1:58             ` Greg KH
2008-11-06 19:58           ` H L
2008-11-06 16:51       ` H L
2008-11-06 15:40   ` [PATCH 0/16 v6] PCI: Linux kernel SR-IOV support H L
2008-11-07  5:18   ` Zhao, Yu
2008-11-07  5:18   ` Zhao, Yu
2008-11-07  6:07     ` Greg KH
2008-11-07  6:07     ` Greg KH
2008-11-06  4:48 ` Greg KH

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=20081108052519.GA11067@kroah.com \
    --to=greg@kroah.com \
    --cc=achiang@hp.com \
    --cc=grundler@parisc-linux.org \
    --cc=jbarnes@virtuousgeek.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=matthew@wil.cx \
    --cc=mingo@elte.hu \
    --cc=randy.dunlap@oracle.com \
    --cc=rdreier@cisco.com \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=yu.zhao@intel.com \
    --cc=yu.zhao@uniscape.net \
    /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.