public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Alex Chiang <achiang@hp.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: jbarnes@virtuousgeek.org, linux-pci@vger.kernel.org,
	linux-kernel@vger.kernel.org, Trent Piepho <xyzzy@speakeasy.org>
Subject: Re: [PATCH v4 10/12] PCI Hotplug: restore fakephp interface with complete reimplementation
Date: Thu, 19 Mar 2009 11:00:45 -0600	[thread overview]
Message-ID: <20090319170045.GD8074@ldl.fc.hp.com> (raw)
In-Reply-To: <20090319024555.1fed0dac.akpm@linux-foundation.org>

* Andrew Morton <akpm@linux-foundation.org>:
> On Wed, 18 Mar 2009 16:40:16 -0600 Alex Chiang <achiang@hp.com> wrote:
> 
> > A complete re-implementation of fakephp is necessary if it is to
> > present its former interface (pre-2.6.27, when it broke).
> 
> We broke an existing interface?  wtf?

When I introduced physical PCI slots in 2.6.27, one of the
changes was that the interface we presented in
/sys/bus/pci/slots/ was supposed to represent _physical_ slots
only.

Before the change, fakephp "abused" that directory by presenting
all the PCI devices, independent of any notions of physical
slots.

No one thought much of changing what fakephp did during review
because we thought it was a developer/debug feature only. After
the change, instead of presenting a PCI bus address in sysfs,
fakephp present something like "fake%d" where %d is the order
that we discovered the device.

The thought process was that, "this is a debug feature only, so
let's make it more obvious".

This was an incorrect assumption, it turns out. :(

People like embedded were using it for various things, and it was
also the only way to remove (and rediscover) PCI devices (if they
weren't supported by platform hotplug).

You can read the thread here:

	http://thread.gmane.org/gmane.linux.kernel/761944

The interesting stuff starts in the middle.

> If it's been broken for this long then do we actually need to
> resurrect it?

This entire patch series is about fixing the mess that I helped
create. At the time, it was indicated that there was existing
software that depended on finding 2.6.26-style (and older)
fakephp stuff in /sys/bus/pci/slots/

After some discussion, we thought it would be better for the
functionality to live in the new sysfs interfaces I'm introducing
in this series.

The legacy fakephp stuff is to help transition existing software.

Since the only use case of existing software that I know of is in
embedded, I think their workaround was to not move to 2.6.27.

> If so, do we need to resurrect it in its old form?  This would appear
> to be an opportunity to improve that interface, unless the old one
> was perfect?

Well, the goal is to get people away from fakephp completely and
move them to these new interfaces. The legacy fakephp stuff is
just a transition aid.

Thanks.

/ac


  reply	other threads:[~2009-03-19 17:00 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-18 22:39 [PATCH v4 00/12] PCI core learns hotplug Alex Chiang
2009-03-18 22:39 ` [PATCH v4 01/12] PCI: pci_is_root_bus helper Alex Chiang
2009-03-18 22:39 ` [PATCH v4 02/12] PCI: don't scan existing devices Alex Chiang
2009-03-18 22:39 ` [PATCH v4 03/12] PCI: pci_scan_slot() returns newly found devices Alex Chiang
2009-03-18 22:39 ` [PATCH v4 04/12] PCI: always scan child buses Alex Chiang
2009-03-18 22:39 ` [PATCH v4 05/12] PCI: do not initialize bridges more than once Alex Chiang
2009-03-18 22:39 ` [PATCH v4 06/12] PCI: Introduce pci_rescan_bus() Alex Chiang
2009-03-19  9:27   ` Andrew Morton
2009-03-19 17:05     ` Alex Chiang
2009-03-19 17:42       ` Greg KH
2009-03-19 17:49         ` Alex Chiang
2009-03-19 18:09           ` Matthew Wilcox
2009-03-19 18:09           ` Greg KH
2009-03-19  9:29   ` Andrew Morton
2009-03-19 17:11     ` Alex Chiang
2009-03-18 22:40 ` [PATCH v4 07/12] PCI: Introduce /sys/bus/pci/rescan Alex Chiang
2009-03-19  9:34   ` Andrew Morton
2009-03-19 17:11     ` Alex Chiang
2009-03-19 22:55       ` Trent Piepho
2009-03-19 23:21         ` Alex Chiang
2009-03-18 22:40 ` [PATCH v4 08/12] PCI: Introduce /sys/bus/pci/devices/.../remove Alex Chiang
2009-03-19  9:43   ` Andrew Morton
2009-03-19 16:06     ` Greg KH
2009-03-19 16:30     ` Alex Chiang
2009-03-19 14:17   ` Kenji Kaneshige
2009-03-19 16:41     ` Alex Chiang
2009-03-19 20:43       ` Trent Piepho
2009-03-19 20:46         ` Alex Chiang
2009-03-19 23:19       ` Kenji Kaneshige
2009-03-20  3:53         ` Alex Chiang
2009-03-18 22:40 ` [PATCH v4 09/12] PCI: Introduce /sys/bus/pci/devices/.../rescan Alex Chiang
2009-03-18 22:40 ` [PATCH v4 10/12] PCI Hotplug: restore fakephp interface with complete reimplementation Alex Chiang
2009-03-19  9:45   ` Andrew Morton
2009-03-19 17:00     ` Alex Chiang [this message]
2009-03-19 19:24     ` Trent Piepho
2009-03-18 22:40 ` [PATCH v4 11/12] PCI Hotplug: rename legacy_fakephp to fakephp Alex Chiang
2009-03-18 22:40 ` [PATCH v4 12/12] PCI Hotplug: schedule fakephp for feature removal Alex Chiang
2009-03-19  8:12 ` [PATCH v4 00/12] PCI core learns hotplug Kenji Kaneshige
2009-03-19 17:07   ` Alex Chiang
2009-03-20  4:15   ` Alex Chiang
2009-03-19 14:09 ` Kenji Kaneshige
2009-03-19 17:13   ` Alex Chiang
2009-03-20  5:16   ` Alex Chiang

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=20090319170045.GD8074@ldl.fc.hp.com \
    --to=achiang@hp.com \
    --cc=akpm@linux-foundation.org \
    --cc=jbarnes@virtuousgeek.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=xyzzy@speakeasy.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox