PCI Hotplug: schedule fakephp for feature removal
Alex Chiang [Fri, 20 Mar 2009 20:56:56 +0000 (14:56 -0600)]
Now that the PCI core is capable of function-level remove and rescan
as well as bus-level rescan, there's no functional need to keep fakephp
anymore.

We keep it around for userspace compatibility reasons, schedule removal
in three years.

Signed-off-by: Alex Chiang <achiang@hp.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

Documentation/feature-removal-schedule.txt

index 20d3b94..8851eea 100644 (file)
@@ -335,6 +335,7 @@ Why:        In 2.6.18 the Secmark concept was introduced to replace the "compat_net"
        Secmark, it is time to deprecate the older mechanism and start the
        process of removing the old code.
 Who:   Paul Moore <paul.moore@hp.com>
+
 ---------------------------
 
 What:  sysfs ui for changing p4-clockmod parameters
@@ -344,3 +345,35 @@ Why:       See commits 129f8ae9b1b5be94517da76009ea956e89104ce8 and
        Removal is subject to fixing any remaining bugs in ACPI which may
        cause the thermal throttling not to happen at the right time.
 Who:   Dave Jones <davej@redhat.com>, Matthew Garrett <mjg@redhat.com>
+
+---------------------------
+
+What:  fakephp and associated sysfs files in /sys/bus/pci/slots/
+When:  2011
+Why:   In 2.6.27, the semantics of /sys/bus/pci/slots was redefined to
+       represent a machine's physical PCI slots. The change in semantics
+       had userspace implications, as the hotplug core no longer allowed
+       drivers to create multiple sysfs files per physical slot (required
+       for multi-function devices, e.g.). fakephp was seen as a developer's
+       tool only, and its interface changed. Too late, we learned that
+       there were some users of the fakephp interface.
+
+       In 2.6.30, the original fakephp interface was restored. At the same
+       time, the PCI core gained the ability that fakephp provided, namely
+       function-level hot-remove and hot-add.
+
+       Since the PCI core now provides the same functionality, exposed in:
+
+               /sys/bus/pci/rescan
+               /sys/bus/pci/devices/.../remove
+               /sys/bus/pci/devices/.../rescan
+
+       there is no functional reason to maintain fakephp as well.
+
+       We will keep the existing module so that 'modprobe fakephp' will
+       present the old /sys/bus/pci/slots/... interface for compatibility,
+       but users are urged to migrate their applications to the API above.
+
+       After a reasonable transition period, we will remove the legacy
+       fakephp interface.
+Who:   Alex Chiang <achiang@hp.com>