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