---------------------------
-What: devfs
-When: July 2005
-Files: fs/devfs/*, include/linux/devfs_fs*.h and assorted devfs
- function calls throughout the kernel tree
-Why: It has been unmaintained for a number of years, has unfixable
- races, contains a naming policy within the kernel that is
- against the LSB, and can be replaced by using udev.
-Who: Greg Kroah-Hartman <greg@kroah.com>
+What: /sys/devices/.../power/state
+ dev->power.power_state
+ dpm_runtime_{suspend,resume)()
+When: July 2007
+Why: Broken design for runtime control over driver power states, confusing
+ driver-internal runtime power management with: mechanisms to support
+ system-wide sleep state transitions; event codes that distinguish
+ different phases of swsusp "sleep" transitions; and userspace policy
+ inputs. This framework was never widely used, and most attempts to
+ use it were broken. Drivers should instead be exposing domain-specific
+ interfaces either to kernel or to userspace.
+Who: Pavel Machek <pavel@suse.cz>
---------------------------
---------------------------
-What: sbp2: module parameter "force_inquiry_hack"
-When: July 2006
-Why: Superceded by parameter "workarounds". Both parameters are meant to be
- used ad-hoc and for single devices only, i.e. not in modprobe.conf,
- therefore the impact of this feature replacement should be low.
-Who: Stefan Richter <stefanr@s5r6.in-berlin.de>
-
----------------------------
-
What: Video4Linux API 1 ioctls and video_decoder.h from Video devices.
When: July 2006
Why: V4L1 AP1 was replaced by V4L2 API. during migration from 2.4 to 2.6
---------------------------
-What: remove EXPORT_SYMBOL(insert_resource)
-When: April 2006
-Files: kernel/resource.c
-Why: No modular usage in the kernel.
-Who: Adrian Bunk <bunk@stusta.de>
+What: sys_sysctl
+When: January 2007
+Why: The same information is available through /proc/sys and that is the
+ interface user space prefers to use. And there do not appear to be
+ any existing user in user space of sys_sysctl. The additional
+ maintenance overhead of keeping a set of binary names gets
+ in the way of doing a good job of maintaining this interface.
+
+Who: Eric Biederman <ebiederm@xmission.com>
---------------------------
---------------------------
-What: au1x00_uart driver
-When: January 2006
-Why: The 8250 serial driver now has the ability to deal with the differences
- between the standard 8250 family of UARTs and their slightly strange
- brother on Alchemy SOCs. The loss of features is not considered an
- issue.
-Who: Ralf Baechle <ralf@linux-mips.org>
-
----------------------------
-
What: eepro100 network driver
When: January 2007
Why: replaced by the e100 driver
---------------------------
+What: drivers depending on OSS_OBSOLETE_DRIVER
+When: options in 2.6.20, code in 2.6.22
+Why: OSS drivers with ALSA replacements
+Who: Adrian Bunk <bunk@stusta.de>
+
+---------------------------
+
What: pci_module_init(driver)
When: January 2007
Why: Is replaced by pci_register_driver(pci_driver).
---------------------------
-What: remove EXPORT_SYMBOL(tasklist_lock)
-When: August 2006
-Files: kernel/fork.c
-Why: tasklist_lock protects the kernel internal task list. Modules have
- no business looking at it, and all instances in drivers have been due
- to use of too-lowlevel APIs. Having this symbol exported prevents
- moving to more scalable locking schemes for the task list.
-Who: Christoph Hellwig <hch@lst.de>
+What: Unused EXPORT_SYMBOL/EXPORT_SYMBOL_GPL exports
+ (temporary transition config option provided until then)
+ The transition config option will also be removed at the same time.
+When: before 2.6.19
+Why: Unused symbols are both increasing the size of the kernel binary
+ and are often a sign of "wrong API"
+Who: Arjan van de Ven <arjan@linux.intel.com>
---------------------------
Who: Nick Piggin <npiggin@suse.de>
---------------------------
+
+What: Support for the Momentum / PMC-Sierra Jaguar ATX evaluation board
+When: September 2006
+Why: Does no longer build since quite some time, and was never popular,
+ due to the platform being replaced by successor models. Apparently
+ no user base left. It also is one of the last users of
+ WANT_PAGE_VIRTUAL.
+Who: Ralf Baechle <ralf@linux-mips.org>
+
+---------------------------
+
+What: Support for the Momentum Ocelot, Ocelot 3, Ocelot C and Ocelot G
+When: September 2006
+Why: Some do no longer build and apparently there is no user base left
+ for these platforms.
+Who: Ralf Baechle <ralf@linux-mips.org>
+
+---------------------------
+
+What: Support for MIPS Technologies' Altas and SEAD evaluation board
+When: September 2006
+Why: Some do no longer build and apparently there is no user base left
+ for these platforms. Hardware out of production since several years.
+Who: Ralf Baechle <ralf@linux-mips.org>
+
+---------------------------
+
+What: Support for the IT8172-based platforms, ITE 8172G and Globespan IVR
+When: September 2006
+Why: Code does no longer build since at least 2.6.0, apparently there is
+ no user base left for these platforms. Hardware out of production
+ since several years and hardly a trace of the manufacturer left on
+ the net.
+Who: Ralf Baechle <ralf@linux-mips.org>
+
+---------------------------
+
+What: Interrupt only SA_* flags
+When: Januar 2007
+Why: The interrupt related SA_* flags are replaced by IRQF_* to move them
+ out of the signal namespace.
+
+Who: Thomas Gleixner <tglx@linutronix.de>
+
+---------------------------
+
+What: i2c-ite and i2c-algo-ite drivers
+When: September 2006
+Why: These drivers never compiled since they were added to the kernel
+ tree 5 years ago. This feature removal can be reevaluated if
+ someone shows interest in the drivers, fixes them and takes over
+ maintenance.
+ http://marc.theaimsgroup.com/?l=linux-mips&m=115040510817448
+Who: Jean Delvare <khali@linux-fr.org>
+
+---------------------------
+
+What: Bridge netfilter deferred IPv4/IPv6 output hook calling
+When: January 2007
+Why: The deferred output hooks are a layering violation causing unusual
+ and broken behaviour on bridge devices. Examples of things they
+ break include QoS classifation using the MARK or CLASSIFY targets,
+ the IPsec policy match and connection tracking with VLANs on a
+ bridge. Their only use is to enable bridge output port filtering
+ within iptables with the physdev match, which can also be done by
+ combining iptables and ebtables using netfilter marks. Until it
+ will get removed the hook deferral is disabled by default and is
+ only enabled when needed.
+
+Who: Patrick McHardy <kaber@trash.net>
+
+---------------------------
+
+What: frame diverter
+When: November 2006
+Why: The frame diverter is included in most distribution kernels, but is
+ broken. It does not correctly handle many things:
+ - IPV6
+ - non-linear skb's
+ - network device RCU on removal
+ - input frames not correctly checked for protocol errors
+ It also adds allocation overhead even if not enabled.
+ It is not clear if anyone is still using it.
+Who: Stephen Hemminger <shemminger@osdl.org>
+
+---------------------------
+
+
+What: PHYSDEVPATH, PHYSDEVBUS, PHYSDEVDRIVER in the uevent environment
+When: Oktober 2008
+Why: The stacking of class devices makes these values misleading and
+ inconsistent.
+ Class devices should not carry any of these properties, and bus
+ devices have SUBSYTEM and DRIVER as a replacement.
+Who: Kay Sievers <kay.sievers@suse.de>
+
+---------------------------
+
+What: i2c-isa
+When: December 2006
+Why: i2c-isa is a non-sense and doesn't fit in the device driver
+ model. Drivers relying on it are better implemented as platform
+ drivers.
+Who: Jean Delvare <khali@linux-fr.org>
+
+---------------------------