Blame view

Documentation/feature-removal-schedule.txt 12.2 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
4
5
6
7
  The following is a list of files and features that are going to be
  removed in the kernel source tree.  Every entry should contain what
  exactly is going away, why it is happening, and who is going to be doing
  the work.  When the feature is removed from the kernel, it should also
  be removed from this file.
  
  ---------------------------
b2e1b3029   Luis R. Rodriguez   cfg80211: Add new...
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  What:	old static regulatory information and ieee80211_regdom module parameter
  When:	2.6.29
  Why:	The old regulatory infrastructure has been replaced with a new one
  	which does not require statically defined regulatory domains. We do
  	not want to keep static regulatory domains in the kernel due to the
  	the dynamic nature of regulatory law and localization. We kept around
  	the old static definitions for the regulatory domains of:
  		* US
  		* JP
  		* EU
  	and used by default the US when CONFIG_WIRELESS_OLD_REGULATORY was
  	set. We also kept around the ieee80211_regdom module parameter in case
  	some applications were relying on it. Changing regulatory domains
  	can now be done instead by using nl80211, as is done with iw.
  Who:	Luis R. Rodriguez <lrodriguez@atheros.com>
  
  ---------------------------
471d05580   Alan Stern   PM: Remove deprec...
25
  What:	dev->power.power_state
1ebfd79eb   Pavel Machek   PM: schedule /sys...
26
27
28
29
30
31
32
33
34
35
36
  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>
  
  ---------------------------
875c296b8   Mauro Carvalho Chehab   [PATCH] V4L: remo...
37
  What:	Video4Linux API 1 ioctls and video_decoder.h from Video devices.
11a5a10e0   Mauro Carvalho Chehab   V4L/DVB (6378b): ...
38
39
40
41
  When:	December 2008
  Files:	include/linux/video_decoder.h include/linux/videodev.h
  Check:	include/linux/video_decoder.h include/linux/videodev.h
  Why:	V4L1 AP1 was replaced by V4L2 API during migration from 2.4 to 2.6
875c296b8   Mauro Carvalho Chehab   [PATCH] V4L: remo...
42
43
44
45
46
47
48
49
  	series. The old API have lots of drawbacks and don't provide enough
  	means to work with all video and audio standards. The newer API is
  	already available on the main drivers and should be used instead.
  	Newer drivers should use v4l_compat_translate_ioctl function to handle
  	old calls, replacing to newer ones.
  	Decoder iocts are using internally to allow video drivers to
  	communicate with video decoders. This should also be improved to allow
  	V4L2 calls being translated into compatible internal ioctls.
11a5a10e0   Mauro Carvalho Chehab   V4L/DVB (6378b): ...
50
51
52
  	Compatibility ioctls will be provided, for a while, via 
  	v4l1-compat module. 
  Who:	Mauro Carvalho Chehab <mchehab@infradead.org>
875c296b8   Mauro Carvalho Chehab   [PATCH] V4L: remo...
53
54
  
  ---------------------------
bf45d9b0a   Dominik Brodowski   [PATCH] pcmcia: d...
55
56
57
58
59
60
61
62
63
64
65
66
67
68
  What:	PCMCIA control ioctl (needed for pcmcia-cs [cardmgr, cardctl])
  When:	November 2005
  Files:	drivers/pcmcia/: pcmcia_ioctl.c
  Why:	With the 16-bit PCMCIA subsystem now behaving (almost) like a
  	normal hotpluggable bus, and with it using the default kernel
  	infrastructure (hotplug, driver core, sysfs) keeping the PCMCIA
  	control ioctl needed by cardmgr and cardctl from pcmcia-cs is
  	unnecessary, and makes further cleanups and integration of the
  	PCMCIA subsystem into the Linux kernel device driver model more
  	difficult. The features provided by cardmgr and cardctl are either
  	handled by the kernel itself now or are available in the new
  	pcmciautils package available at
  	http://kernel.org/pub/linux/utils/kernel/pcmcia/
  Who:	Dominik Brodowski <linux@brodo.de>
7af4cc3fa   Harald Welte   [NETFILTER]: Add ...
69
70
  
  ---------------------------
