annotate Documentation/feature-removal-schedule.txt @ 524:7f8b544237bf

netfront: Allow netfront in domain 0.

This is useful if your physical network device is in a utility domain.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Tue Apr 15 15:18:58 2008 +0100 (2008-04-15)
parents 831230e53067
rev   line source
ian@0 1 The following is a list of files and features that are going to be
ian@0 2 removed in the kernel source tree. Every entry should contain what
ian@0 3 exactly is going away, why it is happening, and who is going to be doing
ian@0 4 the work. When the feature is removed from the kernel, it should also
ian@0 5 be removed from this file.
ian@0 6
ian@0 7 ---------------------------
ian@0 8
ian@0 9 What: RAW driver (CONFIG_RAW_DRIVER)
ian@0 10 When: December 2005
ian@0 11 Why: declared obsolete since kernel 2.6.3
ian@0 12 O_DIRECT can be used instead
ian@0 13 Who: Adrian Bunk <bunk@stusta.de>
ian@0 14
ian@0 15 ---------------------------
ian@0 16
ian@0 17 What: drivers that were depending on OBSOLETE_OSS_DRIVER
ian@0 18 (config options already removed)
ian@0 19 When: before 2.6.19
ian@0 20 Why: OSS drivers with ALSA replacements
ian@0 21 Who: Adrian Bunk <bunk@stusta.de>
ian@0 22
ian@0 23 ---------------------------
ian@0 24
ian@0 25 What: raw1394: requests of type RAW1394_REQ_ISO_SEND, RAW1394_REQ_ISO_LISTEN
ian@0 26 When: November 2006
ian@0 27 Why: Deprecated in favour of the new ioctl-based rawiso interface, which is
ian@0 28 more efficient. You should really be using libraw1394 for raw1394
ian@0 29 access anyway.
ian@0 30 Who: Jody McIntyre <scjody@modernduck.com>
ian@0 31
ian@0 32 ---------------------------
ian@0 33
ian@0 34 What: sbp2: module parameter "force_inquiry_hack"
ian@0 35 When: July 2006
ian@0 36 Why: Superceded by parameter "workarounds". Both parameters are meant to be
ian@0 37 used ad-hoc and for single devices only, i.e. not in modprobe.conf,
ian@0 38 therefore the impact of this feature replacement should be low.
ian@0 39 Who: Stefan Richter <stefanr@s5r6.in-berlin.de>
ian@0 40
ian@0 41 ---------------------------
ian@0 42
ian@0 43 What: Video4Linux API 1 ioctls and video_decoder.h from Video devices.
ian@0 44 When: July 2006
ian@0 45 Why: V4L1 AP1 was replaced by V4L2 API. during migration from 2.4 to 2.6
ian@0 46 series. The old API have lots of drawbacks and don't provide enough
ian@0 47 means to work with all video and audio standards. The newer API is
ian@0 48 already available on the main drivers and should be used instead.
ian@0 49 Newer drivers should use v4l_compat_translate_ioctl function to handle
ian@0 50 old calls, replacing to newer ones.
ian@0 51 Decoder iocts are using internally to allow video drivers to
ian@0 52 communicate with video decoders. This should also be improved to allow
ian@0 53 V4L2 calls being translated into compatible internal ioctls.
ian@0 54 Who: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
ian@0 55
ian@0 56 ---------------------------
ian@0 57
ian@0 58 What: PCMCIA control ioctl (needed for pcmcia-cs [cardmgr, cardctl])
ian@0 59 When: November 2005
ian@0 60 Files: drivers/pcmcia/: pcmcia_ioctl.c
ian@0 61 Why: With the 16-bit PCMCIA subsystem now behaving (almost) like a
ian@0 62 normal hotpluggable bus, and with it using the default kernel
ian@0 63 infrastructure (hotplug, driver core, sysfs) keeping the PCMCIA
ian@0 64 control ioctl needed by cardmgr and cardctl from pcmcia-cs is
ian@0 65 unnecessary, and makes further cleanups and integration of the
ian@0 66 PCMCIA subsystem into the Linux kernel device driver model more
ian@0 67 difficult. The features provided by cardmgr and cardctl are either
ian@0 68 handled by the kernel itself now or are available in the new
ian@0 69 pcmciautils package available at
ian@0 70 http://kernel.org/pub/linux/utils/kernel/pcmcia/
ian@0 71 Who: Dominik Brodowski <linux@brodo.de>
ian@0 72
ian@0 73 ---------------------------
ian@0 74
ian@0 75 What: ip_queue and ip6_queue (old ipv4-only and ipv6-only netfilter queue)
ian@0 76 When: December 2005
ian@0 77 Why: This interface has been obsoleted by the new layer3-independent
ian@0 78 "nfnetlink_queue". The Kernel interface is compatible, so the old
ian@0 79 ip[6]tables "QUEUE" targets still work and will transparently handle
ian@0 80 all packets into nfnetlink queue number 0. Userspace users will have
ian@0 81 to link against API-compatible library on top of libnfnetlink_queue
ian@0 82 instead of the current 'libipq'.
ian@0 83 Who: Harald Welte <laforge@netfilter.org>
ian@0 84
ian@0 85 ---------------------------
ian@0 86
ian@0 87 What: remove EXPORT_SYMBOL(kernel_thread)
ian@0 88 When: August 2006
ian@0 89 Files: arch/*/kernel/*_ksyms.c
ian@0 90 Why: kernel_thread is a low-level implementation detail. Drivers should
ian@0 91 use the <linux/kthread.h> API instead which shields them from
ian@0 92 implementation details and provides a higherlevel interface that
ian@0 93 prevents bugs and code duplication
ian@0 94 Who: Christoph Hellwig <hch@lst.de>
ian@0 95
ian@0 96 ---------------------------
ian@0 97
ian@0 99 When: June 2006
ian@0 100 Why: Config option is there to see if gcc is good enough. (in january
ian@0 101 2006). If it is, the behavior should just be the default. If it's not,
ian@0 102 the option should just go away entirely.
ian@0 103 Who: Arjan van de Ven
ian@0 104
ian@0 105 ---------------------------
ian@0 106
ian@0 107 What: START_ARRAY ioctl for md
ian@0 108 When: July 2006
ian@0 109 Files: drivers/md/md.c
ian@0 110 Why: Not reliable by design - can fail when most needed.
ian@0 111 Alternatives exist
ian@0 112 Who: NeilBrown <neilb@suse.de>
ian@0 113
ian@0 114 ---------------------------
ian@0 115
ian@0 116 What: eepro100 network driver
ian@0 117 When: January 2007
ian@0 118 Why: replaced by the e100 driver
ian@0 119 Who: Adrian Bunk <bunk@stusta.de>
ian@0 120
ian@0 121 ---------------------------
ian@0 122
ian@0 123 What: drivers depending on OSS_OBSOLETE_DRIVER
ian@0 124 When: options in 2.6.20, code in 2.6.22
ian@0 125 Why: OSS drivers with ALSA replacements
ian@0 126 Who: Adrian Bunk <bunk@stusta.de>
ian@0 127
ian@0 128 ---------------------------
ian@0 129
ian@0 130 What: pci_module_init(driver)
ian@0 131 When: January 2007
ian@0 132 Why: Is replaced by pci_register_driver(pci_driver).
ian@0 133 Who: Richard Knutsson <ricknu-0@student.ltu.se> and Greg Kroah-Hartman <gregkh@suse.de>
ian@0 134
ian@0 135 ---------------------------
ian@0 136
ian@0 137 What: Usage of invalid timevals in setitimer
ian@0 138 When: March 2007
ian@0 139 Why: POSIX requires to validate timevals in the setitimer call. This
ian@0 140 was never done by Linux. The invalid (e.g. negative timevals) were
ian@0 141 silently converted to more or less random timeouts and intervals.
ian@0 142 Until the removal a per boot limited number of warnings is printed
ian@0 143 and the timevals are sanitized.
ian@0 144
ian@0 145 Who: Thomas Gleixner <tglx@linutronix.de>
ian@0 146
ian@0 147 ---------------------------
ian@0 148
ian@0 149 What: I2C interface of the it87 driver
ian@0 150 When: January 2007
ian@0 151 Why: The ISA interface is faster and should be always available. The I2C
ian@0 152 probing is also known to cause trouble in at least one case (see
ian@0 153 bug #5889.)
ian@0 154 Who: Jean Delvare <khali@linux-fr.org>
ian@0 155
ian@0 156 ---------------------------
ian@0 157
ian@0 158 What: Unused EXPORT_SYMBOL/EXPORT_SYMBOL_GPL exports
ian@0 159 (temporary transition config option provided until then)
ian@0 160 The transition config option will also be removed at the same time.
ian@0 161 When: before 2.6.19
ian@0 162 Why: Unused symbols are both increasing the size of the kernel binary
ian@0 163 and are often a sign of "wrong API"
ian@0 164 Who: Arjan van de Ven <arjan@linux.intel.com>
ian@0 165
ian@0 166 ---------------------------
ian@0 167
ian@0 168 What: mount/umount uevents
ian@0 169 When: February 2007
ian@0 170 Why: These events are not correct, and do not properly let userspace know
ian@0 171 when a file system has been mounted or unmounted. Userspace should
ian@0 172 poll the /proc/mounts file instead to detect this properly.
ian@0 173 Who: Greg Kroah-Hartman <gregkh@suse.de>
ian@0 174
ian@0 175 ---------------------------
ian@0 176
ian@0 177 What: USB driver API moves to EXPORT_SYMBOL_GPL
ian@0 178 When: Febuary 2008
ian@0 179 Files: include/linux/usb.h, drivers/usb/core/driver.c
ian@0 180 Why: The USB subsystem has changed a lot over time, and it has been
ian@0 181 possible to create userspace USB drivers using usbfs/libusb/gadgetfs
ian@0 182 that operate as fast as the USB bus allows. Because of this, the USB
ian@0 183 subsystem will not be allowing closed source kernel drivers to
ian@0 184 register with it, after this grace period is over. If anyone needs
ian@0 185 any help in converting their closed source drivers over to use the
ian@0 186 userspace filesystems, please contact the
ian@0 187 linux-usb-devel@lists.sourceforge.net mailing list, and the developers
ian@0 188 there will be glad to help you out.
ian@0 189 Who: Greg Kroah-Hartman <gregkh@suse.de>
ian@0 190
ian@0 191 ---------------------------
ian@0 192
ian@0 193 What: find_trylock_page
ian@0 194 When: January 2007
ian@0 195 Why: The interface no longer has any callers left in the kernel. It
ian@0 196 is an odd interface (compared with other find_*_page functions), in
ian@0 197 that it does not take a refcount to the page, only the page lock.
ian@0 198 It should be replaced with find_get_page or find_lock_page if possible.
ian@0 199 This feature removal can be reevaluated if users of the interface
ian@0 200 cannot cleanly use something else.
ian@0 201 Who: Nick Piggin <npiggin@suse.de>
ian@0 202
ian@0 203 ---------------------------
ian@0 204
ian@0 205 What: Support for the MIPS EV96100 evaluation board
ian@0 206 When: September 2006
ian@0 207 Why: Does no longer build since at least November 15, 2003, apparently
ian@0 208 no userbase left.
ian@0 209 Who: Ralf Baechle <ralf@linux-mips.org>
ian@0 210
ian@0 211 ---------------------------
ian@0 212
ian@0 213 What: Support for the Momentum / PMC-Sierra Jaguar ATX evaluation board
ian@0 214 When: September 2006
ian@0 215 Why: Does no longer build since quite some time, and was never popular,
ian@0 216 due to the platform being replaced by successor models. Apparently
ian@0 217 no user base left. It also is one of the last users of
ian@0 219 Who: Ralf Baechle <ralf@linux-mips.org>
ian@0 220
ian@0 221 ---------------------------
ian@0 222
ian@0 223 What: Support for the Momentum Ocelot, Ocelot 3, Ocelot C and Ocelot G
ian@0 224 When: September 2006
ian@0 225 Why: Some do no longer build and apparently there is no user base left
ian@0 226 for these platforms.
ian@0 227 Who: Ralf Baechle <ralf@linux-mips.org>
ian@0 228
ian@0 229 ---------------------------
ian@0 230
ian@0 231 What: Support for MIPS Technologies' Altas and SEAD evaluation board
ian@0 232 When: September 2006
ian@0 233 Why: Some do no longer build and apparently there is no user base left
ian@0 234 for these platforms. Hardware out of production since several years.
ian@0 235 Who: Ralf Baechle <ralf@linux-mips.org>
ian@0 236
ian@0 237 ---------------------------
ian@0 238
ian@0 239 What: Support for the IT8172-based platforms, ITE 8172G and Globespan IVR
ian@0 240 When: September 2006
ian@0 241 Why: Code does no longer build since at least 2.6.0, apparently there is
ian@0 242 no user base left for these platforms. Hardware out of production
ian@0 243 since several years and hardly a trace of the manufacturer left on
ian@0 244 the net.
ian@0 245 Who: Ralf Baechle <ralf@linux-mips.org>
ian@0 246
ian@0 247 ---------------------------
ian@0 248
ian@0 249 What: Interrupt only SA_* flags
ian@0 250 When: Januar 2007
ian@0 251 Why: The interrupt related SA_* flags are replaced by IRQF_* to move them
ian@0 252 out of the signal namespace.
ian@0 253
ian@0 254 Who: Thomas Gleixner <tglx@linutronix.de>
ian@0 255
ian@0 256 ---------------------------
ian@0 257
ian@0 258 What: i2c-ite and i2c-algo-ite drivers
ian@0 259 When: September 2006
ian@0 260 Why: These drivers never compiled since they were added to the kernel
ian@0 261 tree 5 years ago. This feature removal can be reevaluated if
ian@0 262 someone shows interest in the drivers, fixes them and takes over
ian@0 263 maintenance.
ian@0 264 http://marc.theaimsgroup.com/?l=linux-mips&m=115040510817448
ian@0 265 Who: Jean Delvare <khali@linux-fr.org>
ian@0 266
ian@0 267 ---------------------------
ian@0 268
ian@0 269 What: Bridge netfilter deferred IPv4/IPv6 output hook calling
ian@0 270 When: January 2007
ian@0 271 Why: The deferred output hooks are a layering violation causing unusual
ian@0 272 and broken behaviour on bridge devices. Examples of things they
ian@0 273 break include QoS classifation using the MARK or CLASSIFY targets,
ian@0 274 the IPsec policy match and connection tracking with VLANs on a
ian@0 275 bridge. Their only use is to enable bridge output port filtering
ian@0 276 within iptables with the physdev match, which can also be done by
ian@0 277 combining iptables and ebtables using netfilter marks. Until it
ian@0 278 will get removed the hook deferral is disabled by default and is
ian@0 279 only enabled when needed.
ian@0 280
ian@0 281 Who: Patrick McHardy <kaber@trash.net>
ian@0 282
ian@0 283 ---------------------------
ian@0 284
ian@0 285 What: frame diverter
ian@0 286 When: November 2006
ian@0 287 Why: The frame diverter is included in most distribution kernels, but is
ian@0 288 broken. It does not correctly handle many things:
ian@0 289 - IPV6
ian@0 290 - non-linear skb's
ian@0 291 - network device RCU on removal
ian@0 292 - input frames not correctly checked for protocol errors
ian@0 293 It also adds allocation overhead even if not enabled.
ian@0 294 It is not clear if anyone is still using it.
ian@0 295 Who: Stephen Hemminger <shemminger@osdl.org>
ian@0 296