7058cb02d   Eric W. Biederman   sysctl: deprecate...
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
  What:	sys_sysctl
  When:	September 2010
  Option: CONFIG_SYSCTL_SYSCALL
  Why:	The same information is available in a more convenient from
  	/proc/sys, and none of the sysctl variables appear to be
  	important performance wise.
  
  	Binary sysctls are a long standing source of subtle kernel
  	bugs and security issues.
  
  	When I looked several months ago all I could find after
  	searching several distributions were 5 user space programs and
  	glibc (which falls back to /proc/sys) using this syscall.
  
  	The man page for sysctl(2) documents it as unusable for user
  	space programs.
  
  	sysctl(2) is not generally ABI compatible to a 32bit user
  	space application on a 64bit and a 32bit kernel.
  
  	For the last several months the policy has been no new binary
  	sysctls and no one has put forward an argument to use them.
  
  	Binary sysctls issues seem to keep happening appearing so
  	properly deprecating them (with a warning to user space) and a
  	2 year grace warning period will mean eventually we can kill
  	them and end the pain.
  
  	In the mean time individual binary sysctls can be dealt with
  	in a piecewise fashion.
  
  Who:	Eric Biederman <ebiederm@xmission.com>
  
  ---------------------------
ac515898f   Christoph Hellwig   [PATCH] deprecate...
105
106
107
  What:	remove EXPORT_SYMBOL(kernel_thread)
  When:	August 2006
  Files:	arch/*/kernel/*_ksyms.c
f0a594c1c   Andy Whitcroft   update checkpatch...
108
  Check:	kernel_thread
ac515898f   Christoph Hellwig   [PATCH] deprecate...
109
110
111
112
113
114
115
  Why:	kernel_thread is a low-level implementation detail.  Drivers should
          use the <linux/kthread.h> API instead which shields them from
  	implementation details and provides a higherlevel interface that
  	prevents bugs and code duplication
  Who:	Christoph Hellwig <hch@lst.de>
  
  ---------------------------
f71d20e96   Arjan van de Ven   [PATCH] Add EXPOR...
116
117
118
119
120
121
122
123
124
  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>
  
  ---------------------------
d81d9d6b9   Kay Sievers   deprecate PHYSDEV...
125
  What:	PHYSDEVPATH, PHYSDEVBUS, PHYSDEVDRIVER in the uevent environment
acbd39fbc   Dominik Brodowski   Documentation: fe...
126
  When:	October 2008
d81d9d6b9   Kay Sievers   deprecate PHYSDEV...
127
128
129
130
131
132
133
  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>
  
  ---------------------------
6c805d2ce   Jean Delvare   i2c: Plan i2c-isa...
134

b981c5918   Zhang Rui   ACPI: add a Kconf...
135
  What:	ACPI procfs interface
8b8eb7d8c   Zhang Rui   ACPI: update ACPI...
136
137
138
139
  When:	July 2008
  Why:	ACPI sysfs conversion should be finished by January 2008.
  	ACPI procfs interface will be removed in July 2008 so that
  	there is enough time for the user space to catch up.
b981c5918   Zhang Rui   ACPI: add a Kconf...
140
141
142
  Who:	Zhang Rui <rui.zhang@intel.com>
  
  ---------------------------
1bb67c258   Len Brown   ACPI: schedule ob...
143
144
145
146
147
148
149
  What:	/proc/acpi/button
  When:	August 2007
  Why:	/proc/acpi/button has been replaced by events to the input layer
  	since 2.6.20.
  Who:	Len Brown <len.brown@intel.com>
  
  ---------------------------
54b290a2e   Jeff Garzik   Note that JFFS (v...
150

14e04fb34   Len Brown   ACPI: Schedule /p...
151
152
153
154
155
156
157
  What:	/proc/acpi/event
  When:	February 2008
  Why:	/proc/acpi/event has been replaced by events via the input layer
  	and netlink since 2.6.23.
  Who:	Len Brown <len.brown@intel.com>
  
  ---------------------------
d9aca22cf   Tejun Heo   libata: remove li...
158
  What: libata spindown skipping and warning
920a4b103   Tejun Heo   libata: implement...
159
  When: Dec 2008
d9aca22cf   Tejun Heo   libata: remove li...
160
161
162
163
164
165
  Why:  Some halt(8) implementations synchronize caches for and spin
        down libata disks because libata didn't use to spin down disk on
        system halt (only synchronized caches).
        Spin down on system halt is now implemented.  sysfs node
        /sys/class/scsi_disk/h:c:i:l/manage_start_stop is present if
        spin down support is available.
920a4b103   Tejun Heo   libata: implement...
166
        Because issuing spin down command to an already spun down disk
d9aca22cf   Tejun Heo   libata: remove li...
167
168
169
170
171
        makes some disks spin up just to spin down again, libata tracks
        device spindown status to skip the extra spindown command and
        warn about it.
        This is to give userspace tools the time to get updated and will
        be removed after userspace is reasonably updated.
920a4b103   Tejun Heo   libata: implement...
172
173
174
  Who:  Tejun Heo <htejun@gmail.com>
  
  ---------------------------
914d97fd9   Thomas Gleixner   x86: Add feature-...
175
  What:	i386/x86_64 bzImage symlinks
19b4e7f4e   Ingo Molnar   x86: extend the s...
176
  When:	April 2010
914d97fd9   Thomas Gleixner   x86: Add feature-...
177
178
179
180
181
  
  Why:	The i386/x86_64 merge provides a symlink to the old bzImage
  	location so not yet updated user space tools, e.g. package
  	scripts, do not break.
  Who:	Thomas Gleixner <tglx@linutronix.de>
038a5008b   Linus Torvalds   Merge branch 'mas...
182
183
  
  ---------------------------
f9ef8a23c   Jan Engelhardt   [NETFILTER]: Upda...
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
  What (Why):
  	- include/linux/netfilter_ipv4/ipt_TOS.h ipt_tos.h header files
  	  (superseded by xt_TOS/xt_tos target & match)
  
  	- "forwarding" header files like ipt_mac.h in
  	  include/linux/netfilter_ipv4/ and include/linux/netfilter_ipv6/
  
  	- xt_CONNMARK match revision 0
  	  (superseded by xt_CONNMARK match revision 1)
  
  	- xt_MARK target revisions 0 and 1
  	  (superseded by xt_MARK match revision 2)
  
  	- xt_connmark match revision 0
  	  (superseded by xt_connmark match revision 1)
  
  	- xt_conntrack match revision 0
  	  (superseded by xt_conntrack match revision 1)
  
  	- xt_iprange match revision 0,
  	  include/linux/netfilter_ipv4/ipt_iprange.h
  	  (superseded by xt_iprange match revision 1)
  
  	- xt_mark match revision 0
  	  (superseded by xt_mark match revision 1)
079aa88fe   Jan Engelhardt   netfilter: xt_rec...
209
210
  	- xt_recent: the old ipt_recent proc dir
  	  (superseded by /proc/net/xt_recent)
f9ef8a23c   Jan Engelhardt   [NETFILTER]: Upda...
211
212
213
  When:	January 2009 or Linux 2.7.0, whichever comes first
  Why:	Superseded by newer revisions or modules
  Who:	Jan Engelhardt <jengelh@computergmbh.de>
eb189d8bc   Michael Buesch   b43: Add support ...
214
215
216
217
218
219
220
221
222
  
  ---------------------------
  
  What:	b43 support for firmware revision < 410
  When:	July 2008
  Why:	The support code for the old firmware hurts code readability/maintainability
  	and slightly hurts runtime performance. Bugfixes for the old firmware
  	are not provided by Broadcom anymore.
  Who:	Michael Buesch <mb@bu3sch.de>
e88bb4159   David S. Miller   [SPARC]: Add sola...
223
224
  
  ---------------------------
fae9a0d8c   Glauber Costa   x86: merge iommu ...
225
226
227
228
  What:	usedac i386 kernel parameter
  When:	2.6.27
  Why:	replaced by allowdac and no dac combination
  Who:	Glauber Costa <gcosta@redhat.com>
52f7c21b6   Mark Fasheh   ocfs2: Move /sys/...
229
  ---------------------------
02ae9a1a8   Jiri Slaby   HID: add compat s...
230
231
232
233
234
235
  What:	remove HID compat support
  When:	2.6.29
  Why:	needed only as a temporary solution until distros fix themselves up
  Who:	Jiri Slaby <jirislaby@gmail.com>
  
  ---------------------------
c80cfb040   Bjorn Helgaas   vsprintf: use new...
236
237
238
239
240
241
242
243
  What: print_fn_descriptor_symbol()
  When: October 2009
  Why:  The %pF vsprintf format provides the same functionality in a
        simpler way.  print_fn_descriptor_symbol() is deprecated but
        still present to give out-of-tree modules time to change.
  Who:  Bjorn Helgaas <bjorn.helgaas@hp.com>
  
  ---------------------------
52f7c21b6   Mark Fasheh   ocfs2: Move /sys/...
244
245
246
247
248
249
250
  What:	/sys/o2cb symlink
  When:	January 2010
  Why:	/sys/fs/o2cb is the proper location for this information - /sys/o2cb
  	exists as a symlink for backwards compatibility for old versions of
  	ocfs2-tools. 2 years should be sufficient time to phase in new versions
  	which know to look in /sys/fs/o2cb.
  Who:	ocfs2-devel@oss.oracle.com
d2f5e8086   Matthew Wilcox   Deprecate the asm...
251
252
  
  ---------------------------
ecbed6a41   Vlad Yasevich   sctp: Mark GET_PE...
253
254
255
256
257
258
259
260
261
  What:	SCTP_GET_PEER_ADDRS_NUM_OLD, SCTP_GET_PEER_ADDRS_OLD,
  	SCTP_GET_LOCAL_ADDRS_NUM_OLD, SCTP_GET_LOCAL_ADDRS_OLD
  When: 	June 2009
  Why:    A newer version of the options have been introduced in 2005 that
  	removes the limitions of the old API.  The sctp library has been
          converted to use these new options at the same time.  Any user
  	space app that directly uses the old options should convert to using
  	the new options.
  Who:	Vlad Yasevich <vladislav.yasevich@hp.com>
ea2aca084   David S. Miller   Merge branch 'mas...
262
263
  
  ---------------------------
16d752397   Rene Herman   thermal: Create C...
264
265
266
267
268
269
  What:	CONFIG_THERMAL_HWMON
  When:	January 2009
  Why:	This option was introduced just to allow older lm-sensors userspace
  	to keep working over the upgrade to 2.6.26. At the scheduled time of
  	removal fixed lm-sensors (2.x or 3.x) should be readily available.
  Who:	Rene Herman <rene.herman@gmail.com>
22bb1be4d   Johannes Berg   wext: make sysfs ...
270
271
272
273
274
275
276
277
278
279
  
  ---------------------------
  
  What:	Code that is now under CONFIG_WIRELESS_EXT_SYSFS
  	(in net/core/net-sysfs.c)
  When:	After the only user (hal) has seen a release with the patches
  	for enough time, probably some time in 2010.
  Why:	Over 1K .text/.data size reduction, data is available in other
  	ways (ioctls)
  Who:	Johannes Berg <johannes@sipsolutions.net>
584015727   Krzysztof Piotr Oledzki   netfilter: accoun...
280
281
282
283
284
285
286
287
288
  
  ---------------------------
  
  What: CONFIG_NF_CT_ACCT
  When: 2.6.29
  Why:  Accounting can now be enabled/disabled without kernel recompilation.
        Currently used only to set a default value for a feature that is also
        controlled by a kernel/module/sysfs/sysctl parameter.
  Who:  Krzysztof Piotr Oledzki <ole@ans.pl>
46dfa040f   FUJITA Tomonori   add deprecated id...
289
  ---------------------------
00155a94a   Jean Delvare   Schedule removal ...
290
291
292
293
294
  What:	i2c_attach_client(), i2c_detach_client(), i2c_driver->detach_client()
  When:	2.6.29 (ideally) or 2.6.30 (more likely)
  Why:	Deprecated by the new (standard) device driver binding model. Use
  	i2c_driver->probe() and ->remove() instead.
  Who:	Jean Delvare <khali@linux-fr.org>
277d342fc   Paul Moore   selinux: Deprecat...
295
296
  
  ---------------------------
0589c2de6   Hans de Goede   hwmon: Deprecate ...
297
298
299
300
301
302
303
  What:	fscher and fscpos drivers
  When:	June 2009
  Why:	Deprecated by the new fschmd driver.
  Who:	Hans de Goede <hdegoede@redhat.com>
  	Jean Delvare <khali@linux-fr.org>
  
  ---------------------------
277d342fc   Paul Moore   selinux: Deprecat...
304
305
306
307
308
309
310
311
312
  What:	SELinux "compat_net" functionality
  When:	2.6.30 at the earliest
  Why:	In 2.6.18 the Secmark concept was introduced to replace the "compat_net"
  	network access control functionality of SELinux.  Secmark offers both
  	better performance and greater flexibility than the "compat_net"
  	mechanism.  Now that the major Linux distributions have moved to
  	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>