aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/kernel-parameters.txt496
-rw-r--r--Makefile4
-rw-r--r--arch/arm/mach-integrator/impd1.c15
-rw-r--r--arch/arm/mach-pxa/generic.c20
-rw-r--r--arch/arm/mach-s3c2410/mach-bast.c6
-rw-r--r--arch/arm/mm/proc-v6.S9
-rw-r--r--arch/i386/kernel/cpu/cpufreq/powernow-k8.c30
-rw-r--r--arch/ia64/lib/swiotlb.c4
-rw-r--r--arch/ppc64/configs/bpa_defconfig79
-rw-r--r--arch/ppc64/configs/g5_defconfig124
-rw-r--r--arch/ppc64/configs/iSeries_defconfig78
-rw-r--r--arch/ppc64/configs/maple_defconfig67
-rw-r--r--arch/ppc64/configs/pSeries_defconfig95
-rw-r--r--arch/ppc64/defconfig100
-rw-r--r--arch/ppc64/kernel/iSeries_htab.c2
-rw-r--r--arch/ppc64/kernel/time.c2
-rw-r--r--arch/ppc64/kernel/vdso32/gettimeofday.S2
-rw-r--r--arch/ppc64/mm/init.c3
-rw-r--r--arch/um/include/sysdep-x86_64/ptrace.h4
-rw-r--r--drivers/acpi/glue.c8
-rw-r--r--drivers/char/drm/drm_vm.c3
-rw-r--r--drivers/char/drm/mga_dma.c22
-rw-r--r--drivers/char/drm/mga_drv.h2
-rw-r--r--drivers/char/drm/mga_state.c2
-rw-r--r--drivers/ieee1394/ohci1394.c6
-rw-r--r--drivers/ieee1394/raw1394.c100
-rw-r--r--drivers/infiniband/hw/mthca/mthca_eq.c21
-rw-r--r--drivers/md/md.c4
-rw-r--r--drivers/media/video/Kconfig1
-rw-r--r--drivers/message/fusion/mptsas.c12
-rw-r--r--drivers/net/wireless/orinoco.c5
-rw-r--r--drivers/pci/setup-bus.c2
-rw-r--r--drivers/scsi/NCR5380.c2
-rw-r--r--drivers/scsi/aacraid/aacraid.h2
-rw-r--r--drivers/scsi/scsi_devinfo.c1
-rw-r--r--drivers/scsi/scsi_error.c2
-rw-r--r--drivers/scsi/scsi_lib.c7
-rw-r--r--drivers/scsi/scsi_transport_fc.c13
-rw-r--r--fs/aio.c6
-rw-r--r--fs/inotify.c1
-rw-r--r--include/asm-alpha/atomic.h12
-rw-r--r--include/asm-arm/arch-pxa/pxa-regs.h2
-rw-r--r--include/asm-arm/arch-s3c2410/regs-clock.h21
-rw-r--r--include/linux/bootmem.h32
-rw-r--r--include/linux/hugetlb.h3
-rw-r--r--include/linux/idr.h1
-rw-r--r--include/net/ax25.h2
-rw-r--r--kernel/exit.c1
-rw-r--r--kernel/fork.c2
-rw-r--r--kernel/posix-cpu-timers.c20
-rw-r--r--kernel/posix-timers.c2
-rw-r--r--kernel/signal.c14
-rw-r--r--lib/idr.c13
-rw-r--r--mm/bootmem.c31
-rw-r--r--mm/hugetlb.c57
-rw-r--r--mm/memory.c4
-rw-r--r--net/core/neighbour.c48
-rw-r--r--net/core/skbuff.c6
-rw-r--r--net/dccp/ipv4.c2
-rw-r--r--net/dccp/output.c10
-rw-r--r--net/dccp/proto.c2
-rw-r--r--net/ipv4/ip_output.c3
-rw-r--r--net/ipv4/tcp_output.c12
-rw-r--r--security/selinux/selinuxfs.c4
-rw-r--r--security/selinux/ss/policydb.c6
65 files changed, 1040 insertions, 632 deletions
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index 7086f0a90d14..971589a9752d 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -17,7 +17,7 @@ are specified on the kernel command line with the module name plus
17 17
18 usbcore.blinkenlights=1 18 usbcore.blinkenlights=1
19 19
20The text in square brackets at the beginning of the description state the 20The text in square brackets at the beginning of the description states the
21restrictions on the kernel for the said kernel parameter to be valid. The 21restrictions on the kernel for the said kernel parameter to be valid. The
22restrictions referred to are that the relevant option is valid if: 22restrictions referred to are that the relevant option is valid if:
23 23
@@ -27,8 +27,8 @@ restrictions referred to are that the relevant option is valid if:
27 APM Advanced Power Management support is enabled. 27 APM Advanced Power Management support is enabled.
28 AX25 Appropriate AX.25 support is enabled. 28 AX25 Appropriate AX.25 support is enabled.
29 CD Appropriate CD support is enabled. 29 CD Appropriate CD support is enabled.
30 DEVFS devfs support is enabled. 30 DEVFS devfs support is enabled.
31 DRM Direct Rendering Management support is enabled. 31 DRM Direct Rendering Management support is enabled.
32 EDD BIOS Enhanced Disk Drive Services (EDD) is enabled 32 EDD BIOS Enhanced Disk Drive Services (EDD) is enabled
33 EFI EFI Partitioning (GPT) is enabled 33 EFI EFI Partitioning (GPT) is enabled
34 EIDE EIDE/ATAPI support is enabled. 34 EIDE EIDE/ATAPI support is enabled.
@@ -71,7 +71,7 @@ restrictions referred to are that the relevant option is valid if:
71 SERIAL Serial support is enabled. 71 SERIAL Serial support is enabled.
72 SMP The kernel is an SMP kernel. 72 SMP The kernel is an SMP kernel.
73 SPARC Sparc architecture is enabled. 73 SPARC Sparc architecture is enabled.
74 SWSUSP Software suspension is enabled. 74 SWSUSP Software suspend is enabled.
75 TS Appropriate touchscreen support is enabled. 75 TS Appropriate touchscreen support is enabled.
76 USB USB support is enabled. 76 USB USB support is enabled.
77 USBHID USB Human Interface Device support is enabled. 77 USBHID USB Human Interface Device support is enabled.
@@ -105,13 +105,13 @@ running once the system is up.
105 See header of drivers/scsi/53c7xx.c. 105 See header of drivers/scsi/53c7xx.c.
106 See also Documentation/scsi/ncr53c7xx.txt. 106 See also Documentation/scsi/ncr53c7xx.txt.
107 107
108 acpi= [HW,ACPI] Advanced Configuration and Power Interface 108 acpi= [HW,ACPI] Advanced Configuration and Power Interface
109 Format: { force | off | ht | strict } 109 Format: { force | off | ht | strict | noirq }
110 force -- enable ACPI if default was off 110 force -- enable ACPI if default was off
111 off -- disable ACPI if default was on 111 off -- disable ACPI if default was on
112 noirq -- do not use ACPI for IRQ routing 112 noirq -- do not use ACPI for IRQ routing
113 ht -- run only enough ACPI to enable Hyper Threading 113 ht -- run only enough ACPI to enable Hyper Threading
114 strict -- Be less tolerant of platforms that are not 114 strict -- Be less tolerant of platforms that are not
115 strictly ACPI specification compliant. 115 strictly ACPI specification compliant.
116 116
117 See also Documentation/pm.txt, pci=noacpi 117 See also Documentation/pm.txt, pci=noacpi
@@ -119,20 +119,23 @@ running once the system is up.
119 acpi_sleep= [HW,ACPI] Sleep options 119 acpi_sleep= [HW,ACPI] Sleep options
120 Format: { s3_bios, s3_mode } 120 Format: { s3_bios, s3_mode }
121 See Documentation/power/video.txt 121 See Documentation/power/video.txt
122 122
123 acpi_sci= [HW,ACPI] ACPI System Control Interrupt trigger mode 123 acpi_sci= [HW,ACPI] ACPI System Control Interrupt trigger mode
124 Format: { level | edge | high | low } 124 Format: { level | edge | high | low }
125 125
126 acpi_irq_balance [HW,ACPI] ACPI will balance active IRQs 126 acpi_irq_balance [HW,ACPI]
127 default in APIC mode 127 ACPI will balance active IRQs
128 default in APIC mode
128 129
129 acpi_irq_nobalance [HW,ACPI] ACPI will not move active IRQs (default) 130 acpi_irq_nobalance [HW,ACPI]
130 default in PIC mode 131 ACPI will not move active IRQs (default)
132 default in PIC mode
131 133
132 acpi_irq_pci= [HW,ACPI] If irq_balance, Clear listed IRQs for use by PCI 134 acpi_irq_pci= [HW,ACPI] If irq_balance, clear listed IRQs for
135 use by PCI
133 Format: <irq>,<irq>... 136 Format: <irq>,<irq>...
134 137
135 acpi_irq_isa= [HW,ACPI] If irq_balance, Mark listed IRQs used by ISA 138 acpi_irq_isa= [HW,ACPI] If irq_balance, mark listed IRQs used by ISA
136 Format: <irq>,<irq>... 139 Format: <irq>,<irq>...
137 140
138 acpi_osi= [HW,ACPI] empty param disables _OSI 141 acpi_osi= [HW,ACPI] empty param disables _OSI
@@ -145,14 +148,14 @@ running once the system is up.
145 148
146 acpi_dbg_layer= [HW,ACPI] 149 acpi_dbg_layer= [HW,ACPI]
147 Format: <int> 150 Format: <int>
148 Each bit of the <int> indicates an acpi debug layer, 151 Each bit of the <int> indicates an ACPI debug layer,
149 1: enable, 0: disable. It is useful for boot time 152 1: enable, 0: disable. It is useful for boot time
150 debugging. After system has booted up, it can be set 153 debugging. After system has booted up, it can be set
151 via /proc/acpi/debug_layer. 154 via /proc/acpi/debug_layer.
152 155
153 acpi_dbg_level= [HW,ACPI] 156 acpi_dbg_level= [HW,ACPI]
154 Format: <int> 157 Format: <int>
155 Each bit of the <int> indicates an acpi debug level, 158 Each bit of the <int> indicates an ACPI debug level,
156 1: enable, 0: disable. It is useful for boot time 159 1: enable, 0: disable. It is useful for boot time
157 debugging. After system has booted up, it can be set 160 debugging. After system has booted up, it can be set
158 via /proc/acpi/debug_level. 161 via /proc/acpi/debug_level.
@@ -161,12 +164,13 @@ running once the system is up.
161 164
162 acpi_generic_hotkey [HW,ACPI] 165 acpi_generic_hotkey [HW,ACPI]
163 Allow consolidated generic hotkey driver to 166 Allow consolidated generic hotkey driver to
164 over-ride platform specific driver. 167 override platform specific driver.
165 See also Documentation/acpi-hotkey.txt. 168 See also Documentation/acpi-hotkey.txt.
166 169
167 enable_timer_pin_1 [i386,x86-64] 170 enable_timer_pin_1 [i386,x86-64]
168 Enable PIN 1 of APIC timer 171 Enable PIN 1 of APIC timer
169 Can be useful to work around chipset bugs (in particular on some ATI chipsets) 172 Can be useful to work around chipset bugs
173 (in particular on some ATI chipsets).
170 The kernel tries to set a reasonable default. 174 The kernel tries to set a reasonable default.
171 175
172 disable_timer_pin_1 [i386,x86-64] 176 disable_timer_pin_1 [i386,x86-64]
@@ -182,7 +186,7 @@ running once the system is up.
182 186
183 adlib= [HW,OSS] 187 adlib= [HW,OSS]
184 Format: <io> 188 Format: <io>
185 189
186 advansys= [HW,SCSI] 190 advansys= [HW,SCSI]
187 See header of drivers/scsi/advansys.c. 191 See header of drivers/scsi/advansys.c.
188 192
@@ -192,7 +196,7 @@ running once the system is up.
192 aedsp16= [HW,OSS] Audio Excel DSP 16 196 aedsp16= [HW,OSS] Audio Excel DSP 16
193 Format: <io>,<irq>,<dma>,<mss_io>,<mpu_io>,<mpu_irq> 197 Format: <io>,<irq>,<dma>,<mss_io>,<mpu_io>,<mpu_irq>
194 See also header of sound/oss/aedsp16.c. 198 See also header of sound/oss/aedsp16.c.
195 199
196 aha152x= [HW,SCSI] 200 aha152x= [HW,SCSI]
197 See Documentation/scsi/aha152x.txt. 201 See Documentation/scsi/aha152x.txt.
198 202
@@ -205,10 +209,6 @@ running once the system is up.
205 aic79xx= [HW,SCSI] 209 aic79xx= [HW,SCSI]
206 See Documentation/scsi/aic79xx.txt. 210 See Documentation/scsi/aic79xx.txt.
207 211
208 AM53C974= [HW,SCSI]
209 Format: <host-scsi-id>,<target-scsi-id>,<max-rate>,<max-offset>
210 See also header of drivers/scsi/AM53C974.c.
211
212 amijoy.map= [HW,JOY] Amiga joystick support 212 amijoy.map= [HW,JOY] Amiga joystick support
213 Map of devices attached to JOY0DAT and JOY1DAT 213 Map of devices attached to JOY0DAT and JOY1DAT
214 Format: <a>,<b> 214 Format: <a>,<b>
@@ -219,23 +219,24 @@ running once the system is up.
219 connected to one of 16 gameports 219 connected to one of 16 gameports
220 Format: <type1>,<type2>,..<type16> 220 Format: <type1>,<type2>,..<type16>
221 221
222 apc= [HW,SPARC] Power management functions (SPARCstation-4/5 + deriv.) 222 apc= [HW,SPARC]
223 Power management functions (SPARCstation-4/5 + deriv.)
223 Format: noidle 224 Format: noidle
224 Disable APC CPU standby support. SPARCstation-Fox does 225 Disable APC CPU standby support. SPARCstation-Fox does
225 not play well with APC CPU idle - disable it if you have 226 not play well with APC CPU idle - disable it if you have
226 APC and your system crashes randomly. 227 APC and your system crashes randomly.
227 228
228 apic= [APIC,i386] Change the output verbosity whilst booting 229 apic= [APIC,i386] Change the output verbosity whilst booting
229 Format: { quiet (default) | verbose | debug } 230 Format: { quiet (default) | verbose | debug }
230 Change the amount of debugging information output 231 Change the amount of debugging information output
231 when initialising the APIC and IO-APIC components. 232 when initialising the APIC and IO-APIC components.
232 233
233 apm= [APM] Advanced Power Management 234 apm= [APM] Advanced Power Management
234 See header of arch/i386/kernel/apm.c. 235 See header of arch/i386/kernel/apm.c.
235 236
236 applicom= [HW] 237 applicom= [HW]
237 Format: <mem>,<irq> 238 Format: <mem>,<irq>
238 239
239 arcrimi= [HW,NET] ARCnet - "RIM I" (entirely mem-mapped) cards 240 arcrimi= [HW,NET] ARCnet - "RIM I" (entirely mem-mapped) cards
240 Format: <io>,<irq>,<nodeID> 241 Format: <io>,<irq>,<nodeID>
241 242
@@ -250,38 +251,40 @@ running once the system is up.
250 251
251 atkbd.reset= [HW] Reset keyboard during initialization 252 atkbd.reset= [HW] Reset keyboard during initialization
252 253
253 atkbd.set= [HW] Select keyboard code set 254 atkbd.set= [HW] Select keyboard code set
254 Format: <int> (2 = AT (default) 3 = PS/2) 255 Format: <int> (2 = AT (default), 3 = PS/2)
255 256
256 atkbd.scroll= [HW] Enable scroll wheel on MS Office and similar 257 atkbd.scroll= [HW] Enable scroll wheel on MS Office and similar
257 keyboards 258 keyboards
258 259
259 atkbd.softraw= [HW] Choose between synthetic and real raw mode 260 atkbd.softraw= [HW] Choose between synthetic and real raw mode
260 Format: <bool> (0 = real, 1 = synthetic (default)) 261 Format: <bool> (0 = real, 1 = synthetic (default))
261 262
262 atkbd.softrepeat= 263 atkbd.softrepeat= [HW]
263 [HW] Use software keyboard repeat 264 Use software keyboard repeat
264 265
265 autotest [IA64] 266 autotest [IA64]
266 267
267 awe= [HW,OSS] AWE32/SB32/AWE64 wave table synth 268 awe= [HW,OSS] AWE32/SB32/AWE64 wave table synth
268 Format: <io>,<memsize>,<isapnp> 269 Format: <io>,<memsize>,<isapnp>
269 270
270 aztcd= [HW,CD] Aztech CD268 CDROM driver 271 aztcd= [HW,CD] Aztech CD268 CDROM driver
271 Format: <io>,0x79 (?) 272 Format: <io>,0x79 (?)
272 273
273 baycom_epp= [HW,AX25] 274 baycom_epp= [HW,AX25]
274 Format: <io>,<mode> 275 Format: <io>,<mode>
275 276
276 baycom_par= [HW,AX25] BayCom Parallel Port AX.25 Modem 277 baycom_par= [HW,AX25] BayCom Parallel Port AX.25 Modem
277 Format: <io>,<mode> 278 Format: <io>,<mode>
278 See header of drivers/net/hamradio/baycom_par.c. 279 See header of drivers/net/hamradio/baycom_par.c.
279 280
280 baycom_ser_fdx= [HW,AX25] BayCom Serial Port AX.25 Modem (Full Duplex Mode) 281 baycom_ser_fdx= [HW,AX25]
282 BayCom Serial Port AX.25 Modem (Full Duplex Mode)
281 Format: <io>,<irq>,<mode>[,<baud>] 283 Format: <io>,<irq>,<mode>[,<baud>]
282 See header of drivers/net/hamradio/baycom_ser_fdx.c. 284 See header of drivers/net/hamradio/baycom_ser_fdx.c.
283 285
284 baycom_ser_hdx= [HW,AX25] BayCom Serial Port AX.25 Modem (Half Duplex Mode) 286 baycom_ser_hdx= [HW,AX25]
287 BayCom Serial Port AX.25 Modem (Half Duplex Mode)
285 Format: <io>,<irq>,<mode> 288 Format: <io>,<irq>,<mode>
286 See header of drivers/net/hamradio/baycom_ser_hdx.c. 289 See header of drivers/net/hamradio/baycom_ser_hdx.c.
287 290
@@ -292,7 +295,8 @@ running once the system is up.
292 blkmtd_count= 295 blkmtd_count=
293 296
294 bttv.card= [HW,V4L] bttv (bt848 + bt878 based grabber cards) 297 bttv.card= [HW,V4L] bttv (bt848 + bt878 based grabber cards)
295 bttv.radio= Most important insmod options are available as kernel args too. 298 bttv.radio= Most important insmod options are available as
299 kernel args too.
296 bttv.pll= See Documentation/video4linux/bttv/Insmod-options 300 bttv.pll= See Documentation/video4linux/bttv/Insmod-options
297 bttv.tuner= and Documentation/video4linux/bttv/CARDLIST 301 bttv.tuner= and Documentation/video4linux/bttv/CARDLIST
298 302
@@ -318,15 +322,17 @@ running once the system is up.
318 checkreqprot [SELINUX] Set initial checkreqprot flag value. 322 checkreqprot [SELINUX] Set initial checkreqprot flag value.
319 Format: { "0" | "1" } 323 Format: { "0" | "1" }
320 See security/selinux/Kconfig help text. 324 See security/selinux/Kconfig help text.
321 0 -- check protection applied by kernel (includes any implied execute protection). 325 0 -- check protection applied by kernel (includes
326 any implied execute protection).
322 1 -- check protection requested by application. 327 1 -- check protection requested by application.
323 Default value is set via a kernel config option. 328 Default value is set via a kernel config option.
324 Value can be changed at runtime via /selinux/checkreqprot. 329 Value can be changed at runtime via
325 330 /selinux/checkreqprot.
326 clock= [BUGS=IA-32, HW] gettimeofday timesource override. 331
332 clock= [BUGS=IA-32,HW] gettimeofday timesource override.
327 Forces specified timesource (if avaliable) to be used 333 Forces specified timesource (if avaliable) to be used
328 when calculating gettimeofday(). If specicified timesource 334 when calculating gettimeofday(). If specicified
329 is not avalible, it defaults to PIT. 335 timesource is not avalible, it defaults to PIT.
330 Format: { pit | tsc | cyclone | pmtmr } 336 Format: { pit | tsc | cyclone | pmtmr }
331 337
332 hpet= [IA-32,HPET] option to disable HPET and use PIT. 338 hpet= [IA-32,HPET] option to disable HPET and use PIT.
@@ -336,17 +342,19 @@ running once the system is up.
336 Format: { auto | [<io>,][<irq>] } 342 Format: { auto | [<io>,][<irq>] }
337 343
338 com20020= [HW,NET] ARCnet - COM20020 chipset 344 com20020= [HW,NET] ARCnet - COM20020 chipset
339 Format: <io>[,<irq>[,<nodeID>[,<backplane>[,<ckp>[,<timeout>]]]]] 345 Format:
346 <io>[,<irq>[,<nodeID>[,<backplane>[,<ckp>[,<timeout>]]]]]
340 347
341 com90io= [HW,NET] ARCnet - COM90xx chipset (IO-mapped buffers) 348 com90io= [HW,NET] ARCnet - COM90xx chipset (IO-mapped buffers)
342 Format: <io>[,<irq>] 349 Format: <io>[,<irq>]
343 350
344 com90xx= [HW,NET] ARCnet - COM90xx chipset (memory-mapped buffers) 351 com90xx= [HW,NET]
352 ARCnet - COM90xx chipset (memory-mapped buffers)
345 Format: <io>[,<irq>[,<memstart>]] 353 Format: <io>[,<irq>[,<memstart>]]
346 354
347 condev= [HW,S390] console device 355 condev= [HW,S390] console device
348 conmode= 356 conmode=
349 357
350 console= [KNL] Output console device and options. 358 console= [KNL] Output console device and options.
351 359
352 tty<n> Use the virtual console device <n>. 360 tty<n> Use the virtual console device <n>.
@@ -367,7 +375,8 @@ running once the system is up.
367 options are the same as for ttyS, above. 375 options are the same as for ttyS, above.
368 376
369 cpcihp_generic= [HW,PCI] Generic port I/O CompactPCI driver 377 cpcihp_generic= [HW,PCI] Generic port I/O CompactPCI driver
370 Format: <first_slot>,<last_slot>,<port>,<enum_bit>[,<debug>] 378 Format:
379 <first_slot>,<last_slot>,<port>,<enum_bit>[,<debug>]
371 380
372 cpia_pp= [HW,PPT] 381 cpia_pp= [HW,PPT]
373 Format: { parport<nr> | auto | none } 382 Format: { parport<nr> | auto | none }
@@ -384,10 +393,10 @@ running once the system is up.
384 393
385 cs89x0_media= [HW,NET] 394 cs89x0_media= [HW,NET]
386 Format: { rj45 | aui | bnc } 395 Format: { rj45 | aui | bnc }
387 396
388 cyclades= [HW,SERIAL] Cyclades multi-serial port adapter. 397 cyclades= [HW,SERIAL] Cyclades multi-serial port adapter.
389 398
390 dasd= [HW,NET] 399 dasd= [HW,NET]
391 See header of drivers/s390/block/dasd_devmap.c. 400 See header of drivers/s390/block/dasd_devmap.c.
392 401
393 db9.dev[2|3]= [HW,JOY] Multisystem joystick support via parallel port 402 db9.dev[2|3]= [HW,JOY] Multisystem joystick support via parallel port
@@ -406,7 +415,7 @@ running once the system is up.
406 415
407 dhash_entries= [KNL] 416 dhash_entries= [KNL]
408 Set number of hash buckets for dentry cache. 417 Set number of hash buckets for dentry cache.
409 418
410 digi= [HW,SERIAL] 419 digi= [HW,SERIAL]
411 IO parameters + enable/disable command. 420 IO parameters + enable/disable command.
412 421
@@ -424,11 +433,11 @@ running once the system is up.
424 433
425 dtc3181e= [HW,SCSI] 434 dtc3181e= [HW,SCSI]
426 435
427 earlyprintk= [IA-32, X86-64] 436 earlyprintk= [IA-32,X86-64]
428 earlyprintk=vga 437 earlyprintk=vga
429 earlyprintk=serial[,ttySn[,baudrate]] 438 earlyprintk=serial[,ttySn[,baudrate]]
430 439
431 Append ,keep to not disable it when the real console 440 Append ",keep" to not disable it when the real console
432 takes over. 441 takes over.
433 442
434 Only vga or serial at a time, not both. 443 Only vga or serial at a time, not both.
@@ -451,7 +460,7 @@ running once the system is up.
451 Format: {"of[f]" | "sk[ipmbr]"} 460 Format: {"of[f]" | "sk[ipmbr]"}
452 See comment in arch/i386/boot/edd.S 461 See comment in arch/i386/boot/edd.S
453 462
454 eicon= [HW,ISDN] 463 eicon= [HW,ISDN]
455 Format: <id>,<membase>,<irq> 464 Format: <id>,<membase>,<irq>
456 465
457 eisa_irq_edge= [PARISC,HW] 466 eisa_irq_edge= [PARISC,HW]
@@ -462,12 +471,13 @@ running once the system is up.
462 arch/i386/kernel/cpu/cpufreq/elanfreq.c. 471 arch/i386/kernel/cpu/cpufreq/elanfreq.c.
463 472
464 elevator= [IOSCHED] 473 elevator= [IOSCHED]
465 Format: {"as"|"cfq"|"deadline"|"noop"} 474 Format: {"as" | "cfq" | "deadline" | "noop"}
466 See Documentation/block/as-iosched.txt 475 See Documentation/block/as-iosched.txt and
467 and Documentation/block/deadline-iosched.txt for details. 476 Documentation/block/deadline-iosched.txt for details.
477
468 elfcorehdr= [IA-32] 478 elfcorehdr= [IA-32]
469 Specifies physical address of start of kernel core image 479 Specifies physical address of start of kernel core
470 elf header. 480 image elf header.
471 See Documentation/kdump.txt for details. 481 See Documentation/kdump.txt for details.
472 482
473 enforcing [SELINUX] Set initial enforcing status. 483 enforcing [SELINUX] Set initial enforcing status.
@@ -485,7 +495,7 @@ running once the system is up.
485 es1371= [HW,OSS] 495 es1371= [HW,OSS]
486 Format: <spdif>,[<nomix>,[<amplifier>]] 496 Format: <spdif>,[<nomix>,[<amplifier>]]
487 See also header of sound/oss/es1371.c. 497 See also header of sound/oss/es1371.c.
488 498
489 ether= [HW,NET] Ethernet cards parameters 499 ether= [HW,NET] Ethernet cards parameters
490 This option is obsoleted by the "netdev=" option, which 500 This option is obsoleted by the "netdev=" option, which
491 has equivalent usage. See its documentation for details. 501 has equivalent usage. See its documentation for details.
@@ -526,12 +536,13 @@ running once the system is up.
526 536
527 gus= [HW,OSS] 537 gus= [HW,OSS]
528 Format: <io>,<irq>,<dma>,<dma16> 538 Format: <io>,<irq>,<dma>,<dma16>
529 539
530 gvp11= [HW,SCSI] 540 gvp11= [HW,SCSI]
531 541
532 hashdist= [KNL,NUMA] Large hashes allocated during boot 542 hashdist= [KNL,NUMA] Large hashes allocated during boot
533 are distributed across NUMA nodes. Defaults on 543 are distributed across NUMA nodes. Defaults on
534 for IA-64, off otherwise. 544 for IA-64, off otherwise.
545 Format: 0 | 1 (for off | on)
535 546
536 hcl= [IA-64] SGI's Hardware Graph compatibility layer 547 hcl= [IA-64] SGI's Hardware Graph compatibility layer
537 548
@@ -595,13 +606,13 @@ running once the system is up.
595 ide?= [HW] (E)IDE subsystem 606 ide?= [HW] (E)IDE subsystem
596 Format: ide?=noprobe or chipset specific parameters. 607 Format: ide?=noprobe or chipset specific parameters.
597 See Documentation/ide.txt. 608 See Documentation/ide.txt.
598 609
599 idebus= [HW] (E)IDE subsystem - VLB/PCI bus speed 610 idebus= [HW] (E)IDE subsystem - VLB/PCI bus speed
600 See Documentation/ide.txt. 611 See Documentation/ide.txt.
601 612
602 idle= [HW] 613 idle= [HW]
603 Format: idle=poll or idle=halt 614 Format: idle=poll or idle=halt
604 615
605 ihash_entries= [KNL] 616 ihash_entries= [KNL]
606 Set number of hash buckets for inode cache. 617 Set number of hash buckets for inode cache.
607 618
@@ -649,7 +660,7 @@ running once the system is up.
649 firmware running. 660 firmware running.
650 661
651 isapnp= [ISAPNP] 662 isapnp= [ISAPNP]
652 Format: <RDP>, <reset>, <pci_scan>, <verbosity> 663 Format: <RDP>,<reset>,<pci_scan>,<verbosity>
653 664
654 isolcpus= [KNL,SMP] Isolate CPUs from the general scheduler. 665 isolcpus= [KNL,SMP] Isolate CPUs from the general scheduler.
655 Format: <cpu number>,...,<cpu number> 666 Format: <cpu number>,...,<cpu number>
@@ -661,32 +672,33 @@ running once the system is up.
661 "number of CPUs in system - 1". 672 "number of CPUs in system - 1".
662 673
663 This option is the preferred way to isolate CPUs. The 674 This option is the preferred way to isolate CPUs. The
664 alternative - manually setting the CPU mask of all tasks 675 alternative -- manually setting the CPU mask of all
665 in the system can cause problems and suboptimal load 676 tasks in the system -- can cause problems and
666 balancer performance. 677 suboptimal load balancer performance.
667 678
668 isp16= [HW,CD] 679 isp16= [HW,CD]
669 Format: <io>,<irq>,<dma>,<setup> 680 Format: <io>,<irq>,<dma>,<setup>
670 681
671 iucv= [HW,NET] 682 iucv= [HW,NET]
672 683
673 js= [HW,JOY] Analog joystick 684 js= [HW,JOY] Analog joystick
674 See Documentation/input/joystick.txt. 685 See Documentation/input/joystick.txt.
675 686
676 keepinitrd [HW,ARM] 687 keepinitrd [HW,ARM]
677 688
678 kstack=N [IA-32, X86-64] Print N words from the kernel stack 689 kstack=N [IA-32,X86-64] Print N words from the kernel stack
679 in oops dumps. 690 in oops dumps.
680 691
681 l2cr= [PPC] 692 l2cr= [PPC]
682 693
683 lapic [IA-32,APIC] Enable the local APIC even if BIOS disabled it. 694 lapic [IA-32,APIC] Enable the local APIC even if BIOS
695 disabled it.
684 696
685 lasi= [HW,SCSI] PARISC LASI driver for the 53c700 chip 697 lasi= [HW,SCSI] PARISC LASI driver for the 53c700 chip
686 Format: addr:<io>,irq:<irq> 698 Format: addr:<io>,irq:<irq>
687 699
688 llsc*= [IA64] 700 llsc*= [IA64] See function print_params() in
689 See function print_params() in arch/ia64/sn/kernel/llsc4.c. 701 arch/ia64/sn/kernel/llsc4.c.
690 702
691 load_ramdisk= [RAM] List of ramdisks to load from floppy 703 load_ramdisk= [RAM] List of ramdisks to load from floppy
692 See Documentation/ramdisk.txt. 704 See Documentation/ramdisk.txt.
@@ -713,8 +725,9 @@ running once the system is up.
713 7 (KERN_DEBUG) debug-level messages 725 7 (KERN_DEBUG) debug-level messages
714 726
715 log_buf_len=n Sets the size of the printk ring buffer, in bytes. 727 log_buf_len=n Sets the size of the printk ring buffer, in bytes.
716 Format is n, nk, nM. n must be a power of two. The 728 Format: { n | nk | nM }
717 default is set in kernel config. 729 n must be a power of two. The default size
730 is set in the kernel config file.
718 731
719 lp=0 [LP] Specify parallel ports to use, e.g, 732 lp=0 [LP] Specify parallel ports to use, e.g,
720 lp=port[,port...] lp=none,parport0 (lp0 not configured, lp1 uses 733 lp=port[,port...] lp=none,parport0 (lp0 not configured, lp1 uses
@@ -750,23 +763,23 @@ running once the system is up.
750 ltpc= [NET] 763 ltpc= [NET]
751 Format: <io>,<irq>,<dma> 764 Format: <io>,<irq>,<dma>
752 765
753 mac5380= [HW,SCSI] 766 mac5380= [HW,SCSI] Format:
754 Format: <can_queue>,<cmd_per_lun>,<sg_tablesize>,<hostid>,<use_tags> 767 <can_queue>,<cmd_per_lun>,<sg_tablesize>,<hostid>,<use_tags>
755 768
756 mac53c9x= [HW,SCSI] 769 mac53c9x= [HW,SCSI] Format:
757 Format: <num_esps>,<disconnect>,<nosync>,<can_queue>,<cmd_per_lun>,<sg_tablesize>,<hostid>,<use_tags> 770 <num_esps>,<disconnect>,<nosync>,<can_queue>,<cmd_per_lun>,<sg_tablesize>,<hostid>,<use_tags>
758 771
759 machvec= [IA64] 772 machvec= [IA64] Force the use of a particular machine-vector
760 Force the use of a particular machine-vector (machvec) in a generic 773 (machvec) in a generic kernel.
761 kernel. Example: machvec=hpzx1_swiotlb 774 Example: machvec=hpzx1_swiotlb
762 775
763 mad16= [HW,OSS] 776 mad16= [HW,OSS] Format:
764 Format: <io>,<irq>,<dma>,<dma16>,<mpu_io>,<mpu_irq>,<joystick> 777 <io>,<irq>,<dma>,<dma16>,<mpu_io>,<mpu_irq>,<joystick>
765 778
766 maui= [HW,OSS] 779 maui= [HW,OSS]
767 Format: <io>,<irq> 780 Format: <io>,<irq>
768 781
769 max_loop= [LOOP] Maximum number of loopback devices that can 782 max_loop= [LOOP] Maximum number of loopback devices that can
770 be mounted 783 be mounted
771 Format: <1-256> 784 Format: <1-256>
772 785
@@ -776,11 +789,11 @@ running once the system is up.
776 max_addr=[KMG] [KNL,BOOT,ia64] All physical memory greater than or 789 max_addr=[KMG] [KNL,BOOT,ia64] All physical memory greater than or
777 equal to this physical address is ignored. 790 equal to this physical address is ignored.
778 791
779 max_luns= [SCSI] Maximum number of LUNs to probe 792 max_luns= [SCSI] Maximum number of LUNs to probe.
780 Should be between 1 and 2^32-1. 793 Should be between 1 and 2^32-1.
781 794
782 max_report_luns= 795 max_report_luns=
783 [SCSI] Maximum number of LUNs received 796 [SCSI] Maximum number of LUNs received.
784 Should be between 1 and 16384. 797 Should be between 1 and 16384.
785 798
786 mca-pentium [BUGS=IA-32] 799 mca-pentium [BUGS=IA-32]
@@ -796,11 +809,11 @@ running once the system is up.
796 809
797 md= [HW] RAID subsystems devices and level 810 md= [HW] RAID subsystems devices and level
798 See Documentation/md.txt. 811 See Documentation/md.txt.
799 812
800 mdacon= [MDA] 813 mdacon= [MDA]
801 Format: <first>,<last> 814 Format: <first>,<last>
802 Specifies range of consoles to be captured by the MDA. 815 Specifies range of consoles to be captured by the MDA.
803 816
804 mem=nn[KMG] [KNL,BOOT] Force usage of a specific amount of memory 817 mem=nn[KMG] [KNL,BOOT] Force usage of a specific amount of memory
805 Amount of memory to be used when the kernel is not able 818 Amount of memory to be used when the kernel is not able
806 to see the whole system memory or for test. 819 to see the whole system memory or for test.
@@ -851,15 +864,15 @@ running once the system is up.
851 MTD_Partition= [MTD] 864 MTD_Partition= [MTD]
852 Format: <name>,<region-number>,<size>,<offset> 865 Format: <name>,<region-number>,<size>,<offset>
853 866
854 MTD_Region= [MTD] 867 MTD_Region= [MTD] Format:
855 Format: <name>,<region-number>[,<base>,<size>,<buswidth>,<altbuswidth>] 868 <name>,<region-number>[,<base>,<size>,<buswidth>,<altbuswidth>]
856 869
857 mtdparts= [MTD] 870 mtdparts= [MTD]
858 See drivers/mtd/cmdline.c. 871 See drivers/mtd/cmdline.c.
859 872
860 mtouchusb.raw_coordinates= 873 mtouchusb.raw_coordinates=
861 [HW] Make the MicroTouch USB driver use raw coordinates ('y', default) 874 [HW] Make the MicroTouch USB driver use raw coordinates
862 or cooked coordinates ('n') 875 ('y', default) or cooked coordinates ('n')
863 876
864 n2= [NET] SDL Inc. RISCom/N2 synchronous serial card 877 n2= [NET] SDL Inc. RISCom/N2 synchronous serial card
865 878
@@ -880,7 +893,9 @@ running once the system is up.
880 Format: <irq>,<io>,<mem_start>,<mem_end>,<name> 893 Format: <irq>,<io>,<mem_start>,<mem_end>,<name>
881 Note that mem_start is often overloaded to mean 894 Note that mem_start is often overloaded to mean
882 something different and driver-specific. 895 something different and driver-specific.
883 896 This usage is only documented in each driver source
897 file if at all.
898
884 nfsaddrs= [NFS] 899 nfsaddrs= [NFS]
885 See Documentation/nfsroot.txt. 900 See Documentation/nfsroot.txt.
886 901
@@ -893,8 +908,8 @@ running once the system is up.
893 emulation library even if a 387 maths coprocessor 908 emulation library even if a 387 maths coprocessor
894 is present. 909 is present.
895 910
896 noalign [KNL,ARM] 911 noalign [KNL,ARM]
897 912
898 noapic [SMP,APIC] Tells the kernel to not make use of any 913 noapic [SMP,APIC] Tells the kernel to not make use of any
899 IOAPICs that may be present in the system. 914 IOAPICs that may be present in the system.
900 915
@@ -905,19 +920,19 @@ running once the system is up.
905 on "Classic" PPC cores. 920 on "Classic" PPC cores.
906 921
907 nocache [ARM] 922 nocache [ARM]
908 923
909 nodisconnect [HW,SCSI,M68K] Disables SCSI disconnects. 924 nodisconnect [HW,SCSI,M68K] Disables SCSI disconnects.
910 925
911 noexec [IA-64] 926 noexec [IA-64]
912 927
913 noexec [IA-32, X86-64] 928 noexec [IA-32,X86-64]
914 noexec=on: enable non-executable mappings (default) 929 noexec=on: enable non-executable mappings (default)
915 noexec=off: disable nn-executable mappings 930 noexec=off: disable nn-executable mappings
916 931
917 nofxsr [BUGS=IA-32] 932 nofxsr [BUGS=IA-32]
918 933
919 nohlt [BUGS=ARM] 934 nohlt [BUGS=ARM]
920 935
921 no-hlt [BUGS=IA-32] Tells the kernel that the hlt 936 no-hlt [BUGS=IA-32] Tells the kernel that the hlt
922 instruction doesn't work correctly and not to 937 instruction doesn't work correctly and not to
923 use it. 938 use it.
@@ -948,8 +963,9 @@ running once the system is up.
948 963
949 noresidual [PPC] Don't use residual data on PReP machines. 964 noresidual [PPC] Don't use residual data on PReP machines.
950 965
951 noresume [SWSUSP] Disables resume and restore original swap space. 966 noresume [SWSUSP] Disables resume and restores original swap
952 967 space.
968
953 no-scroll [VGA] Disables scrollback. 969 no-scroll [VGA] Disables scrollback.
954 This is required for the Braillex ib80-piezo Braille 970 This is required for the Braillex ib80-piezo Braille
955 reader made by F.H. Papenmeier (Germany). 971 reader made by F.H. Papenmeier (Germany).
@@ -965,16 +981,16 @@ running once the system is up.
965 nousb [USB] Disable the USB subsystem 981 nousb [USB] Disable the USB subsystem
966 982
967 nowb [ARM] 983 nowb [ARM]
968 984
969 opl3= [HW,OSS] 985 opl3= [HW,OSS]
970 Format: <io> 986 Format: <io>
971 987
972 opl3sa= [HW,OSS] 988 opl3sa= [HW,OSS]
973 Format: <io>,<irq>,<dma>,<dma2>,<mpu_io>,<mpu_irq> 989 Format: <io>,<irq>,<dma>,<dma2>,<mpu_io>,<mpu_irq>
974 990
975 opl3sa2= [HW,OSS] 991 opl3sa2= [HW,OSS] Format:
976 Format: <io>,<irq>,<dma>,<dma2>,<mss_io>,<mpu_io>,<ymode>,<loopback>[,<isapnp>,<multiple] 992 <io>,<irq>,<dma>,<dma2>,<mss_io>,<mpu_io>,<ymode>,<loopback>[,<isapnp>,<multiple]
977 993
978 oprofile.timer= [HW] 994 oprofile.timer= [HW]
979 Use timer interrupt instead of performance counters 995 Use timer interrupt instead of performance counters
980 996
@@ -993,36 +1009,33 @@ running once the system is up.
993 Format: <parport#> 1009 Format: <parport#>
994 parkbd.mode= [HW] Parallel port keyboard adapter mode of operation, 1010 parkbd.mode= [HW] Parallel port keyboard adapter mode of operation,
995 0 for XT, 1 for AT (default is AT). 1011 0 for XT, 1 for AT (default is AT).
996 Format: <mode> 1012 Format: <mode>
997 1013
998 parport=0 [HW,PPT] Specify parallel ports. 0 disables. 1014 parport= [HW,PPT] Specify parallel ports. 0 disables.
999 parport=auto Use 'auto' to force the driver to use 1015 Format: { 0 | auto | 0xBBB[,IRQ[,DMA]] }
1000 parport=0xBBB[,IRQ[,DMA]] any IRQ/DMA settings detected (the 1016 Use 'auto' to force the driver to use any
1001 default is to ignore detected IRQ/DMA 1017 IRQ/DMA settings detected (the default is to
1002 settings because of possible 1018 ignore detected IRQ/DMA settings because of
1003 conflicts). You can specify the base 1019 possible conflicts). You can specify the base
1004 address, IRQ, and DMA settings; IRQ and 1020 address, IRQ, and DMA settings; IRQ and DMA
1005 DMA should be numbers, or 'auto' (for 1021 should be numbers, or 'auto' (for using detected
1006 using detected settings on that 1022 settings on that particular port), or 'nofifo'
1007 particular port), or 'nofifo' (to avoid 1023 (to avoid using a FIFO even if it is detected).
1008 using a FIFO even if it is detected). 1024 Parallel ports are assigned in the order they
1009 Parallel ports are assigned in the 1025 are specified on the command line, starting
1010 order they are specified on the command 1026 with parport0.
1011 line, starting with parport0. 1027
1012 1028 parport_init_mode= [HW,PPT]
1013 parport_init_mode= 1029 Configure VIA parallel port to operate in
1014 [HW,PPT] Configure VIA parallel port to 1030 a specific mode. This is necessary on Pegasos
1015 operate in specific mode. This is 1031 computer where firmware has no options for setting
1016 necessary on Pegasos computer where 1032 up parallel port mode and sets it to spp.
1017 firmware has no options for setting up 1033 Currently this function knows 686a and 8231 chips.
1018 parallel port mode and sets it to
1019 spp. Currently this function knows
1020 686a and 8231 chips.
1021 Format: [spp|ps2|epp|ecp|ecpepp] 1034 Format: [spp|ps2|epp|ecp|ecpepp]
1022 1035
1023 pas2= [HW,OSS] 1036 pas2= [HW,OSS] Format:
1024 Format: <io>,<irq>,<dma>,<dma16>,<sb_io>,<sb_irq>,<sb_dma>,<sb_dma16> 1037 <io>,<irq>,<dma>,<dma16>,<sb_io>,<sb_irq>,<sb_dma>,<sb_dma16>
1025 1038
1026 pas16= [HW,SCSI] 1039 pas16= [HW,SCSI]
1027 See header of drivers/scsi/pas16.c. 1040 See header of drivers/scsi/pas16.c.
1028 1041
@@ -1032,64 +1045,67 @@ running once the system is up.
1032 See header of drivers/block/paride/pcd.c. 1045 See header of drivers/block/paride/pcd.c.
1033 See also Documentation/paride.txt. 1046 See also Documentation/paride.txt.
1034 1047
1035 pci=option[,option...] [PCI] various PCI subsystem options: 1048 pci=option[,option...] [PCI] various PCI subsystem options:
1036 off [IA-32] don't probe for the PCI bus 1049 off [IA-32] don't probe for the PCI bus
1037 bios [IA-32] force use of PCI BIOS, don't access 1050 bios [IA-32] force use of PCI BIOS, don't access
1038 the hardware directly. Use this if your machine 1051 the hardware directly. Use this if your machine
1039 has a non-standard PCI host bridge. 1052 has a non-standard PCI host bridge.
1040 nobios [IA-32] disallow use of PCI BIOS, only direct 1053 nobios [IA-32] disallow use of PCI BIOS, only direct
1041 hardware access methods are allowed. Use this 1054 hardware access methods are allowed. Use this
1042 if you experience crashes upon bootup and you 1055 if you experience crashes upon bootup and you
1043 suspect they are caused by the BIOS. 1056 suspect they are caused by the BIOS.
1044 conf1 [IA-32] Force use of PCI Configuration Mechanism 1. 1057 conf1 [IA-32] Force use of PCI Configuration
1045 conf2 [IA-32] Force use of PCI Configuration Mechanism 2. 1058 Mechanism 1.
1046 nosort [IA-32] Don't sort PCI devices according to 1059 conf2 [IA-32] Force use of PCI Configuration
1047 order given by the PCI BIOS. This sorting is done 1060 Mechanism 2.
1048 to get a device order compatible with older kernels. 1061 nosort [IA-32] Don't sort PCI devices according to
1049 biosirq [IA-32] Use PCI BIOS calls to get the interrupt 1062 order given by the PCI BIOS. This sorting is
1050 routing table. These calls are known to be buggy 1063 done to get a device order compatible with
1051 on several machines and they hang the machine when used, 1064 older kernels.
1052 but on other computers it's the only way to get the 1065 biosirq [IA-32] Use PCI BIOS calls to get the interrupt
1053 interrupt routing table. Try this option if the kernel 1066 routing table. These calls are known to be buggy
1054 is unable to allocate IRQs or discover secondary PCI 1067 on several machines and they hang the machine
1055 buses on your motherboard. 1068 when used, but on other computers it's the only
1056 rom [IA-32] Assign address space to expansion ROMs. 1069 way to get the interrupt routing table. Try
1057 Use with caution as certain devices share address 1070 this option if the kernel is unable to allocate
1058 decoders between ROMs and other resources. 1071 IRQs or discover secondary PCI buses on your
1059 irqmask=0xMMMM [IA-32] Set a bit mask of IRQs allowed to be assigned 1072 motherboard.
1060 automatically to PCI devices. You can make the kernel 1073 rom [IA-32] Assign address space to expansion ROMs.
1061 exclude IRQs of your ISA cards this way. 1074 Use with caution as certain devices share
1075 address decoders between ROMs and other
1076 resources.
1077 irqmask=0xMMMM [IA-32] Set a bit mask of IRQs allowed to be
1078 assigned automatically to PCI devices. You can
1079 make the kernel exclude IRQs of your ISA cards
1080 this way.
1062 pirqaddr=0xAAAAA [IA-32] Specify the physical address 1081 pirqaddr=0xAAAAA [IA-32] Specify the physical address
1063 of the PIRQ table (normally generated 1082 of the PIRQ table (normally generated
1064 by the BIOS) if it is outside the 1083 by the BIOS) if it is outside the
1065 F0000h-100000h range. 1084 F0000h-100000h range.
1066 lastbus=N [IA-32] Scan all buses till bus #N. Can be useful 1085 lastbus=N [IA-32] Scan all buses thru bus #N. Can be
1067 if the kernel is unable to find your secondary buses 1086 useful if the kernel is unable to find your
1068 and you want to tell it explicitly which ones they are. 1087 secondary buses and you want to tell it
1069 assign-busses [IA-32] Always assign all PCI bus 1088 explicitly which ones they are.
1070 numbers ourselves, overriding 1089 assign-busses [IA-32] Always assign all PCI bus
1071 whatever the firmware may have 1090 numbers ourselves, overriding
1072 done. 1091 whatever the firmware may have done.
1073 usepirqmask [IA-32] Honor the possible IRQ mask 1092 usepirqmask [IA-32] Honor the possible IRQ mask stored
1074 stored in the BIOS $PIR table. This is 1093 in the BIOS $PIR table. This is needed on
1075 needed on some systems with broken 1094 some systems with broken BIOSes, notably
1076 BIOSes, notably some HP Pavilion N5400 1095 some HP Pavilion N5400 and Omnibook XE3
1077 and Omnibook XE3 notebooks. This will 1096 notebooks. This will have no effect if ACPI
1078 have no effect if ACPI IRQ routing is 1097 IRQ routing is enabled.
1079 enabled. 1098 noacpi [IA-32] Do not use ACPI for IRQ routing
1080 noacpi [IA-32] Do not use ACPI for IRQ routing 1099 or for PCI scanning.
1081 or for PCI scanning. 1100 routeirq Do IRQ routing for all PCI devices.
1082 routeirq Do IRQ routing for all PCI devices. 1101 This is normally done in pci_enable_device(),
1083 This is normally done in pci_enable_device(), 1102 so this option is a temporary workaround
1084 so this option is a temporary workaround 1103 for broken drivers that don't call it.
1085 for broken drivers that don't call it. 1104 firmware [ARM] Do not re-enumerate the bus but instead
1086 1105 just use the configuration from the
1087 firmware [ARM] Do not re-enumerate the bus but 1106 bootloader. This is currently used on
1088 instead just use the configuration 1107 IXP2000 systems where the bus has to be
1089 from the bootloader. This is currently 1108 configured a certain way for adjunct CPUs.
1090 used on IXP2000 systems where the
1091 bus has to be configured a certain way
1092 for adjunct CPUs.
1093 1109
1094 pcmv= [HW,PCMCIA] BadgePAD 4 1110 pcmv= [HW,PCMCIA] BadgePAD 4
1095 1111
@@ -1127,19 +1143,20 @@ running once the system is up.
1127 [ISAPNP] Exclude DMAs for the autoconfiguration 1143 [ISAPNP] Exclude DMAs for the autoconfiguration
1128 1144
1129 pnp_reserve_io= [ISAPNP] Exclude I/O ports for the autoconfiguration 1145 pnp_reserve_io= [ISAPNP] Exclude I/O ports for the autoconfiguration
1130 Ranges are in pairs (I/O port base and size). 1146 Ranges are in pairs (I/O port base and size).
1131 1147
1132 pnp_reserve_mem= 1148 pnp_reserve_mem=
1133 [ISAPNP] Exclude memory regions for the autoconfiguration 1149 [ISAPNP] Exclude memory regions for the
1150 autoconfiguration.
1134 Ranges are in pairs (memory base and size). 1151 Ranges are in pairs (memory base and size).
1135 1152
1136 profile= [KNL] Enable kernel profiling via /proc/profile 1153 profile= [KNL] Enable kernel profiling via /proc/profile
1137 { schedule | <number> } 1154 Format: [schedule,]<number>
1138 (param: schedule - profile schedule points} 1155 Param: "schedule" - profile schedule points.
1139 (param: profile step/bucket size as a power of 2 for 1156 Param: <number> - step/bucket size as a power of 2 for
1140 statistical time based profiling) 1157 statistical time based profiling.
1141 1158
1142 processor.max_cstate= [HW, ACPI] 1159 processor.max_cstate= [HW,ACPI]
1143 Limit processor to maximum C-state 1160 Limit processor to maximum C-state
1144 max_cstate=9 overrides any DMI blacklist limit. 1161 max_cstate=9 overrides any DMI blacklist limit.
1145 1162
@@ -1147,27 +1164,28 @@ running once the system is up.
1147 before loading. 1164 before loading.
1148 See Documentation/ramdisk.txt. 1165 See Documentation/ramdisk.txt.
1149 1166
1150 psmouse.proto= [HW,MOUSE] Highest PS2 mouse protocol extension to 1167 psmouse.proto= [HW,MOUSE] Highest PS2 mouse protocol extension to
1151 probe for (bare|imps|exps|lifebook|any). 1168 probe for; one of (bare|imps|exps|lifebook|any).
1152 psmouse.rate= [HW,MOUSE] Set desired mouse report rate, in reports 1169 psmouse.rate= [HW,MOUSE] Set desired mouse report rate, in reports
1153 per second. 1170 per second.
1154 psmouse.resetafter= 1171 psmouse.resetafter= [HW,MOUSE]
1155 [HW,MOUSE] Try to reset the device after so many bad packets 1172 Try to reset the device after so many bad packets
1156 (0 = never). 1173 (0 = never).
1157 psmouse.resolution= 1174 psmouse.resolution=
1158 [HW,MOUSE] Set desired mouse resolution, in dpi. 1175 [HW,MOUSE] Set desired mouse resolution, in dpi.
1159 psmouse.smartscroll= 1176 psmouse.smartscroll=
1160 [HW,MOUSE] Controls Logitech smartscroll autorepeat, 1177 [HW,MOUSE] Controls Logitech smartscroll autorepeat.
1161 0 = disabled, 1 = enabled (default). 1178 0 = disabled, 1 = enabled (default).
1162 1179
1163 pss= [HW,OSS] Personal Sound System (ECHO ESC614) 1180 pss= [HW,OSS] Personal Sound System (ECHO ESC614)
1164 Format: <io>,<mss_io>,<mss_irq>,<mss_dma>,<mpu_io>,<mpu_irq> 1181 Format:
1182 <io>,<mss_io>,<mss_irq>,<mss_dma>,<mpu_io>,<mpu_irq>
1165 1183
1166 pt. [PARIDE] 1184 pt. [PARIDE]
1167 See Documentation/paride.txt. 1185 See Documentation/paride.txt.
1168 1186
1169 quiet= [KNL] Disable log messages 1187 quiet= [KNL] Disable log messages
1170 1188
1171 r128= [HW,DRM] 1189 r128= [HW,DRM]
1172 1190
1173 raid= [HW,RAID] 1191 raid= [HW,RAID]
@@ -1176,10 +1194,9 @@ running once the system is up.
1176 ramdisk= [RAM] Sizes of RAM disks in kilobytes [deprecated] 1194 ramdisk= [RAM] Sizes of RAM disks in kilobytes [deprecated]
1177 See Documentation/ramdisk.txt. 1195 See Documentation/ramdisk.txt.
1178 1196
1179 ramdisk_blocksize= 1197 ramdisk_blocksize= [RAM]
1180 [RAM]
1181 See Documentation/ramdisk.txt. 1198 See Documentation/ramdisk.txt.
1182 1199
1183 ramdisk_size= [RAM] Sizes of RAM disks in kilobytes 1200 ramdisk_size= [RAM] Sizes of RAM disks in kilobytes
1184 New name for the ramdisk parameter. 1201 New name for the ramdisk parameter.
1185 See Documentation/ramdisk.txt. 1202 See Documentation/ramdisk.txt.
@@ -1195,7 +1212,8 @@ running once the system is up.
1195 1212
1196 reserve= [KNL,BUGS] Force the kernel to ignore some iomem area 1213 reserve= [KNL,BUGS] Force the kernel to ignore some iomem area
1197 1214
1198 resume= [SWSUSP] Specify the partition device for software suspension 1215 resume= [SWSUSP]
1216 Specify the partition device for software suspend
1199 1217
1200 rhash_entries= [KNL,NET] 1218 rhash_entries= [KNL,NET]
1201 Set number of hash buckets for route cache 1219 Set number of hash buckets for route cache
@@ -1225,7 +1243,7 @@ running once the system is up.
1225 Format: <io>,<irq>,<dma>,<dma2> 1243 Format: <io>,<irq>,<dma>,<dma2>
1226 1244
1227 sbni= [NET] Granch SBNI12 leased line adapter 1245 sbni= [NET] Granch SBNI12 leased line adapter
1228 1246
1229 sbpcd= [HW,CD] Soundblaster CD adapter 1247 sbpcd= [HW,CD] Soundblaster CD adapter
1230 Format: <io>,<type> 1248 Format: <io>,<type>
1231 See a comment before function sbpcd_setup() in 1249 See a comment before function sbpcd_setup() in
@@ -1258,21 +1276,20 @@ running once the system is up.
1258 1276
1259 serialnumber [BUGS=IA-32] 1277 serialnumber [BUGS=IA-32]
1260 1278
1261 sg_def_reserved_size= 1279 sg_def_reserved_size= [SCSI]
1262 [SCSI] 1280
1263
1264 sgalaxy= [HW,OSS] 1281 sgalaxy= [HW,OSS]
1265 Format: <io>,<irq>,<dma>,<dma2>,<sgbase> 1282 Format: <io>,<irq>,<dma>,<dma2>,<sgbase>
1266 1283
1267 shapers= [NET] 1284 shapers= [NET]
1268 Maximal number of shapers. 1285 Maximal number of shapers.
1269 1286
1270 sim710= [SCSI,HW] 1287 sim710= [SCSI,HW]
1271 See header of drivers/scsi/sim710.c. 1288 See header of drivers/scsi/sim710.c.
1272 1289
1273 simeth= [IA-64] 1290 simeth= [IA-64]
1274 simscsi= 1291 simscsi=
1275 1292
1276 sjcd= [HW,CD] 1293 sjcd= [HW,CD]
1277 Format: <io>,<irq>,<dma> 1294 Format: <io>,<irq>,<dma>
1278 See header of drivers/cdrom/sjcd.c. 1295 See header of drivers/cdrom/sjcd.c.
@@ -1403,10 +1420,10 @@ running once the system is up.
1403 snd-wavefront= [HW,ALSA] 1420 snd-wavefront= [HW,ALSA]
1404 1421
1405 snd-ymfpci= [HW,ALSA] 1422 snd-ymfpci= [HW,ALSA]
1406 1423
1407 sonicvibes= [HW,OSS] 1424 sonicvibes= [HW,OSS]
1408 Format: <reverb> 1425 Format: <reverb>
1409 1426
1410 sonycd535= [HW,CD] 1427 sonycd535= [HW,CD]
1411 Format: <io>[,<irq>] 1428 Format: <io>[,<irq>]
1412 1429
@@ -1423,7 +1440,7 @@ running once the system is up.
1423 1440
1424 sscape= [HW,OSS] 1441 sscape= [HW,OSS]
1425 Format: <io>,<irq>,<dma>,<mpu_io>,<mpu_irq> 1442 Format: <io>,<irq>,<dma>,<mpu_io>,<mpu_irq>
1426 1443
1427 st= [HW,SCSI] SCSI tape parameters (buffers, etc.) 1444 st= [HW,SCSI] SCSI tape parameters (buffers, etc.)
1428 See Documentation/scsi/st.txt. 1445 See Documentation/scsi/st.txt.
1429 1446
@@ -1446,7 +1463,7 @@ running once the system is up.
1446 stram_swap= [HW,M68k] 1463 stram_swap= [HW,M68k]
1447 1464
1448 swiotlb= [IA-64] Number of I/O TLB slabs 1465 swiotlb= [IA-64] Number of I/O TLB slabs
1449 1466
1450 switches= [HW,M68k] 1467 switches= [HW,M68k]
1451 1468
1452 sym53c416= [HW,SCSI] 1469 sym53c416= [HW,SCSI]
@@ -1479,14 +1496,16 @@ running once the system is up.
1479 tp720= [HW,PS2] 1496 tp720= [HW,PS2]
1480 1497
1481 trix= [HW,OSS] MediaTrix AudioTrix Pro 1498 trix= [HW,OSS] MediaTrix AudioTrix Pro
1482 Format: <io>,<irq>,<dma>,<dma2>,<sb_io>,<sb_irq>,<sb_dma>,<mpu_io>,<mpu_irq> 1499 Format:
1483 1500 <io>,<irq>,<dma>,<dma2>,<sb_io>,<sb_irq>,<sb_dma>,<mpu_io>,<mpu_irq>
1501
1484 tsdev.xres= [TS] Horizontal screen resolution. 1502 tsdev.xres= [TS] Horizontal screen resolution.
1485 tsdev.yres= [TS] Vertical screen resolution. 1503 tsdev.yres= [TS] Vertical screen resolution.
1486 1504
1487 turbografx.map[2|3]= 1505 turbografx.map[2|3]= [HW,JOY]
1488 [HW,JOY] TurboGraFX parallel port interface 1506 TurboGraFX parallel port interface
1489 Format: <port#>,<js1>,<js2>,<js3>,<js4>,<js5>,<js6>,<js7> 1507 Format:
1508 <port#>,<js1>,<js2>,<js3>,<js4>,<js5>,<js6>,<js7>
1490 See also Documentation/input/joystick-parport.txt 1509 See also Documentation/input/joystick-parport.txt
1491 1510
1492 u14-34f= [HW,SCSI] UltraStor 14F/34F SCSI host adapter 1511 u14-34f= [HW,SCSI] UltraStor 14F/34F SCSI host adapter
@@ -1502,17 +1521,18 @@ running once the system is up.
1502 1521
1503 usbhid.mousepoll= 1522 usbhid.mousepoll=
1504 [USBHID] The interval which mice are to be polled at. 1523 [USBHID] The interval which mice are to be polled at.
1505 1524
1506 video= [FB] Frame buffer configuration 1525 video= [FB] Frame buffer configuration
1507 See Documentation/fb/modedb.txt. 1526 See Documentation/fb/modedb.txt.
1508 1527
1509 vga= [BOOT,IA-32] Select a particular video mode 1528 vga= [BOOT,IA-32] Select a particular video mode
1510 See Documentation/i386/boot.txt and Documentation/svga.txt. 1529 See Documentation/i386/boot.txt and
1530 Documentation/svga.txt.
1511 Use vga=ask for menu. 1531 Use vga=ask for menu.
1512 This is actually a boot loader parameter; the value is 1532 This is actually a boot loader parameter; the value is
1513 passed to the kernel using a special protocol. 1533 passed to the kernel using a special protocol.
1514 1534
1515 vmalloc=nn[KMG] [KNL,BOOT] forces the vmalloc area to have an exact 1535 vmalloc=nn[KMG] [KNL,BOOT] Forces the vmalloc area to have an exact
1516 size of <nn>. This can be used to increase the 1536 size of <nn>. This can be used to increase the
1517 minimum size (128MB on x86). It can also be used to 1537 minimum size (128MB on x86). It can also be used to
1518 decrease the size and leave more room for directly 1538 decrease the size and leave more room for directly
@@ -1520,11 +1540,11 @@ running once the system is up.
1520 1540
1521 vmhalt= [KNL,S390] 1541 vmhalt= [KNL,S390]
1522 1542
1523 vmpoff= [KNL,S390] 1543 vmpoff= [KNL,S390]
1524 1544
1525 waveartist= [HW,OSS] 1545 waveartist= [HW,OSS]
1526 Format: <io>,<irq>,<dma>,<dma2> 1546 Format: <io>,<irq>,<dma>,<dma2>
1527 1547
1528 wd33c93= [HW,SCSI] 1548 wd33c93= [HW,SCSI]
1529 See header of drivers/scsi/wd33c93.c. 1549 See header of drivers/scsi/wd33c93.c.
1530 1550
@@ -1538,21 +1558,25 @@ running once the system is up.
1538 xd_geo= See header of drivers/block/xd.c. 1558 xd_geo= See header of drivers/block/xd.c.
1539 1559
1540 xirc2ps_cs= [NET,PCMCIA] 1560 xirc2ps_cs= [NET,PCMCIA]
1541 Format: <irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]] 1561 Format:
1542 1562 <irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]]
1543 1563
1544 1564
1565______________________________________________________________________
1545Changelog: 1566Changelog:
1546 1567
15682000-06-?? Mr. Unknown
1547 The last known update (for 2.4.0) - the changelog was not kept before. 1569 The last known update (for 2.4.0) - the changelog was not kept before.
1548 2000-06-?? Mr. Unknown
1549 1570
15712002-11-24 Petr Baudis <pasky@ucw.cz>
1572 Randy Dunlap <randy.dunlap@verizon.net>
1550 Update for 2.5.49, description for most of the options introduced, 1573 Update for 2.5.49, description for most of the options introduced,
1551 references to other documentation (C files, READMEs, ..), added S390, 1574 references to other documentation (C files, READMEs, ..), added S390,
1552 PPC, SPARC, MTD, ALSA and OSS category. Minor corrections and 1575 PPC, SPARC, MTD, ALSA and OSS category. Minor corrections and
1553 reformatting. 1576 reformatting.
1554 2002-11-24 Petr Baudis <pasky@ucw.cz> 1577
1555 Randy Dunlap <randy.dunlap@verizon.net> 15782005-10-19 Randy Dunlap <rdunlap@xenotime.net>
1579 Lots of typos, whitespace, some reformatting.
1556 1580
1557TODO: 1581TODO:
1558 1582
diff --git a/Makefile b/Makefile
index be33d758c0fe..4a7000e353b5 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
1VERSION = 2 1VERSION = 2
2PATCHLEVEL = 6 2PATCHLEVEL = 6
3SUBLEVEL = 14 3SUBLEVEL = 14
4EXTRAVERSION =-rc4 4EXTRAVERSION =-rc5
5NAME=Affluent Albatross 5NAME=Affluent Albatross
6 6
7# *DOCUMENTATION* 7# *DOCUMENTATION*
@@ -372,7 +372,7 @@ export MODVERDIR := $(if $(KBUILD_EXTMOD),$(firstword $(KBUILD_EXTMOD))/).tmp_ve
372# Files to ignore in find ... statements 372# Files to ignore in find ... statements
373 373
374RCS_FIND_IGNORE := \( -name SCCS -o -name BitKeeper -o -name .svn -o -name CVS -o -name .pc -o -name .hg \) -prune -o 374RCS_FIND_IGNORE := \( -name SCCS -o -name BitKeeper -o -name .svn -o -name CVS -o -name .pc -o -name .hg \) -prune -o
375RCS_TAR_IGNORE := --exclude SCCS --exclude BitKeeper --exclude .svn --exclude CVS --exclude .pc --exclude .hg 375export RCS_TAR_IGNORE := --exclude SCCS --exclude BitKeeper --exclude .svn --exclude CVS --exclude .pc --exclude .hg
376 376
377# =========================================================================== 377# ===========================================================================
378# Rules shared between *config targets and build targets 378# Rules shared between *config targets and build targets
diff --git a/arch/arm/mach-integrator/impd1.c b/arch/arm/mach-integrator/impd1.c
index c3c2f17d030e..a1b153d1626c 100644
--- a/arch/arm/mach-integrator/impd1.c
+++ b/arch/arm/mach-integrator/impd1.c
@@ -67,7 +67,7 @@ static void impd1_setvco(struct clk *clk, struct icst525_vco vco)
67 } 67 }
68 writel(0, impd1->base + IMPD1_LOCK); 68 writel(0, impd1->base + IMPD1_LOCK);
69 69
70#if DEBUG 70#ifdef DEBUG
71 vco.v = val & 0x1ff; 71 vco.v = val & 0x1ff;
72 vco.r = (val >> 9) & 0x7f; 72 vco.r = (val >> 9) & 0x7f;
73 vco.s = (val >> 16) & 7; 73 vco.s = (val >> 16) & 7;
@@ -427,17 +427,18 @@ static int impd1_probe(struct lm_device *dev)
427 return ret; 427 return ret;
428} 428}
429 429
430static int impd1_remove_one(struct device *dev, void *data)
431{
432 device_unregister(dev);
433 return 0;
434}
435
430static void impd1_remove(struct lm_device *dev) 436static void impd1_remove(struct lm_device *dev)
431{ 437{
432 struct impd1_module *impd1 = lm_get_drvdata(dev); 438 struct impd1_module *impd1 = lm_get_drvdata(dev);
433 struct list_head *l, *n;
434 int i; 439 int i;
435 440
436 list_for_each_safe(l, n, &dev->dev.children) { 441 device_for_each_child(&dev->dev, NULL, impd1_remove_one);
437 struct device *d = list_to_dev(l);
438
439 device_unregister(d);
440 }
441 442
442 for (i = 0; i < ARRAY_SIZE(impd1->vcos); i++) 443 for (i = 0; i < ARRAY_SIZE(impd1->vcos); i++)
443 clk_unregister(&impd1->vcos[i]); 444 clk_unregister(&impd1->vcos[i]);
diff --git a/arch/arm/mach-pxa/generic.c b/arch/arm/mach-pxa/generic.c
index d327c127eddb..1d7677669a76 100644
--- a/arch/arm/mach-pxa/generic.c
+++ b/arch/arm/mach-pxa/generic.c
@@ -250,6 +250,25 @@ void __init pxa_set_i2c_info(struct i2c_pxa_platform_data *info)
250 i2c_device.dev.platform_data = info; 250 i2c_device.dev.platform_data = info;
251} 251}
252 252
253static struct resource i2s_resources[] = {
254 {
255 .start = 0x40400000,
256 .end = 0x40400083,
257 .flags = IORESOURCE_MEM,
258 }, {
259 .start = IRQ_I2S,
260 .end = IRQ_I2S,
261 .flags = IORESOURCE_IRQ,
262 },
263};
264
265static struct platform_device i2s_device = {
266 .name = "pxa2xx-i2s",
267 .id = -1,
268 .resource = i2c_resources,
269 .num_resources = ARRAY_SIZE(i2s_resources),
270};
271
253static struct platform_device *devices[] __initdata = { 272static struct platform_device *devices[] __initdata = {
254 &pxamci_device, 273 &pxamci_device,
255 &udc_device, 274 &udc_device,
@@ -258,6 +277,7 @@ static struct platform_device *devices[] __initdata = {
258 &btuart_device, 277 &btuart_device,
259 &stuart_device, 278 &stuart_device,
260 &i2c_device, 279 &i2c_device,
280 &i2s_device,
261}; 281};
262 282
263static int __init pxa_init(void) 283static int __init pxa_init(void)
diff --git a/arch/arm/mach-s3c2410/mach-bast.c b/arch/arm/mach-s3c2410/mach-bast.c
index 8ca955984645..7b51bfd0ba6d 100644
--- a/arch/arm/mach-s3c2410/mach-bast.c
+++ b/arch/arm/mach-s3c2410/mach-bast.c
@@ -307,9 +307,9 @@ static void bast_nand_select(struct s3c2410_nand_set *set, int slot)
307} 307}
308 308
309static struct s3c2410_platform_nand bast_nand_info = { 309static struct s3c2410_platform_nand bast_nand_info = {
310 .tacls = 40, 310 .tacls = 30,
311 .twrph0 = 80, 311 .twrph0 = 60,
312 .twrph1 = 80, 312 .twrph1 = 60,
313 .nr_sets = ARRAY_SIZE(bast_nand_sets), 313 .nr_sets = ARRAY_SIZE(bast_nand_sets),
314 .sets = bast_nand_sets, 314 .sets = bast_nand_sets,
315 .select_chip = bast_nand_select, 315 .select_chip = bast_nand_select,
diff --git a/arch/arm/mm/proc-v6.S b/arch/arm/mm/proc-v6.S
index caf3b19b167f..9bb5fff406fb 100644
--- a/arch/arm/mm/proc-v6.S
+++ b/arch/arm/mm/proc-v6.S
@@ -55,7 +55,14 @@ ENTRY(cpu_v6_proc_init)
55 mov pc, lr 55 mov pc, lr
56 56
57ENTRY(cpu_v6_proc_fin) 57ENTRY(cpu_v6_proc_fin)
58 mov pc, lr 58 stmfd sp!, {lr}
59 cpsid if @ disable interrupts
60 bl v6_flush_kern_cache_all
61 mrc p15, 0, r0, c1, c0, 0 @ ctrl register
62 bic r0, r0, #0x1000 @ ...i............
63 bic r0, r0, #0x0006 @ .............ca.
64 mcr p15, 0, r0, c1, c0, 0 @ disable caches
65 ldmfd sp!, {pc}
59 66
60/* 67/*
61 * cpu_v6_reset(loc) 68 * cpu_v6_reset(loc)
diff --git a/arch/i386/kernel/cpu/cpufreq/powernow-k8.c b/arch/i386/kernel/cpu/cpufreq/powernow-k8.c
index ab6e0611303d..58ca98fdc2ca 100644
--- a/arch/i386/kernel/cpu/cpufreq/powernow-k8.c
+++ b/arch/i386/kernel/cpu/cpufreq/powernow-k8.c
@@ -44,7 +44,7 @@
44 44
45#define PFX "powernow-k8: " 45#define PFX "powernow-k8: "
46#define BFX PFX "BIOS error: " 46#define BFX PFX "BIOS error: "
47#define VERSION "version 1.50.3" 47#define VERSION "version 1.50.4"
48#include "powernow-k8.h" 48#include "powernow-k8.h"
49 49
50/* serialize freq changes */ 50/* serialize freq changes */
@@ -111,8 +111,8 @@ static int query_current_values_with_pending_wait(struct powernow_k8_data *data)
111 u32 i = 0; 111 u32 i = 0;
112 112
113 do { 113 do {
114 if (i++ > 0x1000000) { 114 if (i++ > 10000) {
115 printk(KERN_ERR PFX "detected change pending stuck\n"); 115 dprintk("detected change pending stuck\n");
116 return 1; 116 return 1;
117 } 117 }
118 rdmsr(MSR_FIDVID_STATUS, lo, hi); 118 rdmsr(MSR_FIDVID_STATUS, lo, hi);
@@ -159,6 +159,7 @@ static int write_new_fid(struct powernow_k8_data *data, u32 fid)
159{ 159{
160 u32 lo; 160 u32 lo;
161 u32 savevid = data->currvid; 161 u32 savevid = data->currvid;
162 u32 i = 0;
162 163
163 if ((fid & INVALID_FID_MASK) || (data->currvid & INVALID_VID_MASK)) { 164 if ((fid & INVALID_FID_MASK) || (data->currvid & INVALID_VID_MASK)) {
164 printk(KERN_ERR PFX "internal error - overflow on fid write\n"); 165 printk(KERN_ERR PFX "internal error - overflow on fid write\n");
@@ -170,10 +171,13 @@ static int write_new_fid(struct powernow_k8_data *data, u32 fid)
170 dprintk("writing fid 0x%x, lo 0x%x, hi 0x%x\n", 171 dprintk("writing fid 0x%x, lo 0x%x, hi 0x%x\n",
171 fid, lo, data->plllock * PLL_LOCK_CONVERSION); 172 fid, lo, data->plllock * PLL_LOCK_CONVERSION);
172 173
173 wrmsr(MSR_FIDVID_CTL, lo, data->plllock * PLL_LOCK_CONVERSION); 174 do {
174 175 wrmsr(MSR_FIDVID_CTL, lo, data->plllock * PLL_LOCK_CONVERSION);
175 if (query_current_values_with_pending_wait(data)) 176 if (i++ > 100) {
176 return 1; 177 printk(KERN_ERR PFX "internal error - pending bit very stuck - no further pstate changes possible\n");
178 return 1;
179 }
180 } while (query_current_values_with_pending_wait(data));
177 181
178 count_off_irt(data); 182 count_off_irt(data);
179 183
@@ -197,6 +201,7 @@ static int write_new_vid(struct powernow_k8_data *data, u32 vid)
197{ 201{
198 u32 lo; 202 u32 lo;
199 u32 savefid = data->currfid; 203 u32 savefid = data->currfid;
204 int i = 0;
200 205
201 if ((data->currfid & INVALID_FID_MASK) || (vid & INVALID_VID_MASK)) { 206 if ((data->currfid & INVALID_FID_MASK) || (vid & INVALID_VID_MASK)) {
202 printk(KERN_ERR PFX "internal error - overflow on vid write\n"); 207 printk(KERN_ERR PFX "internal error - overflow on vid write\n");
@@ -208,10 +213,13 @@ static int write_new_vid(struct powernow_k8_data *data, u32 vid)
208 dprintk("writing vid 0x%x, lo 0x%x, hi 0x%x\n", 213 dprintk("writing vid 0x%x, lo 0x%x, hi 0x%x\n",
209 vid, lo, STOP_GRANT_5NS); 214 vid, lo, STOP_GRANT_5NS);
210 215
211 wrmsr(MSR_FIDVID_CTL, lo, STOP_GRANT_5NS); 216 do {
212 217 wrmsr(MSR_FIDVID_CTL, lo, STOP_GRANT_5NS);
213 if (query_current_values_with_pending_wait(data)) 218 if (i++ > 100) {
214 return 1; 219 printk(KERN_ERR PFX "internal error - pending bit very stuck - no further pstate changes possible\n");
220 return 1;
221 }
222 } while (query_current_values_with_pending_wait(data));
215 223
216 if (savefid != data->currfid) { 224 if (savefid != data->currfid) {
217 printk(KERN_ERR PFX "fid changed on vid trans, old 0x%x new 0x%x\n", 225 printk(KERN_ERR PFX "fid changed on vid trans, old 0x%x new 0x%x\n",
diff --git a/arch/ia64/lib/swiotlb.c b/arch/ia64/lib/swiotlb.c
index dbc0b3e449c5..a604efc7f6c9 100644
--- a/arch/ia64/lib/swiotlb.c
+++ b/arch/ia64/lib/swiotlb.c
@@ -123,8 +123,8 @@ swiotlb_init_with_default_size (size_t default_size)
123 /* 123 /*
124 * Get IO TLB memory from the low pages 124 * Get IO TLB memory from the low pages
125 */ 125 */
126 io_tlb_start = alloc_bootmem_low_pages(io_tlb_nslabs * 126 io_tlb_start = alloc_bootmem_low_pages_limit(io_tlb_nslabs *
127 (1 << IO_TLB_SHIFT)); 127 (1 << IO_TLB_SHIFT), 0x100000000);
128 if (!io_tlb_start) 128 if (!io_tlb_start)
129 panic("Cannot allocate SWIOTLB buffer"); 129 panic("Cannot allocate SWIOTLB buffer");
130 io_tlb_end = io_tlb_start + io_tlb_nslabs * (1 << IO_TLB_SHIFT); 130 io_tlb_end = io_tlb_start + io_tlb_nslabs * (1 << IO_TLB_SHIFT);
diff --git a/arch/ppc64/configs/bpa_defconfig b/arch/ppc64/configs/bpa_defconfig
index 46c5da41c3ae..67ffecbc05cb 100644
--- a/arch/ppc64/configs/bpa_defconfig
+++ b/arch/ppc64/configs/bpa_defconfig
@@ -1,17 +1,17 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.13-rc6 3# Linux kernel version: 2.6.14-rc4
4# Mon Aug 8 14:12:19 2005 4# Thu Oct 20 08:29:10 2005
5# 5#
6CONFIG_64BIT=y 6CONFIG_64BIT=y
7CONFIG_MMU=y 7CONFIG_MMU=y
8CONFIG_RWSEM_XCHGADD_ALGORITHM=y 8CONFIG_RWSEM_XCHGADD_ALGORITHM=y
9CONFIG_GENERIC_CALIBRATE_DELAY=y 9CONFIG_GENERIC_CALIBRATE_DELAY=y
10CONFIG_GENERIC_ISA_DMA=y 10CONFIG_GENERIC_ISA_DMA=y
11CONFIG_HAVE_DEC_LOCK=y
12CONFIG_EARLY_PRINTK=y 11CONFIG_EARLY_PRINTK=y
13CONFIG_COMPAT=y 12CONFIG_COMPAT=y
14CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 13CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
14CONFIG_ARCH_MAY_HAVE_PC_FDC=y
15CONFIG_FORCE_MAX_ZONEORDER=13 15CONFIG_FORCE_MAX_ZONEORDER=13
16 16
17# 17#
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32
26# General setup 26# General setup
27# 27#
28CONFIG_LOCALVERSION="" 28CONFIG_LOCALVERSION=""
29CONFIG_LOCALVERSION_AUTO=y
29CONFIG_SWAP=y 30CONFIG_SWAP=y
30CONFIG_SYSVIPC=y 31CONFIG_SYSVIPC=y
31# CONFIG_POSIX_MQUEUE is not set 32# CONFIG_POSIX_MQUEUE is not set
@@ -36,6 +37,7 @@ CONFIG_HOTPLUG=y
36CONFIG_KOBJECT_UEVENT=y 37CONFIG_KOBJECT_UEVENT=y
37# CONFIG_IKCONFIG is not set 38# CONFIG_IKCONFIG is not set
38# CONFIG_CPUSETS is not set 39# CONFIG_CPUSETS is not set
40CONFIG_INITRAMFS_SOURCE=""
39# CONFIG_EMBEDDED is not set 41# CONFIG_EMBEDDED is not set
40CONFIG_KALLSYMS=y 42CONFIG_KALLSYMS=y
41# CONFIG_KALLSYMS_ALL is not set 43# CONFIG_KALLSYMS_ALL is not set
@@ -95,6 +97,7 @@ CONFIG_FLATMEM_MANUAL=y
95# CONFIG_SPARSEMEM_MANUAL is not set 97# CONFIG_SPARSEMEM_MANUAL is not set
96CONFIG_FLATMEM=y 98CONFIG_FLATMEM=y
97CONFIG_FLAT_NODE_MEM_MAP=y 99CONFIG_FLAT_NODE_MEM_MAP=y
100# CONFIG_SPARSEMEM_STATIC is not set
98# CONFIG_NUMA is not set 101# CONFIG_NUMA is not set
99CONFIG_SCHED_SMT=y 102CONFIG_SCHED_SMT=y
100CONFIG_PREEMPT_NONE=y 103CONFIG_PREEMPT_NONE=y
@@ -110,17 +113,18 @@ CONFIG_PPC_RTAS=y
110CONFIG_RTAS_PROC=y 113CONFIG_RTAS_PROC=y
111CONFIG_RTAS_FLASH=y 114CONFIG_RTAS_FLASH=y
112CONFIG_SECCOMP=y 115CONFIG_SECCOMP=y
116CONFIG_BINFMT_ELF=y
117# CONFIG_BINFMT_MISC is not set
118CONFIG_PROC_DEVICETREE=y
119# CONFIG_CMDLINE_BOOL is not set
113CONFIG_ISA_DMA_API=y 120CONFIG_ISA_DMA_API=y
114 121
115# 122#
116# General setup 123# Bus Options
117# 124#
118CONFIG_PCI=y 125CONFIG_PCI=y
119CONFIG_PCI_DOMAINS=y 126CONFIG_PCI_DOMAINS=y
120CONFIG_BINFMT_ELF=y
121# CONFIG_BINFMT_MISC is not set
122CONFIG_PCI_LEGACY_PROC=y 127CONFIG_PCI_LEGACY_PROC=y
123CONFIG_PCI_NAMES=y
124# CONFIG_PCI_DEBUG is not set 128# CONFIG_PCI_DEBUG is not set
125 129
126# 130#
@@ -132,8 +136,6 @@ CONFIG_PCI_NAMES=y
132# PCI Hotplug Support 136# PCI Hotplug Support
133# 137#
134# CONFIG_HOTPLUG_PCI is not set 138# CONFIG_HOTPLUG_PCI is not set
135CONFIG_PROC_DEVICETREE=y
136# CONFIG_CMDLINE_BOOL is not set
137 139
138# 140#
139# Networking 141# Networking
@@ -163,8 +165,8 @@ CONFIG_SYN_COOKIES=y
163# CONFIG_INET_ESP is not set 165# CONFIG_INET_ESP is not set
164# CONFIG_INET_IPCOMP is not set 166# CONFIG_INET_IPCOMP is not set
165CONFIG_INET_TUNNEL=y 167CONFIG_INET_TUNNEL=y
166CONFIG_IP_TCPDIAG=y 168CONFIG_INET_DIAG=y
167CONFIG_IP_TCPDIAG_IPV6=y 169CONFIG_INET_TCP_DIAG=y
168# CONFIG_TCP_CONG_ADVANCED is not set 170# CONFIG_TCP_CONG_ADVANCED is not set
169CONFIG_TCP_CONG_BIC=y 171CONFIG_TCP_CONG_BIC=y
170 172
@@ -181,6 +183,7 @@ CONFIG_INET6_TUNNEL=m
181CONFIG_IPV6_TUNNEL=m 183CONFIG_IPV6_TUNNEL=m
182CONFIG_NETFILTER=y 184CONFIG_NETFILTER=y
183# CONFIG_NETFILTER_DEBUG is not set 185# CONFIG_NETFILTER_DEBUG is not set
186# CONFIG_NETFILTER_NETLINK is not set
184 187
185# 188#
186# IP: Netfilter Configuration 189# IP: Netfilter Configuration
@@ -188,11 +191,14 @@ CONFIG_NETFILTER=y
188CONFIG_IP_NF_CONNTRACK=y 191CONFIG_IP_NF_CONNTRACK=y
189# CONFIG_IP_NF_CT_ACCT is not set 192# CONFIG_IP_NF_CT_ACCT is not set
190# CONFIG_IP_NF_CONNTRACK_MARK is not set 193# CONFIG_IP_NF_CONNTRACK_MARK is not set
194# CONFIG_IP_NF_CONNTRACK_EVENTS is not set
191CONFIG_IP_NF_CT_PROTO_SCTP=y 195CONFIG_IP_NF_CT_PROTO_SCTP=y
192CONFIG_IP_NF_FTP=m 196CONFIG_IP_NF_FTP=m
193CONFIG_IP_NF_IRC=m 197CONFIG_IP_NF_IRC=m
198# CONFIG_IP_NF_NETBIOS_NS is not set
194CONFIG_IP_NF_TFTP=m 199CONFIG_IP_NF_TFTP=m
195CONFIG_IP_NF_AMANDA=m 200CONFIG_IP_NF_AMANDA=m
201# CONFIG_IP_NF_PPTP is not set
196CONFIG_IP_NF_QUEUE=m 202CONFIG_IP_NF_QUEUE=m
197CONFIG_IP_NF_IPTABLES=m 203CONFIG_IP_NF_IPTABLES=m
198CONFIG_IP_NF_MATCH_LIMIT=m 204CONFIG_IP_NF_MATCH_LIMIT=m
@@ -216,13 +222,16 @@ CONFIG_IP_NF_MATCH_OWNER=m
216CONFIG_IP_NF_MATCH_ADDRTYPE=m 222CONFIG_IP_NF_MATCH_ADDRTYPE=m
217CONFIG_IP_NF_MATCH_REALM=m 223CONFIG_IP_NF_MATCH_REALM=m
218CONFIG_IP_NF_MATCH_SCTP=m 224CONFIG_IP_NF_MATCH_SCTP=m
225# CONFIG_IP_NF_MATCH_DCCP is not set
219CONFIG_IP_NF_MATCH_COMMENT=m 226CONFIG_IP_NF_MATCH_COMMENT=m
220CONFIG_IP_NF_MATCH_HASHLIMIT=m 227CONFIG_IP_NF_MATCH_HASHLIMIT=m
228CONFIG_IP_NF_MATCH_STRING=m
221CONFIG_IP_NF_FILTER=m 229CONFIG_IP_NF_FILTER=m
222CONFIG_IP_NF_TARGET_REJECT=m 230CONFIG_IP_NF_TARGET_REJECT=m
223CONFIG_IP_NF_TARGET_LOG=m 231CONFIG_IP_NF_TARGET_LOG=m
224CONFIG_IP_NF_TARGET_ULOG=m 232CONFIG_IP_NF_TARGET_ULOG=m
225CONFIG_IP_NF_TARGET_TCPMSS=m 233CONFIG_IP_NF_TARGET_TCPMSS=m
234CONFIG_IP_NF_TARGET_NFQUEUE=m
226CONFIG_IP_NF_NAT=m 235CONFIG_IP_NF_NAT=m
227CONFIG_IP_NF_NAT_NEEDED=y 236CONFIG_IP_NF_NAT_NEEDED=y
228CONFIG_IP_NF_TARGET_MASQUERADE=m 237CONFIG_IP_NF_TARGET_MASQUERADE=m
@@ -240,6 +249,7 @@ CONFIG_IP_NF_TARGET_ECN=m
240CONFIG_IP_NF_TARGET_DSCP=m 249CONFIG_IP_NF_TARGET_DSCP=m
241CONFIG_IP_NF_TARGET_MARK=m 250CONFIG_IP_NF_TARGET_MARK=m
242CONFIG_IP_NF_TARGET_CLASSIFY=m 251CONFIG_IP_NF_TARGET_CLASSIFY=m
252CONFIG_IP_NF_TARGET_TTL=m
243CONFIG_IP_NF_RAW=m 253CONFIG_IP_NF_RAW=m
244CONFIG_IP_NF_TARGET_NOTRACK=m 254CONFIG_IP_NF_TARGET_NOTRACK=m
245CONFIG_IP_NF_ARPTABLES=m 255CONFIG_IP_NF_ARPTABLES=m
@@ -251,6 +261,12 @@ CONFIG_IP_NF_ARP_MANGLE=m
251# 261#
252# CONFIG_IP6_NF_QUEUE is not set 262# CONFIG_IP6_NF_QUEUE is not set
253# CONFIG_IP6_NF_IPTABLES is not set 263# CONFIG_IP6_NF_IPTABLES is not set
264# CONFIG_IP6_NF_TARGET_NFQUEUE is not set
265
266#
267# DCCP Configuration (EXPERIMENTAL)
268#
269# CONFIG_IP_DCCP is not set
254 270
255# 271#
256# SCTP Configuration (EXPERIMENTAL) 272# SCTP Configuration (EXPERIMENTAL)
@@ -278,6 +294,7 @@ CONFIG_NET_CLS_ROUTE=y
278# CONFIG_HAMRADIO is not set 294# CONFIG_HAMRADIO is not set
279# CONFIG_IRDA is not set 295# CONFIG_IRDA is not set
280# CONFIG_BT is not set 296# CONFIG_BT is not set
297# CONFIG_IEEE80211 is not set
281 298
282# 299#
283# Device Drivers 300# Device Drivers
@@ -292,6 +309,11 @@ CONFIG_FW_LOADER=y
292# CONFIG_DEBUG_DRIVER is not set 309# CONFIG_DEBUG_DRIVER is not set
293 310
294# 311#
312# Connector - unified userspace <-> kernelspace linker
313#
314# CONFIG_CONNECTOR is not set
315
316#
295# Memory Technology Devices (MTD) 317# Memory Technology Devices (MTD)
296# 318#
297# CONFIG_MTD is not set 319# CONFIG_MTD is not set
@@ -322,7 +344,6 @@ CONFIG_BLK_DEV_RAM=y
322CONFIG_BLK_DEV_RAM_COUNT=16 344CONFIG_BLK_DEV_RAM_COUNT=16
323CONFIG_BLK_DEV_RAM_SIZE=131072 345CONFIG_BLK_DEV_RAM_SIZE=131072
324CONFIG_BLK_DEV_INITRD=y 346CONFIG_BLK_DEV_INITRD=y
325CONFIG_INITRAMFS_SOURCE=""
326# CONFIG_CDROM_PKTCDVD is not set 347# CONFIG_CDROM_PKTCDVD is not set
327 348
328# 349#
@@ -395,6 +416,7 @@ CONFIG_IDEDMA_AUTO=y
395# 416#
396# SCSI device support 417# SCSI device support
397# 418#
419# CONFIG_RAID_ATTRS is not set
398# CONFIG_SCSI is not set 420# CONFIG_SCSI is not set
399 421
400# 422#
@@ -436,12 +458,18 @@ CONFIG_NETDEVICES=y
436# CONFIG_ARCNET is not set 458# CONFIG_ARCNET is not set
437 459
438# 460#
461# PHY device support
462#
463# CONFIG_PHYLIB is not set
464
465#
439# Ethernet (10 or 100Mbit) 466# Ethernet (10 or 100Mbit)
440# 467#
441CONFIG_NET_ETHERNET=y 468CONFIG_NET_ETHERNET=y
442CONFIG_MII=y 469CONFIG_MII=y
443# CONFIG_HAPPYMEAL is not set 470# CONFIG_HAPPYMEAL is not set
444# CONFIG_SUNGEM is not set 471# CONFIG_SUNGEM is not set
472# CONFIG_CASSINI is not set
445# CONFIG_NET_VENDOR_3COM is not set 473# CONFIG_NET_VENDOR_3COM is not set
446 474
447# 475#
@@ -462,15 +490,18 @@ CONFIG_E1000=m
462# CONFIG_HAMACHI is not set 490# CONFIG_HAMACHI is not set
463# CONFIG_YELLOWFIN is not set 491# CONFIG_YELLOWFIN is not set
464# CONFIG_R8169 is not set 492# CONFIG_R8169 is not set
493# CONFIG_SIS190 is not set
465CONFIG_SKGE=m 494CONFIG_SKGE=m
466# CONFIG_SK98LIN is not set 495# CONFIG_SK98LIN is not set
467# CONFIG_TIGON3 is not set 496# CONFIG_TIGON3 is not set
468# CONFIG_BNX2 is not set 497# CONFIG_BNX2 is not set
498# CONFIG_SPIDER_NET is not set
469# CONFIG_MV643XX_ETH is not set 499# CONFIG_MV643XX_ETH is not set
470 500
471# 501#
472# Ethernet (10000 Mbit) 502# Ethernet (10000 Mbit)
473# 503#
504# CONFIG_CHELSIO_T1 is not set
474# CONFIG_IXGB is not set 505# CONFIG_IXGB is not set
475# CONFIG_S2IO is not set 506# CONFIG_S2IO is not set
476 507
@@ -552,6 +583,7 @@ CONFIG_HW_CONSOLE=y
552CONFIG_SERIAL_NONSTANDARD=y 583CONFIG_SERIAL_NONSTANDARD=y
553# CONFIG_ROCKETPORT is not set 584# CONFIG_ROCKETPORT is not set
554# CONFIG_CYCLADES is not set 585# CONFIG_CYCLADES is not set
586# CONFIG_DIGIEPCA is not set
555# CONFIG_MOXA_SMARTIO is not set 587# CONFIG_MOXA_SMARTIO is not set
556# CONFIG_ISI is not set 588# CONFIG_ISI is not set
557# CONFIG_SYNCLINK is not set 589# CONFIG_SYNCLINK is not set
@@ -642,7 +674,6 @@ CONFIG_I2C_ALGOBIT=y
642# CONFIG_I2C_I801 is not set 674# CONFIG_I2C_I801 is not set
643# CONFIG_I2C_I810 is not set 675# CONFIG_I2C_I810 is not set
644# CONFIG_I2C_PIIX4 is not set 676# CONFIG_I2C_PIIX4 is not set
645# CONFIG_I2C_ISA is not set
646# CONFIG_I2C_NFORCE2 is not set 677# CONFIG_I2C_NFORCE2 is not set
647# CONFIG_I2C_PARPORT_LIGHT is not set 678# CONFIG_I2C_PARPORT_LIGHT is not set
648# CONFIG_I2C_PROSAVAGE is not set 679# CONFIG_I2C_PROSAVAGE is not set
@@ -656,7 +687,6 @@ CONFIG_I2C_ALGOBIT=y
656# CONFIG_I2C_VIAPRO is not set 687# CONFIG_I2C_VIAPRO is not set
657# CONFIG_I2C_VOODOO3 is not set 688# CONFIG_I2C_VOODOO3 is not set
658# CONFIG_I2C_PCA_ISA is not set 689# CONFIG_I2C_PCA_ISA is not set
659# CONFIG_I2C_SENSOR is not set
660 690
661# 691#
662# Miscellaneous I2C Chip support 692# Miscellaneous I2C Chip support
@@ -683,12 +713,17 @@ CONFIG_I2C_ALGOBIT=y
683# Hardware Monitoring support 713# Hardware Monitoring support
684# 714#
685# CONFIG_HWMON is not set 715# CONFIG_HWMON is not set
716# CONFIG_HWMON_VID is not set
686 717
687# 718#
688# Misc devices 719# Misc devices
689# 720#
690 721
691# 722#
723# Multimedia Capabilities Port drivers
724#
725
726#
692# Multimedia devices 727# Multimedia devices
693# 728#
694# CONFIG_VIDEO_DEV is not set 729# CONFIG_VIDEO_DEV is not set
@@ -756,10 +791,6 @@ CONFIG_FS_MBCACHE=y
756# CONFIG_REISERFS_FS is not set 791# CONFIG_REISERFS_FS is not set
757# CONFIG_JFS_FS is not set 792# CONFIG_JFS_FS is not set
758CONFIG_FS_POSIX_ACL=y 793CONFIG_FS_POSIX_ACL=y
759
760#
761# XFS support
762#
763# CONFIG_XFS_FS is not set 794# CONFIG_XFS_FS is not set
764# CONFIG_MINIX_FS is not set 795# CONFIG_MINIX_FS is not set
765# CONFIG_ROMFS_FS is not set 796# CONFIG_ROMFS_FS is not set
@@ -768,6 +799,7 @@ CONFIG_INOTIFY=y
768CONFIG_DNOTIFY=y 799CONFIG_DNOTIFY=y
769# CONFIG_AUTOFS_FS is not set 800# CONFIG_AUTOFS_FS is not set
770# CONFIG_AUTOFS4_FS is not set 801# CONFIG_AUTOFS4_FS is not set
802# CONFIG_FUSE_FS is not set
771 803
772# 804#
773# CD-ROM/DVD Filesystems 805# CD-ROM/DVD Filesystems
@@ -794,13 +826,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
794CONFIG_PROC_FS=y 826CONFIG_PROC_FS=y
795CONFIG_PROC_KCORE=y 827CONFIG_PROC_KCORE=y
796CONFIG_SYSFS=y 828CONFIG_SYSFS=y
797# CONFIG_DEVPTS_FS_XATTR is not set
798CONFIG_TMPFS=y 829CONFIG_TMPFS=y
799CONFIG_TMPFS_XATTR=y
800# CONFIG_TMPFS_SECURITY is not set
801CONFIG_HUGETLBFS=y 830CONFIG_HUGETLBFS=y
802CONFIG_HUGETLB_PAGE=y 831CONFIG_HUGETLB_PAGE=y
803CONFIG_RAMFS=y 832CONFIG_RAMFS=y
833# CONFIG_RELAYFS_FS is not set
804 834
805# 835#
806# Miscellaneous filesystems 836# Miscellaneous filesystems
@@ -846,6 +876,7 @@ CONFIG_SUNRPC=m
846# CONFIG_NCP_FS is not set 876# CONFIG_NCP_FS is not set
847# CONFIG_CODA_FS is not set 877# CONFIG_CODA_FS is not set
848# CONFIG_AFS_FS is not set 878# CONFIG_AFS_FS is not set
879# CONFIG_9P_FS is not set
849 880
850# 881#
851# Partition Types 882# Partition Types
@@ -923,6 +954,7 @@ CONFIG_NLS_ISO8859_15=m
923CONFIG_DEBUG_KERNEL=y 954CONFIG_DEBUG_KERNEL=y
924CONFIG_MAGIC_SYSRQ=y 955CONFIG_MAGIC_SYSRQ=y
925CONFIG_LOG_BUF_SHIFT=15 956CONFIG_LOG_BUF_SHIFT=15
957CONFIG_DETECT_SOFTLOCKUP=y
926# CONFIG_SCHEDSTATS is not set 958# CONFIG_SCHEDSTATS is not set
927# CONFIG_DEBUG_SLAB is not set 959# CONFIG_DEBUG_SLAB is not set
928# CONFIG_DEBUG_SPINLOCK is not set 960# CONFIG_DEBUG_SPINLOCK is not set
@@ -981,7 +1013,12 @@ CONFIG_CRYPTO_DEFLATE=m
981# Library routines 1013# Library routines
982# 1014#
983# CONFIG_CRC_CCITT is not set 1015# CONFIG_CRC_CCITT is not set
1016# CONFIG_CRC16 is not set
984CONFIG_CRC32=y 1017CONFIG_CRC32=y
985# CONFIG_LIBCRC32C is not set 1018# CONFIG_LIBCRC32C is not set
986CONFIG_ZLIB_INFLATE=m 1019CONFIG_ZLIB_INFLATE=m
987CONFIG_ZLIB_DEFLATE=m 1020CONFIG_ZLIB_DEFLATE=m
1021CONFIG_TEXTSEARCH=y
1022CONFIG_TEXTSEARCH_KMP=m
1023CONFIG_TEXTSEARCH_BM=m
1024CONFIG_TEXTSEARCH_FSM=m
diff --git a/arch/ppc64/configs/g5_defconfig b/arch/ppc64/configs/g5_defconfig
index fc83d9330282..6323065fbf2c 100644
--- a/arch/ppc64/configs/g5_defconfig
+++ b/arch/ppc64/configs/g5_defconfig
@@ -1,17 +1,17 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.13-rc6 3# Linux kernel version: 2.6.14-rc4
4# Mon Aug 8 14:16:59 2005 4# Thu Oct 20 08:30:23 2005
5# 5#
6CONFIG_64BIT=y 6CONFIG_64BIT=y
7CONFIG_MMU=y 7CONFIG_MMU=y
8CONFIG_RWSEM_XCHGADD_ALGORITHM=y 8CONFIG_RWSEM_XCHGADD_ALGORITHM=y
9CONFIG_GENERIC_CALIBRATE_DELAY=y 9CONFIG_GENERIC_CALIBRATE_DELAY=y
10CONFIG_GENERIC_ISA_DMA=y 10CONFIG_GENERIC_ISA_DMA=y
11CONFIG_HAVE_DEC_LOCK=y
12CONFIG_EARLY_PRINTK=y 11CONFIG_EARLY_PRINTK=y
13CONFIG_COMPAT=y 12CONFIG_COMPAT=y
14CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 13CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
14CONFIG_ARCH_MAY_HAVE_PC_FDC=y
15CONFIG_FORCE_MAX_ZONEORDER=13 15CONFIG_FORCE_MAX_ZONEORDER=13
16 16
17# 17#
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32
26# General setup 26# General setup
27# 27#
28CONFIG_LOCALVERSION="" 28CONFIG_LOCALVERSION=""
29CONFIG_LOCALVERSION_AUTO=y
29CONFIG_SWAP=y 30CONFIG_SWAP=y
30CONFIG_SYSVIPC=y 31CONFIG_SYSVIPC=y
31CONFIG_POSIX_MQUEUE=y 32CONFIG_POSIX_MQUEUE=y
@@ -37,6 +38,7 @@ CONFIG_KOBJECT_UEVENT=y
37CONFIG_IKCONFIG=y 38CONFIG_IKCONFIG=y
38CONFIG_IKCONFIG_PROC=y 39CONFIG_IKCONFIG_PROC=y
39# CONFIG_CPUSETS is not set 40# CONFIG_CPUSETS is not set
41CONFIG_INITRAMFS_SOURCE=""
40# CONFIG_EMBEDDED is not set 42# CONFIG_EMBEDDED is not set
41CONFIG_KALLSYMS=y 43CONFIG_KALLSYMS=y
42# CONFIG_KALLSYMS_ALL is not set 44# CONFIG_KALLSYMS_ALL is not set
@@ -97,6 +99,7 @@ CONFIG_FLATMEM_MANUAL=y
97# CONFIG_SPARSEMEM_MANUAL is not set 99# CONFIG_SPARSEMEM_MANUAL is not set
98CONFIG_FLATMEM=y 100CONFIG_FLATMEM=y
99CONFIG_FLAT_NODE_MEM_MAP=y 101CONFIG_FLAT_NODE_MEM_MAP=y
102# CONFIG_SPARSEMEM_STATIC is not set
100# CONFIG_NUMA is not set 103# CONFIG_NUMA is not set
101# CONFIG_SCHED_SMT is not set 104# CONFIG_SCHED_SMT is not set
102CONFIG_PREEMPT_NONE=y 105CONFIG_PREEMPT_NONE=y
@@ -109,19 +112,20 @@ CONFIG_HZ_250=y
109CONFIG_HZ=250 112CONFIG_HZ=250
110CONFIG_GENERIC_HARDIRQS=y 113CONFIG_GENERIC_HARDIRQS=y
111CONFIG_SECCOMP=y 114CONFIG_SECCOMP=y
115CONFIG_BINFMT_ELF=y
116# CONFIG_BINFMT_MISC is not set
117# CONFIG_HOTPLUG_CPU is not set
118CONFIG_PROC_DEVICETREE=y
119# CONFIG_CMDLINE_BOOL is not set
112CONFIG_ISA_DMA_API=y 120CONFIG_ISA_DMA_API=y
113 121
114# 122#
115# General setup 123# Bus Options
116# 124#
117CONFIG_PCI=y 125CONFIG_PCI=y
118CONFIG_PCI_DOMAINS=y 126CONFIG_PCI_DOMAINS=y
119CONFIG_BINFMT_ELF=y
120# CONFIG_BINFMT_MISC is not set
121CONFIG_PCI_LEGACY_PROC=y 127CONFIG_PCI_LEGACY_PROC=y
122CONFIG_PCI_NAMES=y
123# CONFIG_PCI_DEBUG is not set 128# CONFIG_PCI_DEBUG is not set
124# CONFIG_HOTPLUG_CPU is not set
125 129
126# 130#
127# PCCARD (PCMCIA/CardBus) support 131# PCCARD (PCMCIA/CardBus) support
@@ -132,8 +136,6 @@ CONFIG_PCI_NAMES=y
132# PCI Hotplug Support 136# PCI Hotplug Support
133# 137#
134# CONFIG_HOTPLUG_PCI is not set 138# CONFIG_HOTPLUG_PCI is not set
135CONFIG_PROC_DEVICETREE=y
136# CONFIG_CMDLINE_BOOL is not set
137 139
138# 140#
139# Networking 141# Networking
@@ -163,8 +165,8 @@ CONFIG_INET_AH=m
163CONFIG_INET_ESP=m 165CONFIG_INET_ESP=m
164CONFIG_INET_IPCOMP=m 166CONFIG_INET_IPCOMP=m
165CONFIG_INET_TUNNEL=y 167CONFIG_INET_TUNNEL=y
166CONFIG_IP_TCPDIAG=m 168CONFIG_INET_DIAG=y
167# CONFIG_IP_TCPDIAG_IPV6 is not set 169CONFIG_INET_TCP_DIAG=y
168# CONFIG_TCP_CONG_ADVANCED is not set 170# CONFIG_TCP_CONG_ADVANCED is not set
169CONFIG_TCP_CONG_BIC=y 171CONFIG_TCP_CONG_BIC=y
170 172
@@ -175,6 +177,7 @@ CONFIG_TCP_CONG_BIC=y
175# CONFIG_IPV6 is not set 177# CONFIG_IPV6 is not set
176CONFIG_NETFILTER=y 178CONFIG_NETFILTER=y
177# CONFIG_NETFILTER_DEBUG is not set 179# CONFIG_NETFILTER_DEBUG is not set
180# CONFIG_NETFILTER_NETLINK is not set
178 181
179# 182#
180# IP: Netfilter Configuration 183# IP: Netfilter Configuration
@@ -182,11 +185,14 @@ CONFIG_NETFILTER=y
182CONFIG_IP_NF_CONNTRACK=m 185CONFIG_IP_NF_CONNTRACK=m
183CONFIG_IP_NF_CT_ACCT=y 186CONFIG_IP_NF_CT_ACCT=y
184CONFIG_IP_NF_CONNTRACK_MARK=y 187CONFIG_IP_NF_CONNTRACK_MARK=y
188CONFIG_IP_NF_CONNTRACK_EVENTS=y
185CONFIG_IP_NF_CT_PROTO_SCTP=m 189CONFIG_IP_NF_CT_PROTO_SCTP=m
186CONFIG_IP_NF_FTP=m 190CONFIG_IP_NF_FTP=m
187CONFIG_IP_NF_IRC=m 191CONFIG_IP_NF_IRC=m
192# CONFIG_IP_NF_NETBIOS_NS is not set
188CONFIG_IP_NF_TFTP=m 193CONFIG_IP_NF_TFTP=m
189CONFIG_IP_NF_AMANDA=m 194CONFIG_IP_NF_AMANDA=m
195# CONFIG_IP_NF_PPTP is not set
190CONFIG_IP_NF_QUEUE=m 196CONFIG_IP_NF_QUEUE=m
191CONFIG_IP_NF_IPTABLES=m 197CONFIG_IP_NF_IPTABLES=m
192CONFIG_IP_NF_MATCH_LIMIT=m 198CONFIG_IP_NF_MATCH_LIMIT=m
@@ -210,14 +216,18 @@ CONFIG_IP_NF_MATCH_OWNER=m
210CONFIG_IP_NF_MATCH_ADDRTYPE=m 216CONFIG_IP_NF_MATCH_ADDRTYPE=m
211CONFIG_IP_NF_MATCH_REALM=m 217CONFIG_IP_NF_MATCH_REALM=m
212CONFIG_IP_NF_MATCH_SCTP=m 218CONFIG_IP_NF_MATCH_SCTP=m
219# CONFIG_IP_NF_MATCH_DCCP is not set
213CONFIG_IP_NF_MATCH_COMMENT=m 220CONFIG_IP_NF_MATCH_COMMENT=m
214CONFIG_IP_NF_MATCH_CONNMARK=m 221CONFIG_IP_NF_MATCH_CONNMARK=m
222CONFIG_IP_NF_MATCH_CONNBYTES=m
215CONFIG_IP_NF_MATCH_HASHLIMIT=m 223CONFIG_IP_NF_MATCH_HASHLIMIT=m
224CONFIG_IP_NF_MATCH_STRING=m
216CONFIG_IP_NF_FILTER=m 225CONFIG_IP_NF_FILTER=m
217CONFIG_IP_NF_TARGET_REJECT=m 226CONFIG_IP_NF_TARGET_REJECT=m
218CONFIG_IP_NF_TARGET_LOG=m 227CONFIG_IP_NF_TARGET_LOG=m
219CONFIG_IP_NF_TARGET_ULOG=m 228CONFIG_IP_NF_TARGET_ULOG=m
220CONFIG_IP_NF_TARGET_TCPMSS=m 229CONFIG_IP_NF_TARGET_TCPMSS=m
230CONFIG_IP_NF_TARGET_NFQUEUE=m
221CONFIG_IP_NF_NAT=m 231CONFIG_IP_NF_NAT=m
222CONFIG_IP_NF_NAT_NEEDED=y 232CONFIG_IP_NF_NAT_NEEDED=y
223CONFIG_IP_NF_TARGET_MASQUERADE=m 233CONFIG_IP_NF_TARGET_MASQUERADE=m
@@ -235,6 +245,7 @@ CONFIG_IP_NF_TARGET_ECN=m
235CONFIG_IP_NF_TARGET_DSCP=m 245CONFIG_IP_NF_TARGET_DSCP=m
236CONFIG_IP_NF_TARGET_MARK=m 246CONFIG_IP_NF_TARGET_MARK=m
237CONFIG_IP_NF_TARGET_CLASSIFY=m 247CONFIG_IP_NF_TARGET_CLASSIFY=m
248CONFIG_IP_NF_TARGET_TTL=m
238CONFIG_IP_NF_TARGET_CONNMARK=m 249CONFIG_IP_NF_TARGET_CONNMARK=m
239CONFIG_IP_NF_TARGET_CLUSTERIP=m 250CONFIG_IP_NF_TARGET_CLUSTERIP=m
240CONFIG_IP_NF_RAW=m 251CONFIG_IP_NF_RAW=m
@@ -244,6 +255,11 @@ CONFIG_IP_NF_ARPFILTER=m
244CONFIG_IP_NF_ARP_MANGLE=m 255CONFIG_IP_NF_ARP_MANGLE=m
245 256
246# 257#
258# DCCP Configuration (EXPERIMENTAL)
259#
260# CONFIG_IP_DCCP is not set
261
262#
247# SCTP Configuration (EXPERIMENTAL) 263# SCTP Configuration (EXPERIMENTAL)
248# 264#
249# CONFIG_IP_SCTP is not set 265# CONFIG_IP_SCTP is not set
@@ -270,6 +286,7 @@ CONFIG_NET_CLS_ROUTE=y
270# CONFIG_HAMRADIO is not set 286# CONFIG_HAMRADIO is not set
271# CONFIG_IRDA is not set 287# CONFIG_IRDA is not set
272# CONFIG_BT is not set 288# CONFIG_BT is not set
289# CONFIG_IEEE80211 is not set
273 290
274# 291#
275# Device Drivers 292# Device Drivers
@@ -284,6 +301,11 @@ CONFIG_FW_LOADER=y
284# CONFIG_DEBUG_DRIVER is not set 301# CONFIG_DEBUG_DRIVER is not set
285 302
286# 303#
304# Connector - unified userspace <-> kernelspace linker
305#
306# CONFIG_CONNECTOR is not set
307
308#
287# Memory Technology Devices (MTD) 309# Memory Technology Devices (MTD)
288# 310#
289# CONFIG_MTD is not set 311# CONFIG_MTD is not set
@@ -315,7 +337,6 @@ CONFIG_BLK_DEV_RAM=y
315CONFIG_BLK_DEV_RAM_COUNT=16 337CONFIG_BLK_DEV_RAM_COUNT=16
316CONFIG_BLK_DEV_RAM_SIZE=65536 338CONFIG_BLK_DEV_RAM_SIZE=65536
317CONFIG_BLK_DEV_INITRD=y 339CONFIG_BLK_DEV_INITRD=y
318CONFIG_INITRAMFS_SOURCE=""
319CONFIG_CDROM_PKTCDVD=m 340CONFIG_CDROM_PKTCDVD=m
320CONFIG_CDROM_PKTCDVD_BUFFERS=8 341CONFIG_CDROM_PKTCDVD_BUFFERS=8
321# CONFIG_CDROM_PKTCDVD_WCACHE is not set 342# CONFIG_CDROM_PKTCDVD_WCACHE is not set
@@ -395,6 +416,7 @@ CONFIG_IDEDMA_AUTO=y
395# 416#
396# SCSI device support 417# SCSI device support
397# 418#
419# CONFIG_RAID_ATTRS is not set
398CONFIG_SCSI=y 420CONFIG_SCSI=y
399CONFIG_SCSI_PROC_FS=y 421CONFIG_SCSI_PROC_FS=y
400 422
@@ -422,6 +444,7 @@ CONFIG_SCSI_CONSTANTS=y
422CONFIG_SCSI_SPI_ATTRS=y 444CONFIG_SCSI_SPI_ATTRS=y
423# CONFIG_SCSI_FC_ATTRS is not set 445# CONFIG_SCSI_FC_ATTRS is not set
424# CONFIG_SCSI_ISCSI_ATTRS is not set 446# CONFIG_SCSI_ISCSI_ATTRS is not set
447# CONFIG_SCSI_SAS_ATTRS is not set
425 448
426# 449#
427# SCSI low-level drivers 450# SCSI low-level drivers
@@ -435,10 +458,12 @@ CONFIG_SCSI_SPI_ATTRS=y
435# CONFIG_SCSI_AIC79XX is not set 458# CONFIG_SCSI_AIC79XX is not set
436# CONFIG_MEGARAID_NEWGEN is not set 459# CONFIG_MEGARAID_NEWGEN is not set
437# CONFIG_MEGARAID_LEGACY is not set 460# CONFIG_MEGARAID_LEGACY is not set
461# CONFIG_MEGARAID_SAS is not set
438CONFIG_SCSI_SATA=y 462CONFIG_SCSI_SATA=y
439# CONFIG_SCSI_SATA_AHCI is not set 463# CONFIG_SCSI_SATA_AHCI is not set
440CONFIG_SCSI_SATA_SVW=y 464CONFIG_SCSI_SATA_SVW=y
441# CONFIG_SCSI_ATA_PIIX is not set 465# CONFIG_SCSI_ATA_PIIX is not set
466# CONFIG_SCSI_SATA_MV is not set
442# CONFIG_SCSI_SATA_NV is not set 467# CONFIG_SCSI_SATA_NV is not set
443# CONFIG_SCSI_SATA_PROMISE is not set 468# CONFIG_SCSI_SATA_PROMISE is not set
444# CONFIG_SCSI_SATA_QSTOR is not set 469# CONFIG_SCSI_SATA_QSTOR is not set
@@ -498,6 +523,7 @@ CONFIG_DM_ZERO=m
498# CONFIG_FUSION is not set 523# CONFIG_FUSION is not set
499# CONFIG_FUSION_SPI is not set 524# CONFIG_FUSION_SPI is not set
500# CONFIG_FUSION_FC is not set 525# CONFIG_FUSION_FC is not set
526# CONFIG_FUSION_SAS is not set
501 527
502# 528#
503# IEEE 1394 (FireWire) support 529# IEEE 1394 (FireWire) support
@@ -540,7 +566,6 @@ CONFIG_IEEE1394_RAWIO=y
540# 566#
541CONFIG_ADB_PMU=y 567CONFIG_ADB_PMU=y
542CONFIG_PMAC_SMU=y 568CONFIG_PMAC_SMU=y
543# CONFIG_PMAC_BACKLIGHT is not set
544CONFIG_THERM_PM72=y 569CONFIG_THERM_PM72=y
545 570
546# 571#
@@ -558,12 +583,18 @@ CONFIG_TUN=m
558# CONFIG_ARCNET is not set 583# CONFIG_ARCNET is not set
559 584
560# 585#
586# PHY device support
587#
588# CONFIG_PHYLIB is not set
589
590#
561# Ethernet (10 or 100Mbit) 591# Ethernet (10 or 100Mbit)
562# 592#
563CONFIG_NET_ETHERNET=y 593CONFIG_NET_ETHERNET=y
564CONFIG_MII=y 594CONFIG_MII=y
565# CONFIG_HAPPYMEAL is not set 595# CONFIG_HAPPYMEAL is not set
566CONFIG_SUNGEM=y 596CONFIG_SUNGEM=y
597# CONFIG_CASSINI is not set
567# CONFIG_NET_VENDOR_3COM is not set 598# CONFIG_NET_VENDOR_3COM is not set
568 599
569# 600#
@@ -585,6 +616,7 @@ CONFIG_E1000=y
585# CONFIG_HAMACHI is not set 616# CONFIG_HAMACHI is not set
586# CONFIG_YELLOWFIN is not set 617# CONFIG_YELLOWFIN is not set
587# CONFIG_R8169 is not set 618# CONFIG_R8169 is not set
619# CONFIG_SIS190 is not set
588# CONFIG_SKGE is not set 620# CONFIG_SKGE is not set
589# CONFIG_SK98LIN is not set 621# CONFIG_SK98LIN is not set
590CONFIG_TIGON3=m 622CONFIG_TIGON3=m
@@ -594,6 +626,7 @@ CONFIG_TIGON3=m
594# 626#
595# Ethernet (10000 Mbit) 627# Ethernet (10000 Mbit)
596# 628#
629# CONFIG_CHELSIO_T1 is not set
597# CONFIG_IXGB is not set 630# CONFIG_IXGB is not set
598# CONFIG_S2IO is not set 631# CONFIG_S2IO is not set
599 632
@@ -760,8 +793,8 @@ CONFIG_I2C_ALGOBIT=y
760# CONFIG_I2C_I801 is not set 793# CONFIG_I2C_I801 is not set
761# CONFIG_I2C_I810 is not set 794# CONFIG_I2C_I810 is not set
762# CONFIG_I2C_PIIX4 is not set 795# CONFIG_I2C_PIIX4 is not set
763# CONFIG_I2C_ISA is not set
764CONFIG_I2C_KEYWEST=y 796CONFIG_I2C_KEYWEST=y
797CONFIG_I2C_PMAC_SMU=y
765# CONFIG_I2C_NFORCE2 is not set 798# CONFIG_I2C_NFORCE2 is not set
766# CONFIG_I2C_PARPORT_LIGHT is not set 799# CONFIG_I2C_PARPORT_LIGHT is not set
767# CONFIG_I2C_PROSAVAGE is not set 800# CONFIG_I2C_PROSAVAGE is not set
@@ -775,7 +808,6 @@ CONFIG_I2C_KEYWEST=y
775# CONFIG_I2C_VIAPRO is not set 808# CONFIG_I2C_VIAPRO is not set
776# CONFIG_I2C_VOODOO3 is not set 809# CONFIG_I2C_VOODOO3 is not set
777# CONFIG_I2C_PCA_ISA is not set 810# CONFIG_I2C_PCA_ISA is not set
778# CONFIG_I2C_SENSOR is not set
779 811
780# 812#
781# Miscellaneous I2C Chip support 813# Miscellaneous I2C Chip support
@@ -802,12 +834,17 @@ CONFIG_I2C_KEYWEST=y
802# Hardware Monitoring support 834# Hardware Monitoring support
803# 835#
804# CONFIG_HWMON is not set 836# CONFIG_HWMON is not set
837# CONFIG_HWMON_VID is not set
805 838
806# 839#
807# Misc devices 840# Misc devices
808# 841#
809 842
810# 843#
844# Multimedia Capabilities Port drivers
845#
846
847#
811# Multimedia devices 848# Multimedia devices
812# 849#
813# CONFIG_VIDEO_DEV is not set 850# CONFIG_VIDEO_DEV is not set
@@ -856,6 +893,7 @@ CONFIG_FB_RADEON_I2C=y
856# CONFIG_FB_KYRO is not set 893# CONFIG_FB_KYRO is not set
857# CONFIG_FB_3DFX is not set 894# CONFIG_FB_3DFX is not set
858# CONFIG_FB_VOODOO1 is not set 895# CONFIG_FB_VOODOO1 is not set
896# CONFIG_FB_CYBLA is not set
859# CONFIG_FB_TRIDENT is not set 897# CONFIG_FB_TRIDENT is not set
860# CONFIG_FB_S1D13XXX is not set 898# CONFIG_FB_S1D13XXX is not set
861# CONFIG_FB_VIRTUAL is not set 899# CONFIG_FB_VIRTUAL is not set
@@ -937,6 +975,7 @@ CONFIG_USB_STORAGE_DPCM=y
937CONFIG_USB_STORAGE_SDDR09=y 975CONFIG_USB_STORAGE_SDDR09=y
938CONFIG_USB_STORAGE_SDDR55=y 976CONFIG_USB_STORAGE_SDDR55=y
939CONFIG_USB_STORAGE_JUMPSHOT=y 977CONFIG_USB_STORAGE_JUMPSHOT=y
978# CONFIG_USB_STORAGE_ONETOUCH is not set
940 979
941# 980#
942# USB Input Devices 981# USB Input Devices
@@ -956,9 +995,11 @@ CONFIG_USB_HIDDEV=y
956# CONFIG_USB_MTOUCH is not set 995# CONFIG_USB_MTOUCH is not set
957# CONFIG_USB_ITMTOUCH is not set 996# CONFIG_USB_ITMTOUCH is not set
958# CONFIG_USB_EGALAX is not set 997# CONFIG_USB_EGALAX is not set
998# CONFIG_USB_YEALINK is not set
959# CONFIG_USB_XPAD is not set 999# CONFIG_USB_XPAD is not set
960# CONFIG_USB_ATI_REMOTE is not set 1000# CONFIG_USB_ATI_REMOTE is not set
961# CONFIG_USB_KEYSPAN_REMOTE is not set 1001# CONFIG_USB_KEYSPAN_REMOTE is not set
1002# CONFIG_USB_APPLETOUCH is not set
962 1003
963# 1004#
964# USB Imaging devices 1005# USB Imaging devices
@@ -983,30 +1024,14 @@ CONFIG_USB_KAWETH=m
983CONFIG_USB_PEGASUS=m 1024CONFIG_USB_PEGASUS=m
984CONFIG_USB_RTL8150=m 1025CONFIG_USB_RTL8150=m
985CONFIG_USB_USBNET=m 1026CONFIG_USB_USBNET=m
986 1027# CONFIG_USB_NET_AX8817X is not set
987# 1028CONFIG_USB_NET_CDCETHER=m
988# USB Host-to-Host Cables 1029# CONFIG_USB_NET_GL620A is not set
989# 1030# CONFIG_USB_NET_NET1080 is not set
990CONFIG_USB_ALI_M5632=y 1031# CONFIG_USB_NET_PLUSB is not set
991CONFIG_USB_AN2720=y 1032# CONFIG_USB_NET_RNDIS_HOST is not set
992CONFIG_USB_BELKIN=y 1033# CONFIG_USB_NET_CDC_SUBSET is not set
993CONFIG_USB_GENESYS=y 1034# CONFIG_USB_NET_ZAURUS is not set
994CONFIG_USB_NET1080=y
995CONFIG_USB_PL2301=y
996CONFIG_USB_KC2190=y
997
998#
999# Intelligent USB Devices/Gadgets
1000#
1001CONFIG_USB_ARMLINUX=y
1002CONFIG_USB_EPSON2888=y
1003CONFIG_USB_ZAURUS=y
1004CONFIG_USB_CDCETHER=y
1005
1006#
1007# USB Network Adapters
1008#
1009CONFIG_USB_AX8817X=y
1010CONFIG_USB_MON=y 1035CONFIG_USB_MON=y
1011 1036
1012# 1037#
@@ -1124,16 +1149,12 @@ CONFIG_REISERFS_FS_POSIX_ACL=y
1124CONFIG_REISERFS_FS_SECURITY=y 1149CONFIG_REISERFS_FS_SECURITY=y
1125# CONFIG_JFS_FS is not set 1150# CONFIG_JFS_FS is not set
1126CONFIG_FS_POSIX_ACL=y 1151CONFIG_FS_POSIX_ACL=y
1127
1128#
1129# XFS support
1130#
1131CONFIG_XFS_FS=m 1152CONFIG_XFS_FS=m
1132CONFIG_XFS_EXPORT=y 1153CONFIG_XFS_EXPORT=y
1133# CONFIG_XFS_RT is not set
1134# CONFIG_XFS_QUOTA is not set 1154# CONFIG_XFS_QUOTA is not set
1135CONFIG_XFS_SECURITY=y 1155CONFIG_XFS_SECURITY=y
1136CONFIG_XFS_POSIX_ACL=y 1156CONFIG_XFS_POSIX_ACL=y
1157# CONFIG_XFS_RT is not set
1137# CONFIG_MINIX_FS is not set 1158# CONFIG_MINIX_FS is not set
1138# CONFIG_ROMFS_FS is not set 1159# CONFIG_ROMFS_FS is not set
1139CONFIG_INOTIFY=y 1160CONFIG_INOTIFY=y
@@ -1141,6 +1162,7 @@ CONFIG_INOTIFY=y
1141CONFIG_DNOTIFY=y 1162CONFIG_DNOTIFY=y
1142CONFIG_AUTOFS_FS=m 1163CONFIG_AUTOFS_FS=m
1143# CONFIG_AUTOFS4_FS is not set 1164# CONFIG_AUTOFS4_FS is not set
1165# CONFIG_FUSE_FS is not set
1144 1166
1145# 1167#
1146# CD-ROM/DVD Filesystems 1168# CD-ROM/DVD Filesystems
@@ -1168,14 +1190,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
1168CONFIG_PROC_FS=y 1190CONFIG_PROC_FS=y
1169CONFIG_PROC_KCORE=y 1191CONFIG_PROC_KCORE=y
1170CONFIG_SYSFS=y 1192CONFIG_SYSFS=y
1171CONFIG_DEVPTS_FS_XATTR=y
1172# CONFIG_DEVPTS_FS_SECURITY is not set
1173CONFIG_TMPFS=y 1193CONFIG_TMPFS=y
1174CONFIG_TMPFS_XATTR=y
1175CONFIG_TMPFS_SECURITY=y
1176CONFIG_HUGETLBFS=y 1194CONFIG_HUGETLBFS=y
1177CONFIG_HUGETLB_PAGE=y 1195CONFIG_HUGETLB_PAGE=y
1178CONFIG_RAMFS=y 1196CONFIG_RAMFS=y
1197# CONFIG_RELAYFS_FS is not set
1179 1198
1180# 1199#
1181# Miscellaneous filesystems 1200# Miscellaneous filesystems
@@ -1225,6 +1244,7 @@ CONFIG_CIFS=m
1225# CONFIG_NCP_FS is not set 1244# CONFIG_NCP_FS is not set
1226# CONFIG_CODA_FS is not set 1245# CONFIG_CODA_FS is not set
1227# CONFIG_AFS_FS is not set 1246# CONFIG_AFS_FS is not set
1247# CONFIG_9P_FS is not set
1228 1248
1229# 1249#
1230# Partition Types 1250# Partition Types
@@ -1303,6 +1323,7 @@ CONFIG_OPROFILE=y
1303CONFIG_DEBUG_KERNEL=y 1323CONFIG_DEBUG_KERNEL=y
1304CONFIG_MAGIC_SYSRQ=y 1324CONFIG_MAGIC_SYSRQ=y
1305CONFIG_LOG_BUF_SHIFT=17 1325CONFIG_LOG_BUF_SHIFT=17
1326CONFIG_DETECT_SOFTLOCKUP=y
1306# CONFIG_SCHEDSTATS is not set 1327# CONFIG_SCHEDSTATS is not set
1307# CONFIG_DEBUG_SLAB is not set 1328# CONFIG_DEBUG_SLAB is not set
1308# CONFIG_DEBUG_SPINLOCK is not set 1329# CONFIG_DEBUG_SPINLOCK is not set
@@ -1360,7 +1381,12 @@ CONFIG_CRYPTO_TEST=m
1360# Library routines 1381# Library routines
1361# 1382#
1362CONFIG_CRC_CCITT=m 1383CONFIG_CRC_CCITT=m
1384# CONFIG_CRC16 is not set
1363CONFIG_CRC32=y 1385CONFIG_CRC32=y
1364CONFIG_LIBCRC32C=m 1386CONFIG_LIBCRC32C=m
1365CONFIG_ZLIB_INFLATE=y 1387CONFIG_ZLIB_INFLATE=y
1366CONFIG_ZLIB_DEFLATE=m 1388CONFIG_ZLIB_DEFLATE=m
1389CONFIG_TEXTSEARCH=y
1390CONFIG_TEXTSEARCH_KMP=m
1391CONFIG_TEXTSEARCH_BM=m
1392CONFIG_TEXTSEARCH_FSM=m
diff --git a/arch/ppc64/configs/iSeries_defconfig b/arch/ppc64/configs/iSeries_defconfig
index 013d4e0e4003..62e92c7e9e27 100644
--- a/arch/ppc64/configs/iSeries_defconfig
+++ b/arch/ppc64/configs/iSeries_defconfig
@@ -1,17 +1,17 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.13-rc6 3# Linux kernel version: 2.6.14-rc4
4# Mon Aug 8 14:17:02 2005 4# Thu Oct 20 08:30:56 2005
5# 5#
6CONFIG_64BIT=y 6CONFIG_64BIT=y
7CONFIG_MMU=y 7CONFIG_MMU=y
8CONFIG_RWSEM_XCHGADD_ALGORITHM=y 8CONFIG_RWSEM_XCHGADD_ALGORITHM=y
9CONFIG_GENERIC_CALIBRATE_DELAY=y 9CONFIG_GENERIC_CALIBRATE_DELAY=y
10CONFIG_GENERIC_ISA_DMA=y 10CONFIG_GENERIC_ISA_DMA=y
11CONFIG_HAVE_DEC_LOCK=y
12CONFIG_EARLY_PRINTK=y 11CONFIG_EARLY_PRINTK=y
13CONFIG_COMPAT=y 12CONFIG_COMPAT=y
14CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 13CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
14CONFIG_ARCH_MAY_HAVE_PC_FDC=y
15CONFIG_FORCE_MAX_ZONEORDER=13 15CONFIG_FORCE_MAX_ZONEORDER=13
16 16
17# 17#
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32
26# General setup 26# General setup
27# 27#
28CONFIG_LOCALVERSION="" 28CONFIG_LOCALVERSION=""
29CONFIG_LOCALVERSION_AUTO=y
29CONFIG_SWAP=y 30CONFIG_SWAP=y
30CONFIG_SYSVIPC=y 31CONFIG_SYSVIPC=y
31CONFIG_POSIX_MQUEUE=y 32CONFIG_POSIX_MQUEUE=y
@@ -38,6 +39,7 @@ CONFIG_KOBJECT_UEVENT=y
38CONFIG_IKCONFIG=y 39CONFIG_IKCONFIG=y
39CONFIG_IKCONFIG_PROC=y 40CONFIG_IKCONFIG_PROC=y
40# CONFIG_CPUSETS is not set 41# CONFIG_CPUSETS is not set
42CONFIG_INITRAMFS_SOURCE=""
41# CONFIG_EMBEDDED is not set 43# CONFIG_EMBEDDED is not set
42CONFIG_KALLSYMS=y 44CONFIG_KALLSYMS=y
43# CONFIG_KALLSYMS_ALL is not set 45# CONFIG_KALLSYMS_ALL is not set
@@ -88,6 +90,7 @@ CONFIG_FLATMEM_MANUAL=y
88# CONFIG_SPARSEMEM_MANUAL is not set 90# CONFIG_SPARSEMEM_MANUAL is not set
89CONFIG_FLATMEM=y 91CONFIG_FLATMEM=y
90CONFIG_FLAT_NODE_MEM_MAP=y 92CONFIG_FLAT_NODE_MEM_MAP=y
93# CONFIG_SPARSEMEM_STATIC is not set
91# CONFIG_NUMA is not set 94# CONFIG_NUMA is not set
92# CONFIG_SCHED_SMT is not set 95# CONFIG_SCHED_SMT is not set
93CONFIG_PREEMPT_NONE=y 96CONFIG_PREEMPT_NONE=y
@@ -101,17 +104,16 @@ CONFIG_HZ=250
101CONFIG_GENERIC_HARDIRQS=y 104CONFIG_GENERIC_HARDIRQS=y
102CONFIG_LPARCFG=y 105CONFIG_LPARCFG=y
103CONFIG_SECCOMP=y 106CONFIG_SECCOMP=y
107CONFIG_BINFMT_ELF=y
108# CONFIG_BINFMT_MISC is not set
104CONFIG_ISA_DMA_API=y 109CONFIG_ISA_DMA_API=y
105 110
106# 111#
107# General setup 112# Bus Options
108# 113#
109CONFIG_PCI=y 114CONFIG_PCI=y
110CONFIG_PCI_DOMAINS=y 115CONFIG_PCI_DOMAINS=y
111CONFIG_BINFMT_ELF=y
112# CONFIG_BINFMT_MISC is not set
113CONFIG_PCI_LEGACY_PROC=y 116CONFIG_PCI_LEGACY_PROC=y
114CONFIG_PCI_NAMES=y
115# CONFIG_PCI_DEBUG is not set 117# CONFIG_PCI_DEBUG is not set
116 118
117# 119#
@@ -152,8 +154,8 @@ CONFIG_INET_AH=m
152CONFIG_INET_ESP=m 154CONFIG_INET_ESP=m
153CONFIG_INET_IPCOMP=m 155CONFIG_INET_IPCOMP=m
154CONFIG_INET_TUNNEL=y 156CONFIG_INET_TUNNEL=y
155CONFIG_IP_TCPDIAG=m 157CONFIG_INET_DIAG=y
156# CONFIG_IP_TCPDIAG_IPV6 is not set 158CONFIG_INET_TCP_DIAG=y
157# CONFIG_TCP_CONG_ADVANCED is not set 159# CONFIG_TCP_CONG_ADVANCED is not set
158CONFIG_TCP_CONG_BIC=y 160CONFIG_TCP_CONG_BIC=y
159 161
@@ -164,6 +166,7 @@ CONFIG_TCP_CONG_BIC=y
164# CONFIG_IPV6 is not set 166# CONFIG_IPV6 is not set
165CONFIG_NETFILTER=y 167CONFIG_NETFILTER=y
166# CONFIG_NETFILTER_DEBUG is not set 168# CONFIG_NETFILTER_DEBUG is not set
169# CONFIG_NETFILTER_NETLINK is not set
167 170
168# 171#
169# IP: Netfilter Configuration 172# IP: Netfilter Configuration
@@ -171,11 +174,14 @@ CONFIG_NETFILTER=y
171CONFIG_IP_NF_CONNTRACK=m 174CONFIG_IP_NF_CONNTRACK=m
172CONFIG_IP_NF_CT_ACCT=y 175CONFIG_IP_NF_CT_ACCT=y
173CONFIG_IP_NF_CONNTRACK_MARK=y 176CONFIG_IP_NF_CONNTRACK_MARK=y
177CONFIG_IP_NF_CONNTRACK_EVENTS=y
174CONFIG_IP_NF_CT_PROTO_SCTP=m 178CONFIG_IP_NF_CT_PROTO_SCTP=m
175CONFIG_IP_NF_FTP=m 179CONFIG_IP_NF_FTP=m
176CONFIG_IP_NF_IRC=m 180CONFIG_IP_NF_IRC=m
181# CONFIG_IP_NF_NETBIOS_NS is not set
177CONFIG_IP_NF_TFTP=m 182CONFIG_IP_NF_TFTP=m
178CONFIG_IP_NF_AMANDA=m 183CONFIG_IP_NF_AMANDA=m
184# CONFIG_IP_NF_PPTP is not set
179CONFIG_IP_NF_QUEUE=m 185CONFIG_IP_NF_QUEUE=m
180CONFIG_IP_NF_IPTABLES=m 186CONFIG_IP_NF_IPTABLES=m
181CONFIG_IP_NF_MATCH_LIMIT=m 187CONFIG_IP_NF_MATCH_LIMIT=m
@@ -199,14 +205,18 @@ CONFIG_IP_NF_MATCH_OWNER=m
199CONFIG_IP_NF_MATCH_ADDRTYPE=m 205CONFIG_IP_NF_MATCH_ADDRTYPE=m
200CONFIG_IP_NF_MATCH_REALM=m 206CONFIG_IP_NF_MATCH_REALM=m
201CONFIG_IP_NF_MATCH_SCTP=m 207CONFIG_IP_NF_MATCH_SCTP=m
208# CONFIG_IP_NF_MATCH_DCCP is not set
202CONFIG_IP_NF_MATCH_COMMENT=m 209CONFIG_IP_NF_MATCH_COMMENT=m
203CONFIG_IP_NF_MATCH_CONNMARK=m 210CONFIG_IP_NF_MATCH_CONNMARK=m
211CONFIG_IP_NF_MATCH_CONNBYTES=m
204CONFIG_IP_NF_MATCH_HASHLIMIT=m 212CONFIG_IP_NF_MATCH_HASHLIMIT=m
213CONFIG_IP_NF_MATCH_STRING=m
205CONFIG_IP_NF_FILTER=m 214CONFIG_IP_NF_FILTER=m
206CONFIG_IP_NF_TARGET_REJECT=m 215CONFIG_IP_NF_TARGET_REJECT=m
207CONFIG_IP_NF_TARGET_LOG=m 216CONFIG_IP_NF_TARGET_LOG=m
208CONFIG_IP_NF_TARGET_ULOG=m 217CONFIG_IP_NF_TARGET_ULOG=m
209CONFIG_IP_NF_TARGET_TCPMSS=m 218CONFIG_IP_NF_TARGET_TCPMSS=m
219CONFIG_IP_NF_TARGET_NFQUEUE=m
210CONFIG_IP_NF_NAT=m 220CONFIG_IP_NF_NAT=m
211CONFIG_IP_NF_NAT_NEEDED=y 221CONFIG_IP_NF_NAT_NEEDED=y
212CONFIG_IP_NF_TARGET_MASQUERADE=m 222CONFIG_IP_NF_TARGET_MASQUERADE=m
@@ -224,6 +234,7 @@ CONFIG_IP_NF_TARGET_ECN=m
224CONFIG_IP_NF_TARGET_DSCP=m 234CONFIG_IP_NF_TARGET_DSCP=m
225CONFIG_IP_NF_TARGET_MARK=m 235CONFIG_IP_NF_TARGET_MARK=m
226CONFIG_IP_NF_TARGET_CLASSIFY=m 236CONFIG_IP_NF_TARGET_CLASSIFY=m
237CONFIG_IP_NF_TARGET_TTL=m
227CONFIG_IP_NF_TARGET_CONNMARK=m 238CONFIG_IP_NF_TARGET_CONNMARK=m
228CONFIG_IP_NF_TARGET_CLUSTERIP=m 239CONFIG_IP_NF_TARGET_CLUSTERIP=m
229CONFIG_IP_NF_RAW=m 240CONFIG_IP_NF_RAW=m
@@ -233,6 +244,11 @@ CONFIG_IP_NF_ARPFILTER=m
233CONFIG_IP_NF_ARP_MANGLE=m 244CONFIG_IP_NF_ARP_MANGLE=m
234 245
235# 246#
247# DCCP Configuration (EXPERIMENTAL)
248#
249# CONFIG_IP_DCCP is not set
250
251#
236# SCTP Configuration (EXPERIMENTAL) 252# SCTP Configuration (EXPERIMENTAL)
237# 253#
238# CONFIG_IP_SCTP is not set 254# CONFIG_IP_SCTP is not set
@@ -259,6 +275,7 @@ CONFIG_NET_CLS_ROUTE=y
259# CONFIG_HAMRADIO is not set 275# CONFIG_HAMRADIO is not set
260# CONFIG_IRDA is not set 276# CONFIG_IRDA is not set
261# CONFIG_BT is not set 277# CONFIG_BT is not set
278# CONFIG_IEEE80211 is not set
262 279
263# 280#
264# Device Drivers 281# Device Drivers
@@ -273,6 +290,11 @@ CONFIG_FW_LOADER=m
273# CONFIG_DEBUG_DRIVER is not set 290# CONFIG_DEBUG_DRIVER is not set
274 291
275# 292#
293# Connector - unified userspace <-> kernelspace linker
294#
295# CONFIG_CONNECTOR is not set
296
297#
276# Memory Technology Devices (MTD) 298# Memory Technology Devices (MTD)
277# 299#
278# CONFIG_MTD is not set 300# CONFIG_MTD is not set
@@ -303,7 +325,6 @@ CONFIG_BLK_DEV_RAM=y
303CONFIG_BLK_DEV_RAM_COUNT=16 325CONFIG_BLK_DEV_RAM_COUNT=16
304CONFIG_BLK_DEV_RAM_SIZE=65536 326CONFIG_BLK_DEV_RAM_SIZE=65536
305CONFIG_BLK_DEV_INITRD=y 327CONFIG_BLK_DEV_INITRD=y
306CONFIG_INITRAMFS_SOURCE=""
307# CONFIG_CDROM_PKTCDVD is not set 328# CONFIG_CDROM_PKTCDVD is not set
308 329
309# 330#
@@ -323,6 +344,7 @@ CONFIG_IOSCHED_CFQ=y
323# 344#
324# SCSI device support 345# SCSI device support
325# 346#
347# CONFIG_RAID_ATTRS is not set
326CONFIG_SCSI=y 348CONFIG_SCSI=y
327CONFIG_SCSI_PROC_FS=y 349CONFIG_SCSI_PROC_FS=y
328 350
@@ -350,6 +372,7 @@ CONFIG_SCSI_CONSTANTS=y
350CONFIG_SCSI_SPI_ATTRS=y 372CONFIG_SCSI_SPI_ATTRS=y
351CONFIG_SCSI_FC_ATTRS=y 373CONFIG_SCSI_FC_ATTRS=y
352# CONFIG_SCSI_ISCSI_ATTRS is not set 374# CONFIG_SCSI_ISCSI_ATTRS is not set
375# CONFIG_SCSI_SAS_ATTRS is not set
353 376
354# 377#
355# SCSI low-level drivers 378# SCSI low-level drivers
@@ -363,6 +386,7 @@ CONFIG_SCSI_FC_ATTRS=y
363# CONFIG_SCSI_AIC79XX is not set 386# CONFIG_SCSI_AIC79XX is not set
364# CONFIG_MEGARAID_NEWGEN is not set 387# CONFIG_MEGARAID_NEWGEN is not set
365# CONFIG_MEGARAID_LEGACY is not set 388# CONFIG_MEGARAID_LEGACY is not set
389# CONFIG_MEGARAID_SAS is not set
366# CONFIG_SCSI_SATA is not set 390# CONFIG_SCSI_SATA is not set
367# CONFIG_SCSI_BUSLOGIC is not set 391# CONFIG_SCSI_BUSLOGIC is not set
368# CONFIG_SCSI_DMX3191D is not set 392# CONFIG_SCSI_DMX3191D is not set
@@ -415,6 +439,7 @@ CONFIG_DM_ZERO=m
415# CONFIG_FUSION is not set 439# CONFIG_FUSION is not set
416# CONFIG_FUSION_SPI is not set 440# CONFIG_FUSION_SPI is not set
417# CONFIG_FUSION_FC is not set 441# CONFIG_FUSION_FC is not set
442# CONFIG_FUSION_SAS is not set
418 443
419# 444#
420# IEEE 1394 (FireWire) support 445# IEEE 1394 (FireWire) support
@@ -445,12 +470,18 @@ CONFIG_TUN=m
445# CONFIG_ARCNET is not set 470# CONFIG_ARCNET is not set
446 471
447# 472#
473# PHY device support
474#
475# CONFIG_PHYLIB is not set
476
477#
448# Ethernet (10 or 100Mbit) 478# Ethernet (10 or 100Mbit)
449# 479#
450CONFIG_NET_ETHERNET=y 480CONFIG_NET_ETHERNET=y
451CONFIG_MII=y 481CONFIG_MII=y
452# CONFIG_HAPPYMEAL is not set 482# CONFIG_HAPPYMEAL is not set
453# CONFIG_SUNGEM is not set 483# CONFIG_SUNGEM is not set
484# CONFIG_CASSINI is not set
454# CONFIG_NET_VENDOR_3COM is not set 485# CONFIG_NET_VENDOR_3COM is not set
455 486
456# 487#
@@ -489,6 +520,7 @@ CONFIG_E1000=m
489# CONFIG_HAMACHI is not set 520# CONFIG_HAMACHI is not set
490# CONFIG_YELLOWFIN is not set 521# CONFIG_YELLOWFIN is not set
491# CONFIG_R8169 is not set 522# CONFIG_R8169 is not set
523# CONFIG_SIS190 is not set
492# CONFIG_SKGE is not set 524# CONFIG_SKGE is not set
493# CONFIG_SK98LIN is not set 525# CONFIG_SK98LIN is not set
494# CONFIG_VIA_VELOCITY is not set 526# CONFIG_VIA_VELOCITY is not set
@@ -498,6 +530,7 @@ CONFIG_E1000=m
498# 530#
499# Ethernet (10000 Mbit) 531# Ethernet (10000 Mbit)
500# 532#
533# CONFIG_CHELSIO_T1 is not set
501# CONFIG_IXGB is not set 534# CONFIG_IXGB is not set
502# CONFIG_S2IO is not set 535# CONFIG_S2IO is not set
503 536
@@ -632,7 +665,6 @@ CONFIG_MAX_RAW_DEVS=256
632# I2C support 665# I2C support
633# 666#
634# CONFIG_I2C is not set 667# CONFIG_I2C is not set
635# CONFIG_I2C_SENSOR is not set
636 668
637# 669#
638# Dallas's 1-wire bus 670# Dallas's 1-wire bus
@@ -643,12 +675,17 @@ CONFIG_MAX_RAW_DEVS=256
643# Hardware Monitoring support 675# Hardware Monitoring support
644# 676#
645# CONFIG_HWMON is not set 677# CONFIG_HWMON is not set
678# CONFIG_HWMON_VID is not set
646 679
647# 680#
648# Misc devices 681# Misc devices
649# 682#
650 683
651# 684#
685# Multimedia Capabilities Port drivers
686#
687
688#
652# Multimedia devices 689# Multimedia devices
653# 690#
654# CONFIG_VIDEO_DEV is not set 691# CONFIG_VIDEO_DEV is not set
@@ -722,16 +759,12 @@ CONFIG_JFS_SECURITY=y
722# CONFIG_JFS_DEBUG is not set 759# CONFIG_JFS_DEBUG is not set
723# CONFIG_JFS_STATISTICS is not set 760# CONFIG_JFS_STATISTICS is not set
724CONFIG_FS_POSIX_ACL=y 761CONFIG_FS_POSIX_ACL=y
725
726#
727# XFS support
728#
729CONFIG_XFS_FS=m 762CONFIG_XFS_FS=m
730CONFIG_XFS_EXPORT=y 763CONFIG_XFS_EXPORT=y
731# CONFIG_XFS_RT is not set
732# CONFIG_XFS_QUOTA is not set 764# CONFIG_XFS_QUOTA is not set
733CONFIG_XFS_SECURITY=y 765CONFIG_XFS_SECURITY=y
734CONFIG_XFS_POSIX_ACL=y 766CONFIG_XFS_POSIX_ACL=y
767# CONFIG_XFS_RT is not set
735# CONFIG_MINIX_FS is not set 768# CONFIG_MINIX_FS is not set
736# CONFIG_ROMFS_FS is not set 769# CONFIG_ROMFS_FS is not set
737CONFIG_INOTIFY=y 770CONFIG_INOTIFY=y
@@ -739,6 +772,7 @@ CONFIG_INOTIFY=y
739CONFIG_DNOTIFY=y 772CONFIG_DNOTIFY=y
740CONFIG_AUTOFS_FS=m 773CONFIG_AUTOFS_FS=m
741# CONFIG_AUTOFS4_FS is not set 774# CONFIG_AUTOFS4_FS is not set
775# CONFIG_FUSE_FS is not set
742 776
743# 777#
744# CD-ROM/DVD Filesystems 778# CD-ROM/DVD Filesystems
@@ -766,14 +800,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
766CONFIG_PROC_FS=y 800CONFIG_PROC_FS=y
767CONFIG_PROC_KCORE=y 801CONFIG_PROC_KCORE=y
768CONFIG_SYSFS=y 802CONFIG_SYSFS=y
769CONFIG_DEVPTS_FS_XATTR=y
770CONFIG_DEVPTS_FS_SECURITY=y
771CONFIG_TMPFS=y 803CONFIG_TMPFS=y
772CONFIG_TMPFS_XATTR=y
773CONFIG_TMPFS_SECURITY=y
774# CONFIG_HUGETLBFS is not set 804# CONFIG_HUGETLBFS is not set
775# CONFIG_HUGETLB_PAGE is not set 805# CONFIG_HUGETLB_PAGE is not set
776CONFIG_RAMFS=y 806CONFIG_RAMFS=y
807# CONFIG_RELAYFS_FS is not set
777 808
778# 809#
779# Miscellaneous filesystems 810# Miscellaneous filesystems
@@ -824,6 +855,7 @@ CONFIG_CIFS_POSIX=y
824# CONFIG_NCP_FS is not set 855# CONFIG_NCP_FS is not set
825# CONFIG_CODA_FS is not set 856# CONFIG_CODA_FS is not set
826# CONFIG_AFS_FS is not set 857# CONFIG_AFS_FS is not set
858# CONFIG_9P_FS is not set
827 859
828# 860#
829# Partition Types 861# Partition Types
@@ -897,6 +929,7 @@ CONFIG_OPROFILE=y
897CONFIG_DEBUG_KERNEL=y 929CONFIG_DEBUG_KERNEL=y
898CONFIG_MAGIC_SYSRQ=y 930CONFIG_MAGIC_SYSRQ=y
899CONFIG_LOG_BUF_SHIFT=17 931CONFIG_LOG_BUF_SHIFT=17
932CONFIG_DETECT_SOFTLOCKUP=y
900# CONFIG_SCHEDSTATS is not set 933# CONFIG_SCHEDSTATS is not set
901# CONFIG_DEBUG_SLAB is not set 934# CONFIG_DEBUG_SLAB is not set
902# CONFIG_DEBUG_SPINLOCK is not set 935# CONFIG_DEBUG_SPINLOCK is not set
@@ -954,7 +987,12 @@ CONFIG_CRYPTO_TEST=m
954# Library routines 987# Library routines
955# 988#
956CONFIG_CRC_CCITT=m 989CONFIG_CRC_CCITT=m
990# CONFIG_CRC16 is not set
957CONFIG_CRC32=y 991CONFIG_CRC32=y
958CONFIG_LIBCRC32C=m 992CONFIG_LIBCRC32C=m
959CONFIG_ZLIB_INFLATE=y 993CONFIG_ZLIB_INFLATE=y
960CONFIG_ZLIB_DEFLATE=m 994CONFIG_ZLIB_DEFLATE=m
995CONFIG_TEXTSEARCH=y
996CONFIG_TEXTSEARCH_KMP=m
997CONFIG_TEXTSEARCH_BM=m
998CONFIG_TEXTSEARCH_FSM=m
diff --git a/arch/ppc64/configs/maple_defconfig b/arch/ppc64/configs/maple_defconfig
index dd42892cd873..7b480f3d1406 100644
--- a/arch/ppc64/configs/maple_defconfig
+++ b/arch/ppc64/configs/maple_defconfig
@@ -1,17 +1,17 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.13-rc6 3# Linux kernel version: 2.6.14-rc4
4# Mon Aug 8 14:17:04 2005 4# Thu Oct 20 08:31:24 2005
5# 5#
6CONFIG_64BIT=y 6CONFIG_64BIT=y
7CONFIG_MMU=y 7CONFIG_MMU=y
8CONFIG_RWSEM_XCHGADD_ALGORITHM=y 8CONFIG_RWSEM_XCHGADD_ALGORITHM=y
9CONFIG_GENERIC_CALIBRATE_DELAY=y 9CONFIG_GENERIC_CALIBRATE_DELAY=y
10CONFIG_GENERIC_ISA_DMA=y 10CONFIG_GENERIC_ISA_DMA=y
11CONFIG_HAVE_DEC_LOCK=y
12CONFIG_EARLY_PRINTK=y 11CONFIG_EARLY_PRINTK=y
13CONFIG_COMPAT=y 12CONFIG_COMPAT=y
14CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 13CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
14CONFIG_ARCH_MAY_HAVE_PC_FDC=y
15CONFIG_FORCE_MAX_ZONEORDER=13 15CONFIG_FORCE_MAX_ZONEORDER=13
16 16
17# 17#
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32
26# General setup 26# General setup
27# 27#
28CONFIG_LOCALVERSION="" 28CONFIG_LOCALVERSION=""
29CONFIG_LOCALVERSION_AUTO=y
29CONFIG_SWAP=y 30CONFIG_SWAP=y
30CONFIG_SYSVIPC=y 31CONFIG_SYSVIPC=y
31CONFIG_POSIX_MQUEUE=y 32CONFIG_POSIX_MQUEUE=y
@@ -37,6 +38,7 @@ CONFIG_KOBJECT_UEVENT=y
37CONFIG_IKCONFIG=y 38CONFIG_IKCONFIG=y
38CONFIG_IKCONFIG_PROC=y 39CONFIG_IKCONFIG_PROC=y
39# CONFIG_CPUSETS is not set 40# CONFIG_CPUSETS is not set
41CONFIG_INITRAMFS_SOURCE=""
40# CONFIG_EMBEDDED is not set 42# CONFIG_EMBEDDED is not set
41CONFIG_KALLSYMS=y 43CONFIG_KALLSYMS=y
42CONFIG_KALLSYMS_ALL=y 44CONFIG_KALLSYMS_ALL=y
@@ -97,6 +99,7 @@ CONFIG_FLATMEM_MANUAL=y
97# CONFIG_SPARSEMEM_MANUAL is not set 99# CONFIG_SPARSEMEM_MANUAL is not set
98CONFIG_FLATMEM=y 100CONFIG_FLATMEM=y
99CONFIG_FLAT_NODE_MEM_MAP=y 101CONFIG_FLAT_NODE_MEM_MAP=y
102# CONFIG_SPARSEMEM_STATIC is not set
100# CONFIG_NUMA is not set 103# CONFIG_NUMA is not set
101# CONFIG_SCHED_SMT is not set 104# CONFIG_SCHED_SMT is not set
102CONFIG_PREEMPT_NONE=y 105CONFIG_PREEMPT_NONE=y
@@ -109,17 +112,18 @@ CONFIG_HZ_250=y
109CONFIG_HZ=250 112CONFIG_HZ=250
110CONFIG_GENERIC_HARDIRQS=y 113CONFIG_GENERIC_HARDIRQS=y
111CONFIG_SECCOMP=y 114CONFIG_SECCOMP=y
115CONFIG_BINFMT_ELF=y
116# CONFIG_BINFMT_MISC is not set
117CONFIG_PROC_DEVICETREE=y
118# CONFIG_CMDLINE_BOOL is not set
112CONFIG_ISA_DMA_API=y 119CONFIG_ISA_DMA_API=y
113 120
114# 121#
115# General setup 122# Bus Options
116# 123#
117CONFIG_PCI=y 124CONFIG_PCI=y
118CONFIG_PCI_DOMAINS=y 125CONFIG_PCI_DOMAINS=y
119CONFIG_BINFMT_ELF=y
120# CONFIG_BINFMT_MISC is not set
121CONFIG_PCI_LEGACY_PROC=y 126CONFIG_PCI_LEGACY_PROC=y
122CONFIG_PCI_NAMES=y
123# CONFIG_PCI_DEBUG is not set 127# CONFIG_PCI_DEBUG is not set
124 128
125# 129#
@@ -131,8 +135,6 @@ CONFIG_PCI_NAMES=y
131# PCI Hotplug Support 135# PCI Hotplug Support
132# 136#
133# CONFIG_HOTPLUG_PCI is not set 137# CONFIG_HOTPLUG_PCI is not set
134CONFIG_PROC_DEVICETREE=y
135# CONFIG_CMDLINE_BOOL is not set
136 138
137# 139#
138# Networking 140# Networking
@@ -163,14 +165,19 @@ CONFIG_IP_PNP_DHCP=y
163# CONFIG_INET_ESP is not set 165# CONFIG_INET_ESP is not set
164# CONFIG_INET_IPCOMP is not set 166# CONFIG_INET_IPCOMP is not set
165# CONFIG_INET_TUNNEL is not set 167# CONFIG_INET_TUNNEL is not set
166CONFIG_IP_TCPDIAG=y 168CONFIG_INET_DIAG=y
167# CONFIG_IP_TCPDIAG_IPV6 is not set 169CONFIG_INET_TCP_DIAG=y
168# CONFIG_TCP_CONG_ADVANCED is not set 170# CONFIG_TCP_CONG_ADVANCED is not set
169CONFIG_TCP_CONG_BIC=y 171CONFIG_TCP_CONG_BIC=y
170# CONFIG_IPV6 is not set 172# CONFIG_IPV6 is not set
171# CONFIG_NETFILTER is not set 173# CONFIG_NETFILTER is not set
172 174
173# 175#
176# DCCP Configuration (EXPERIMENTAL)
177#
178# CONFIG_IP_DCCP is not set
179
180#
174# SCTP Configuration (EXPERIMENTAL) 181# SCTP Configuration (EXPERIMENTAL)
175# 182#
176# CONFIG_IP_SCTP is not set 183# CONFIG_IP_SCTP is not set
@@ -196,6 +203,7 @@ CONFIG_TCP_CONG_BIC=y
196# CONFIG_HAMRADIO is not set 203# CONFIG_HAMRADIO is not set
197# CONFIG_IRDA is not set 204# CONFIG_IRDA is not set
198# CONFIG_BT is not set 205# CONFIG_BT is not set
206# CONFIG_IEEE80211 is not set
199 207
200# 208#
201# Device Drivers 209# Device Drivers
@@ -210,6 +218,11 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
210# CONFIG_DEBUG_DRIVER is not set 218# CONFIG_DEBUG_DRIVER is not set
211 219
212# 220#
221# Connector - unified userspace <-> kernelspace linker
222#
223# CONFIG_CONNECTOR is not set
224
225#
213# Memory Technology Devices (MTD) 226# Memory Technology Devices (MTD)
214# 227#
215# CONFIG_MTD is not set 228# CONFIG_MTD is not set
@@ -240,7 +253,6 @@ CONFIG_BLK_DEV_RAM=y
240CONFIG_BLK_DEV_RAM_COUNT=16 253CONFIG_BLK_DEV_RAM_COUNT=16
241CONFIG_BLK_DEV_RAM_SIZE=8192 254CONFIG_BLK_DEV_RAM_SIZE=8192
242# CONFIG_BLK_DEV_INITRD is not set 255# CONFIG_BLK_DEV_INITRD is not set
243CONFIG_INITRAMFS_SOURCE=""
244# CONFIG_CDROM_PKTCDVD is not set 256# CONFIG_CDROM_PKTCDVD is not set
245 257
246# 258#
@@ -313,6 +325,7 @@ CONFIG_IDEDMA_AUTO=y
313# 325#
314# SCSI device support 326# SCSI device support
315# 327#
328# CONFIG_RAID_ATTRS is not set
316# CONFIG_SCSI is not set 329# CONFIG_SCSI is not set
317 330
318# 331#
@@ -354,12 +367,18 @@ CONFIG_NETDEVICES=y
354# CONFIG_ARCNET is not set 367# CONFIG_ARCNET is not set
355 368
356# 369#
370# PHY device support
371#
372# CONFIG_PHYLIB is not set
373
374#
357# Ethernet (10 or 100Mbit) 375# Ethernet (10 or 100Mbit)
358# 376#
359CONFIG_NET_ETHERNET=y 377CONFIG_NET_ETHERNET=y
360CONFIG_MII=y 378CONFIG_MII=y
361# CONFIG_HAPPYMEAL is not set 379# CONFIG_HAPPYMEAL is not set
362# CONFIG_SUNGEM is not set 380# CONFIG_SUNGEM is not set
381# CONFIG_CASSINI is not set
363# CONFIG_NET_VENDOR_3COM is not set 382# CONFIG_NET_VENDOR_3COM is not set
364 383
365# 384#
@@ -398,6 +417,7 @@ CONFIG_E1000=y
398# CONFIG_HAMACHI is not set 417# CONFIG_HAMACHI is not set
399# CONFIG_YELLOWFIN is not set 418# CONFIG_YELLOWFIN is not set
400# CONFIG_R8169 is not set 419# CONFIG_R8169 is not set
420# CONFIG_SIS190 is not set
401# CONFIG_SKGE is not set 421# CONFIG_SKGE is not set
402# CONFIG_SK98LIN is not set 422# CONFIG_SK98LIN is not set
403# CONFIG_VIA_VELOCITY is not set 423# CONFIG_VIA_VELOCITY is not set
@@ -408,6 +428,7 @@ CONFIG_E1000=y
408# 428#
409# Ethernet (10000 Mbit) 429# Ethernet (10000 Mbit)
410# 430#
431# CONFIG_CHELSIO_T1 is not set
411# CONFIG_IXGB is not set 432# CONFIG_IXGB is not set
412# CONFIG_S2IO is not set 433# CONFIG_S2IO is not set
413 434
@@ -553,7 +574,6 @@ CONFIG_I2C_AMD8111=y
553# CONFIG_I2C_I801 is not set 574# CONFIG_I2C_I801 is not set
554# CONFIG_I2C_I810 is not set 575# CONFIG_I2C_I810 is not set
555# CONFIG_I2C_PIIX4 is not set 576# CONFIG_I2C_PIIX4 is not set
556# CONFIG_I2C_ISA is not set
557# CONFIG_I2C_NFORCE2 is not set 577# CONFIG_I2C_NFORCE2 is not set
558# CONFIG_I2C_PARPORT_LIGHT is not set 578# CONFIG_I2C_PARPORT_LIGHT is not set
559# CONFIG_I2C_PROSAVAGE is not set 579# CONFIG_I2C_PROSAVAGE is not set
@@ -567,7 +587,6 @@ CONFIG_I2C_AMD8111=y
567# CONFIG_I2C_VIAPRO is not set 587# CONFIG_I2C_VIAPRO is not set
568# CONFIG_I2C_VOODOO3 is not set 588# CONFIG_I2C_VOODOO3 is not set
569# CONFIG_I2C_PCA_ISA is not set 589# CONFIG_I2C_PCA_ISA is not set
570# CONFIG_I2C_SENSOR is not set
571 590
572# 591#
573# Miscellaneous I2C Chip support 592# Miscellaneous I2C Chip support
@@ -594,12 +613,17 @@ CONFIG_I2C_AMD8111=y
594# Hardware Monitoring support 613# Hardware Monitoring support
595# 614#
596# CONFIG_HWMON is not set 615# CONFIG_HWMON is not set
616# CONFIG_HWMON_VID is not set
597 617
598# 618#
599# Misc devices 619# Misc devices
600# 620#
601 621
602# 622#
623# Multimedia Capabilities Port drivers
624#
625
626#
603# Multimedia devices 627# Multimedia devices
604# 628#
605# CONFIG_VIDEO_DEV is not set 629# CONFIG_VIDEO_DEV is not set
@@ -681,9 +705,11 @@ CONFIG_USB_HIDINPUT=y
681# CONFIG_USB_MTOUCH is not set 705# CONFIG_USB_MTOUCH is not set
682# CONFIG_USB_ITMTOUCH is not set 706# CONFIG_USB_ITMTOUCH is not set
683# CONFIG_USB_EGALAX is not set 707# CONFIG_USB_EGALAX is not set
708# CONFIG_USB_YEALINK is not set
684# CONFIG_USB_XPAD is not set 709# CONFIG_USB_XPAD is not set
685# CONFIG_USB_ATI_REMOTE is not set 710# CONFIG_USB_ATI_REMOTE is not set
686# CONFIG_USB_KEYSPAN_REMOTE is not set 711# CONFIG_USB_KEYSPAN_REMOTE is not set
712# CONFIG_USB_APPLETOUCH is not set
687 713
688# 714#
689# USB Imaging devices 715# USB Imaging devices
@@ -814,10 +840,6 @@ CONFIG_JBD=y
814# CONFIG_REISERFS_FS is not set 840# CONFIG_REISERFS_FS is not set
815# CONFIG_JFS_FS is not set 841# CONFIG_JFS_FS is not set
816CONFIG_FS_POSIX_ACL=y 842CONFIG_FS_POSIX_ACL=y
817
818#
819# XFS support
820#
821# CONFIG_XFS_FS is not set 843# CONFIG_XFS_FS is not set
822# CONFIG_MINIX_FS is not set 844# CONFIG_MINIX_FS is not set
823# CONFIG_ROMFS_FS is not set 845# CONFIG_ROMFS_FS is not set
@@ -826,6 +848,7 @@ CONFIG_INOTIFY=y
826CONFIG_DNOTIFY=y 848CONFIG_DNOTIFY=y
827# CONFIG_AUTOFS_FS is not set 849# CONFIG_AUTOFS_FS is not set
828# CONFIG_AUTOFS4_FS is not set 850# CONFIG_AUTOFS4_FS is not set
851# CONFIG_FUSE_FS is not set
829 852
830# 853#
831# CD-ROM/DVD Filesystems 854# CD-ROM/DVD Filesystems
@@ -849,14 +872,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
849CONFIG_PROC_FS=y 872CONFIG_PROC_FS=y
850CONFIG_PROC_KCORE=y 873CONFIG_PROC_KCORE=y
851CONFIG_SYSFS=y 874CONFIG_SYSFS=y
852CONFIG_DEVPTS_FS_XATTR=y
853# CONFIG_DEVPTS_FS_SECURITY is not set
854CONFIG_TMPFS=y 875CONFIG_TMPFS=y
855CONFIG_TMPFS_XATTR=y
856CONFIG_TMPFS_SECURITY=y
857CONFIG_HUGETLBFS=y 876CONFIG_HUGETLBFS=y
858CONFIG_HUGETLB_PAGE=y 877CONFIG_HUGETLB_PAGE=y
859CONFIG_RAMFS=y 878CONFIG_RAMFS=y
879# CONFIG_RELAYFS_FS is not set
860 880
861# 881#
862# Miscellaneous filesystems 882# Miscellaneous filesystems
@@ -898,6 +918,7 @@ CONFIG_RPCSEC_GSS_KRB5=y
898# CONFIG_NCP_FS is not set 918# CONFIG_NCP_FS is not set
899# CONFIG_CODA_FS is not set 919# CONFIG_CODA_FS is not set
900# CONFIG_AFS_FS is not set 920# CONFIG_AFS_FS is not set
921# CONFIG_9P_FS is not set
901 922
902# 923#
903# Partition Types 924# Partition Types
@@ -975,6 +996,7 @@ CONFIG_NLS_UTF8=y
975CONFIG_DEBUG_KERNEL=y 996CONFIG_DEBUG_KERNEL=y
976CONFIG_MAGIC_SYSRQ=y 997CONFIG_MAGIC_SYSRQ=y
977CONFIG_LOG_BUF_SHIFT=17 998CONFIG_LOG_BUF_SHIFT=17
999CONFIG_DETECT_SOFTLOCKUP=y
978# CONFIG_SCHEDSTATS is not set 1000# CONFIG_SCHEDSTATS is not set
979CONFIG_DEBUG_SLAB=y 1001CONFIG_DEBUG_SLAB=y
980# CONFIG_DEBUG_SPINLOCK is not set 1002# CONFIG_DEBUG_SPINLOCK is not set
@@ -1034,6 +1056,7 @@ CONFIG_CRYPTO_DES=y
1034# Library routines 1056# Library routines
1035# 1057#
1036CONFIG_CRC_CCITT=y 1058CONFIG_CRC_CCITT=y
1059# CONFIG_CRC16 is not set
1037CONFIG_CRC32=y 1060CONFIG_CRC32=y
1038# CONFIG_LIBCRC32C is not set 1061# CONFIG_LIBCRC32C is not set
1039CONFIG_ZLIB_INFLATE=y 1062CONFIG_ZLIB_INFLATE=y
diff --git a/arch/ppc64/configs/pSeries_defconfig b/arch/ppc64/configs/pSeries_defconfig
index 29f7b80b0efc..9f09dff9e11a 100644
--- a/arch/ppc64/configs/pSeries_defconfig
+++ b/arch/ppc64/configs/pSeries_defconfig
@@ -1,17 +1,17 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.13-rc6 3# Linux kernel version: 2.6.14-rc4
4# Mon Aug 8 14:17:07 2005 4# Thu Oct 20 08:32:17 2005
5# 5#
6CONFIG_64BIT=y 6CONFIG_64BIT=y
7CONFIG_MMU=y 7CONFIG_MMU=y
8CONFIG_RWSEM_XCHGADD_ALGORITHM=y 8CONFIG_RWSEM_XCHGADD_ALGORITHM=y
9CONFIG_GENERIC_CALIBRATE_DELAY=y 9CONFIG_GENERIC_CALIBRATE_DELAY=y
10CONFIG_GENERIC_ISA_DMA=y 10CONFIG_GENERIC_ISA_DMA=y
11CONFIG_HAVE_DEC_LOCK=y
12CONFIG_EARLY_PRINTK=y 11CONFIG_EARLY_PRINTK=y
13CONFIG_COMPAT=y 12CONFIG_COMPAT=y
14CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 13CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
14CONFIG_ARCH_MAY_HAVE_PC_FDC=y
15CONFIG_FORCE_MAX_ZONEORDER=13 15CONFIG_FORCE_MAX_ZONEORDER=13
16 16
17# 17#
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32
26# General setup 26# General setup
27# 27#
28CONFIG_LOCALVERSION="" 28CONFIG_LOCALVERSION=""
29CONFIG_LOCALVERSION_AUTO=y
29CONFIG_SWAP=y 30CONFIG_SWAP=y
30CONFIG_SYSVIPC=y 31CONFIG_SYSVIPC=y
31CONFIG_POSIX_MQUEUE=y 32CONFIG_POSIX_MQUEUE=y
@@ -38,6 +39,7 @@ CONFIG_KOBJECT_UEVENT=y
38CONFIG_IKCONFIG=y 39CONFIG_IKCONFIG=y
39CONFIG_IKCONFIG_PROC=y 40CONFIG_IKCONFIG_PROC=y
40CONFIG_CPUSETS=y 41CONFIG_CPUSETS=y
42CONFIG_INITRAMFS_SOURCE=""
41# CONFIG_EMBEDDED is not set 43# CONFIG_EMBEDDED is not set
42CONFIG_KALLSYMS=y 44CONFIG_KALLSYMS=y
43CONFIG_KALLSYMS_ALL=y 45CONFIG_KALLSYMS_ALL=y
@@ -104,6 +106,7 @@ CONFIG_DISCONTIGMEM_MANUAL=y
104CONFIG_DISCONTIGMEM=y 106CONFIG_DISCONTIGMEM=y
105CONFIG_FLAT_NODE_MEM_MAP=y 107CONFIG_FLAT_NODE_MEM_MAP=y
106CONFIG_NEED_MULTIPLE_NODES=y 108CONFIG_NEED_MULTIPLE_NODES=y
109# CONFIG_SPARSEMEM_STATIC is not set
107CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y 110CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y
108CONFIG_NODES_SPAN_OTHER_NODES=y 111CONFIG_NODES_SPAN_OTHER_NODES=y
109CONFIG_NUMA=y 112CONFIG_NUMA=y
@@ -124,19 +127,20 @@ CONFIG_RTAS_FLASH=m
124CONFIG_SCANLOG=m 127CONFIG_SCANLOG=m
125CONFIG_LPARCFG=y 128CONFIG_LPARCFG=y
126CONFIG_SECCOMP=y 129CONFIG_SECCOMP=y
130CONFIG_BINFMT_ELF=y
131# CONFIG_BINFMT_MISC is not set
132CONFIG_HOTPLUG_CPU=y
133CONFIG_PROC_DEVICETREE=y
134# CONFIG_CMDLINE_BOOL is not set
127CONFIG_ISA_DMA_API=y 135CONFIG_ISA_DMA_API=y
128 136
129# 137#
130# General setup 138# Bus Options
131# 139#
132CONFIG_PCI=y 140CONFIG_PCI=y
133CONFIG_PCI_DOMAINS=y 141CONFIG_PCI_DOMAINS=y
134CONFIG_BINFMT_ELF=y
135# CONFIG_BINFMT_MISC is not set
136CONFIG_PCI_LEGACY_PROC=y 142CONFIG_PCI_LEGACY_PROC=y
137CONFIG_PCI_NAMES=y
138# CONFIG_PCI_DEBUG is not set 143# CONFIG_PCI_DEBUG is not set
139CONFIG_HOTPLUG_CPU=y
140 144
141# 145#
142# PCCARD (PCMCIA/CardBus) support 146# PCCARD (PCMCIA/CardBus) support
@@ -152,8 +156,6 @@ CONFIG_HOTPLUG_PCI=m
152# CONFIG_HOTPLUG_PCI_SHPC is not set 156# CONFIG_HOTPLUG_PCI_SHPC is not set
153CONFIG_HOTPLUG_PCI_RPA=m 157CONFIG_HOTPLUG_PCI_RPA=m
154CONFIG_HOTPLUG_PCI_RPA_DLPAR=m 158CONFIG_HOTPLUG_PCI_RPA_DLPAR=m
155CONFIG_PROC_DEVICETREE=y
156# CONFIG_CMDLINE_BOOL is not set
157 159
158# 160#
159# Networking 161# Networking
@@ -183,8 +185,8 @@ CONFIG_INET_AH=m
183CONFIG_INET_ESP=m 185CONFIG_INET_ESP=m
184CONFIG_INET_IPCOMP=m 186CONFIG_INET_IPCOMP=m
185CONFIG_INET_TUNNEL=y 187CONFIG_INET_TUNNEL=y
186CONFIG_IP_TCPDIAG=m 188CONFIG_INET_DIAG=y
187# CONFIG_IP_TCPDIAG_IPV6 is not set 189CONFIG_INET_TCP_DIAG=y
188# CONFIG_TCP_CONG_ADVANCED is not set 190# CONFIG_TCP_CONG_ADVANCED is not set
189CONFIG_TCP_CONG_BIC=y 191CONFIG_TCP_CONG_BIC=y
190 192
@@ -195,6 +197,9 @@ CONFIG_TCP_CONG_BIC=y
195# CONFIG_IPV6 is not set 197# CONFIG_IPV6 is not set
196CONFIG_NETFILTER=y 198CONFIG_NETFILTER=y
197# CONFIG_NETFILTER_DEBUG is not set 199# CONFIG_NETFILTER_DEBUG is not set
200CONFIG_NETFILTER_NETLINK=y
201CONFIG_NETFILTER_NETLINK_QUEUE=m
202CONFIG_NETFILTER_NETLINK_LOG=m
198 203
199# 204#
200# IP: Netfilter Configuration 205# IP: Netfilter Configuration
@@ -202,11 +207,15 @@ CONFIG_NETFILTER=y
202CONFIG_IP_NF_CONNTRACK=m 207CONFIG_IP_NF_CONNTRACK=m
203CONFIG_IP_NF_CT_ACCT=y 208CONFIG_IP_NF_CT_ACCT=y
204CONFIG_IP_NF_CONNTRACK_MARK=y 209CONFIG_IP_NF_CONNTRACK_MARK=y
210CONFIG_IP_NF_CONNTRACK_EVENTS=y
211CONFIG_IP_NF_CONNTRACK_NETLINK=m
205CONFIG_IP_NF_CT_PROTO_SCTP=m 212CONFIG_IP_NF_CT_PROTO_SCTP=m
206CONFIG_IP_NF_FTP=m 213CONFIG_IP_NF_FTP=m
207CONFIG_IP_NF_IRC=m 214CONFIG_IP_NF_IRC=m
215# CONFIG_IP_NF_NETBIOS_NS is not set
208CONFIG_IP_NF_TFTP=m 216CONFIG_IP_NF_TFTP=m
209CONFIG_IP_NF_AMANDA=m 217CONFIG_IP_NF_AMANDA=m
218# CONFIG_IP_NF_PPTP is not set
210CONFIG_IP_NF_QUEUE=m 219CONFIG_IP_NF_QUEUE=m
211CONFIG_IP_NF_IPTABLES=m 220CONFIG_IP_NF_IPTABLES=m
212CONFIG_IP_NF_MATCH_LIMIT=m 221CONFIG_IP_NF_MATCH_LIMIT=m
@@ -230,14 +239,18 @@ CONFIG_IP_NF_MATCH_OWNER=m
230CONFIG_IP_NF_MATCH_ADDRTYPE=m 239CONFIG_IP_NF_MATCH_ADDRTYPE=m
231CONFIG_IP_NF_MATCH_REALM=m 240CONFIG_IP_NF_MATCH_REALM=m
232CONFIG_IP_NF_MATCH_SCTP=m 241CONFIG_IP_NF_MATCH_SCTP=m
242# CONFIG_IP_NF_MATCH_DCCP is not set
233CONFIG_IP_NF_MATCH_COMMENT=m 243CONFIG_IP_NF_MATCH_COMMENT=m
234CONFIG_IP_NF_MATCH_CONNMARK=m 244CONFIG_IP_NF_MATCH_CONNMARK=m
245CONFIG_IP_NF_MATCH_CONNBYTES=m
235CONFIG_IP_NF_MATCH_HASHLIMIT=m 246CONFIG_IP_NF_MATCH_HASHLIMIT=m
247CONFIG_IP_NF_MATCH_STRING=m
236CONFIG_IP_NF_FILTER=m 248CONFIG_IP_NF_FILTER=m
237CONFIG_IP_NF_TARGET_REJECT=m 249CONFIG_IP_NF_TARGET_REJECT=m
238CONFIG_IP_NF_TARGET_LOG=m 250CONFIG_IP_NF_TARGET_LOG=m
239CONFIG_IP_NF_TARGET_ULOG=m 251CONFIG_IP_NF_TARGET_ULOG=m
240CONFIG_IP_NF_TARGET_TCPMSS=m 252CONFIG_IP_NF_TARGET_TCPMSS=m
253CONFIG_IP_NF_TARGET_NFQUEUE=m
241CONFIG_IP_NF_NAT=m 254CONFIG_IP_NF_NAT=m
242CONFIG_IP_NF_NAT_NEEDED=y 255CONFIG_IP_NF_NAT_NEEDED=y
243CONFIG_IP_NF_TARGET_MASQUERADE=m 256CONFIG_IP_NF_TARGET_MASQUERADE=m
@@ -255,6 +268,7 @@ CONFIG_IP_NF_TARGET_ECN=m
255CONFIG_IP_NF_TARGET_DSCP=m 268CONFIG_IP_NF_TARGET_DSCP=m
256CONFIG_IP_NF_TARGET_MARK=m 269CONFIG_IP_NF_TARGET_MARK=m
257CONFIG_IP_NF_TARGET_CLASSIFY=m 270CONFIG_IP_NF_TARGET_CLASSIFY=m
271CONFIG_IP_NF_TARGET_TTL=m
258CONFIG_IP_NF_TARGET_CONNMARK=m 272CONFIG_IP_NF_TARGET_CONNMARK=m
259CONFIG_IP_NF_TARGET_CLUSTERIP=m 273CONFIG_IP_NF_TARGET_CLUSTERIP=m
260CONFIG_IP_NF_RAW=m 274CONFIG_IP_NF_RAW=m
@@ -264,6 +278,11 @@ CONFIG_IP_NF_ARPFILTER=m
264CONFIG_IP_NF_ARP_MANGLE=m 278CONFIG_IP_NF_ARP_MANGLE=m
265 279
266# 280#
281# DCCP Configuration (EXPERIMENTAL)
282#
283# CONFIG_IP_DCCP is not set
284
285#
267# SCTP Configuration (EXPERIMENTAL) 286# SCTP Configuration (EXPERIMENTAL)
268# 287#
269# CONFIG_IP_SCTP is not set 288# CONFIG_IP_SCTP is not set
@@ -290,6 +309,7 @@ CONFIG_NET_CLS_ROUTE=y
290# CONFIG_HAMRADIO is not set 309# CONFIG_HAMRADIO is not set
291# CONFIG_IRDA is not set 310# CONFIG_IRDA is not set
292# CONFIG_BT is not set 311# CONFIG_BT is not set
312# CONFIG_IEEE80211 is not set
293 313
294# 314#
295# Device Drivers 315# Device Drivers
@@ -304,6 +324,11 @@ CONFIG_FW_LOADER=y
304# CONFIG_DEBUG_DRIVER is not set 324# CONFIG_DEBUG_DRIVER is not set
305 325
306# 326#
327# Connector - unified userspace <-> kernelspace linker
328#
329# CONFIG_CONNECTOR is not set
330
331#
307# Memory Technology Devices (MTD) 332# Memory Technology Devices (MTD)
308# 333#
309# CONFIG_MTD is not set 334# CONFIG_MTD is not set
@@ -342,7 +367,6 @@ CONFIG_BLK_DEV_RAM=y
342CONFIG_BLK_DEV_RAM_COUNT=16 367CONFIG_BLK_DEV_RAM_COUNT=16
343CONFIG_BLK_DEV_RAM_SIZE=65536 368CONFIG_BLK_DEV_RAM_SIZE=65536
344CONFIG_BLK_DEV_INITRD=y 369CONFIG_BLK_DEV_INITRD=y
345CONFIG_INITRAMFS_SOURCE=""
346# CONFIG_CDROM_PKTCDVD is not set 370# CONFIG_CDROM_PKTCDVD is not set
347 371
348# 372#
@@ -416,6 +440,7 @@ CONFIG_IDEDMA_AUTO=y
416# 440#
417# SCSI device support 441# SCSI device support
418# 442#
443# CONFIG_RAID_ATTRS is not set
419CONFIG_SCSI=y 444CONFIG_SCSI=y
420CONFIG_SCSI_PROC_FS=y 445CONFIG_SCSI_PROC_FS=y
421 446
@@ -443,6 +468,7 @@ CONFIG_SCSI_CONSTANTS=y
443CONFIG_SCSI_SPI_ATTRS=y 468CONFIG_SCSI_SPI_ATTRS=y
444CONFIG_SCSI_FC_ATTRS=y 469CONFIG_SCSI_FC_ATTRS=y
445CONFIG_SCSI_ISCSI_ATTRS=m 470CONFIG_SCSI_ISCSI_ATTRS=m
471# CONFIG_SCSI_SAS_ATTRS is not set
446 472
447# 473#
448# SCSI low-level drivers 474# SCSI low-level drivers
@@ -456,6 +482,7 @@ CONFIG_SCSI_ISCSI_ATTRS=m
456# CONFIG_SCSI_AIC79XX is not set 482# CONFIG_SCSI_AIC79XX is not set
457# CONFIG_MEGARAID_NEWGEN is not set 483# CONFIG_MEGARAID_NEWGEN is not set
458# CONFIG_MEGARAID_LEGACY is not set 484# CONFIG_MEGARAID_LEGACY is not set
485# CONFIG_MEGARAID_SAS is not set
459# CONFIG_SCSI_SATA is not set 486# CONFIG_SCSI_SATA is not set
460# CONFIG_SCSI_BUSLOGIC is not set 487# CONFIG_SCSI_BUSLOGIC is not set
461# CONFIG_SCSI_DMX3191D is not set 488# CONFIG_SCSI_DMX3191D is not set
@@ -517,6 +544,7 @@ CONFIG_DM_MULTIPATH_EMC=m
517# CONFIG_FUSION is not set 544# CONFIG_FUSION is not set
518# CONFIG_FUSION_SPI is not set 545# CONFIG_FUSION_SPI is not set
519# CONFIG_FUSION_FC is not set 546# CONFIG_FUSION_FC is not set
547# CONFIG_FUSION_SAS is not set
520 548
521# 549#
522# IEEE 1394 (FireWire) support 550# IEEE 1394 (FireWire) support
@@ -547,12 +575,18 @@ CONFIG_TUN=m
547# CONFIG_ARCNET is not set 575# CONFIG_ARCNET is not set
548 576
549# 577#
578# PHY device support
579#
580# CONFIG_PHYLIB is not set
581
582#
550# Ethernet (10 or 100Mbit) 583# Ethernet (10 or 100Mbit)
551# 584#
552CONFIG_NET_ETHERNET=y 585CONFIG_NET_ETHERNET=y
553CONFIG_MII=y 586CONFIG_MII=y
554# CONFIG_HAPPYMEAL is not set 587# CONFIG_HAPPYMEAL is not set
555# CONFIG_SUNGEM is not set 588# CONFIG_SUNGEM is not set
589# CONFIG_CASSINI is not set
556CONFIG_NET_VENDOR_3COM=y 590CONFIG_NET_VENDOR_3COM=y
557CONFIG_VORTEX=y 591CONFIG_VORTEX=y
558# CONFIG_TYPHOON is not set 592# CONFIG_TYPHOON is not set
@@ -581,6 +615,7 @@ CONFIG_E100=y
581# CONFIG_EPIC100 is not set 615# CONFIG_EPIC100 is not set
582# CONFIG_SUNDANCE is not set 616# CONFIG_SUNDANCE is not set
583# CONFIG_VIA_RHINE is not set 617# CONFIG_VIA_RHINE is not set
618# CONFIG_NET_POCKET is not set
584 619
585# 620#
586# Ethernet (1000 Mbit) 621# Ethernet (1000 Mbit)
@@ -594,6 +629,7 @@ CONFIG_E1000=y
594# CONFIG_HAMACHI is not set 629# CONFIG_HAMACHI is not set
595# CONFIG_YELLOWFIN is not set 630# CONFIG_YELLOWFIN is not set
596# CONFIG_R8169 is not set 631# CONFIG_R8169 is not set
632# CONFIG_SIS190 is not set
597# CONFIG_SKGE is not set 633# CONFIG_SKGE is not set
598# CONFIG_SK98LIN is not set 634# CONFIG_SK98LIN is not set
599# CONFIG_VIA_VELOCITY is not set 635# CONFIG_VIA_VELOCITY is not set
@@ -604,6 +640,7 @@ CONFIG_TIGON3=y
604# 640#
605# Ethernet (10000 Mbit) 641# Ethernet (10000 Mbit)
606# 642#
643# CONFIG_CHELSIO_T1 is not set
607CONFIG_IXGB=m 644CONFIG_IXGB=m
608# CONFIG_IXGB_NAPI is not set 645# CONFIG_IXGB_NAPI is not set
609CONFIG_S2IO=m 646CONFIG_S2IO=m
@@ -789,7 +826,6 @@ CONFIG_I2C_ALGOBIT=y
789# CONFIG_I2C_I801 is not set 826# CONFIG_I2C_I801 is not set
790# CONFIG_I2C_I810 is not set 827# CONFIG_I2C_I810 is not set
791# CONFIG_I2C_PIIX4 is not set 828# CONFIG_I2C_PIIX4 is not set
792# CONFIG_I2C_ISA is not set
793# CONFIG_I2C_NFORCE2 is not set 829# CONFIG_I2C_NFORCE2 is not set
794# CONFIG_I2C_PARPORT is not set 830# CONFIG_I2C_PARPORT is not set
795# CONFIG_I2C_PARPORT_LIGHT is not set 831# CONFIG_I2C_PARPORT_LIGHT is not set
@@ -804,7 +840,6 @@ CONFIG_I2C_ALGOBIT=y
804# CONFIG_I2C_VIAPRO is not set 840# CONFIG_I2C_VIAPRO is not set
805# CONFIG_I2C_VOODOO3 is not set 841# CONFIG_I2C_VOODOO3 is not set
806# CONFIG_I2C_PCA_ISA is not set 842# CONFIG_I2C_PCA_ISA is not set
807# CONFIG_I2C_SENSOR is not set
808 843
809# 844#
810# Miscellaneous I2C Chip support 845# Miscellaneous I2C Chip support
@@ -831,12 +866,17 @@ CONFIG_I2C_ALGOBIT=y
831# Hardware Monitoring support 866# Hardware Monitoring support
832# 867#
833# CONFIG_HWMON is not set 868# CONFIG_HWMON is not set
869# CONFIG_HWMON_VID is not set
834 870
835# 871#
836# Misc devices 872# Misc devices
837# 873#
838 874
839# 875#
876# Multimedia Capabilities Port drivers
877#
878
879#
840# Multimedia devices 880# Multimedia devices
841# 881#
842# CONFIG_VIDEO_DEV is not set 882# CONFIG_VIDEO_DEV is not set
@@ -885,6 +925,7 @@ CONFIG_FB_RADEON_I2C=y
885# CONFIG_FB_KYRO is not set 925# CONFIG_FB_KYRO is not set
886# CONFIG_FB_3DFX is not set 926# CONFIG_FB_3DFX is not set
887# CONFIG_FB_VOODOO1 is not set 927# CONFIG_FB_VOODOO1 is not set
928# CONFIG_FB_CYBLA is not set
888# CONFIG_FB_TRIDENT is not set 929# CONFIG_FB_TRIDENT is not set
889# CONFIG_FB_S1D13XXX is not set 930# CONFIG_FB_S1D13XXX is not set
890# CONFIG_FB_VIRTUAL is not set 931# CONFIG_FB_VIRTUAL is not set
@@ -982,9 +1023,11 @@ CONFIG_USB_HIDDEV=y
982# CONFIG_USB_MTOUCH is not set 1023# CONFIG_USB_MTOUCH is not set
983# CONFIG_USB_ITMTOUCH is not set 1024# CONFIG_USB_ITMTOUCH is not set
984# CONFIG_USB_EGALAX is not set 1025# CONFIG_USB_EGALAX is not set
1026# CONFIG_USB_YEALINK is not set
985# CONFIG_USB_XPAD is not set 1027# CONFIG_USB_XPAD is not set
986# CONFIG_USB_ATI_REMOTE is not set 1028# CONFIG_USB_ATI_REMOTE is not set
987# CONFIG_USB_KEYSPAN_REMOTE is not set 1029# CONFIG_USB_KEYSPAN_REMOTE is not set
1030# CONFIG_USB_APPLETOUCH is not set
988 1031
989# 1032#
990# USB Imaging devices 1033# USB Imaging devices
@@ -1057,7 +1100,8 @@ CONFIG_USB_MON=y
1057# InfiniBand support 1100# InfiniBand support
1058# 1101#
1059CONFIG_INFINIBAND=m 1102CONFIG_INFINIBAND=m
1060CONFIG_INFINIBAND_USER_VERBS=m 1103# CONFIG_INFINIBAND_USER_MAD is not set
1104# CONFIG_INFINIBAND_USER_ACCESS is not set
1061CONFIG_INFINIBAND_MTHCA=m 1105CONFIG_INFINIBAND_MTHCA=m
1062# CONFIG_INFINIBAND_MTHCA_DEBUG is not set 1106# CONFIG_INFINIBAND_MTHCA_DEBUG is not set
1063CONFIG_INFINIBAND_IPOIB=m 1107CONFIG_INFINIBAND_IPOIB=m
@@ -1095,16 +1139,12 @@ CONFIG_JFS_SECURITY=y
1095# CONFIG_JFS_DEBUG is not set 1139# CONFIG_JFS_DEBUG is not set
1096# CONFIG_JFS_STATISTICS is not set 1140# CONFIG_JFS_STATISTICS is not set
1097CONFIG_FS_POSIX_ACL=y 1141CONFIG_FS_POSIX_ACL=y
1098
1099#
1100# XFS support
1101#
1102CONFIG_XFS_FS=m 1142CONFIG_XFS_FS=m
1103CONFIG_XFS_EXPORT=y 1143CONFIG_XFS_EXPORT=y
1104# CONFIG_XFS_RT is not set
1105# CONFIG_XFS_QUOTA is not set 1144# CONFIG_XFS_QUOTA is not set
1106CONFIG_XFS_SECURITY=y 1145CONFIG_XFS_SECURITY=y
1107CONFIG_XFS_POSIX_ACL=y 1146CONFIG_XFS_POSIX_ACL=y
1147# CONFIG_XFS_RT is not set
1108# CONFIG_MINIX_FS is not set 1148# CONFIG_MINIX_FS is not set
1109# CONFIG_ROMFS_FS is not set 1149# CONFIG_ROMFS_FS is not set
1110CONFIG_INOTIFY=y 1150CONFIG_INOTIFY=y
@@ -1112,6 +1152,7 @@ CONFIG_INOTIFY=y
1112CONFIG_DNOTIFY=y 1152CONFIG_DNOTIFY=y
1113CONFIG_AUTOFS_FS=m 1153CONFIG_AUTOFS_FS=m
1114# CONFIG_AUTOFS4_FS is not set 1154# CONFIG_AUTOFS4_FS is not set
1155# CONFIG_FUSE_FS is not set
1115 1156
1116# 1157#
1117# CD-ROM/DVD Filesystems 1158# CD-ROM/DVD Filesystems
@@ -1139,14 +1180,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
1139CONFIG_PROC_FS=y 1180CONFIG_PROC_FS=y
1140CONFIG_PROC_KCORE=y 1181CONFIG_PROC_KCORE=y
1141CONFIG_SYSFS=y 1182CONFIG_SYSFS=y
1142CONFIG_DEVPTS_FS_XATTR=y
1143CONFIG_DEVPTS_FS_SECURITY=y
1144CONFIG_TMPFS=y 1183CONFIG_TMPFS=y
1145CONFIG_TMPFS_XATTR=y
1146CONFIG_TMPFS_SECURITY=y
1147CONFIG_HUGETLBFS=y 1184CONFIG_HUGETLBFS=y
1148CONFIG_HUGETLB_PAGE=y 1185CONFIG_HUGETLB_PAGE=y
1149CONFIG_RAMFS=y 1186CONFIG_RAMFS=y
1187# CONFIG_RELAYFS_FS is not set
1150 1188
1151# 1189#
1152# Miscellaneous filesystems 1190# Miscellaneous filesystems
@@ -1197,6 +1235,7 @@ CONFIG_CIFS_POSIX=y
1197# CONFIG_NCP_FS is not set 1235# CONFIG_NCP_FS is not set
1198# CONFIG_CODA_FS is not set 1236# CONFIG_CODA_FS is not set
1199# CONFIG_AFS_FS is not set 1237# CONFIG_AFS_FS is not set
1238# CONFIG_9P_FS is not set
1200 1239
1201# 1240#
1202# Partition Types 1241# Partition Types
@@ -1261,6 +1300,7 @@ CONFIG_OPROFILE=y
1261CONFIG_DEBUG_KERNEL=y 1300CONFIG_DEBUG_KERNEL=y
1262CONFIG_MAGIC_SYSRQ=y 1301CONFIG_MAGIC_SYSRQ=y
1263CONFIG_LOG_BUF_SHIFT=17 1302CONFIG_LOG_BUF_SHIFT=17
1303CONFIG_DETECT_SOFTLOCKUP=y
1264# CONFIG_SCHEDSTATS is not set 1304# CONFIG_SCHEDSTATS is not set
1265# CONFIG_DEBUG_SLAB is not set 1305# CONFIG_DEBUG_SLAB is not set
1266# CONFIG_DEBUG_SPINLOCK is not set 1306# CONFIG_DEBUG_SPINLOCK is not set
@@ -1320,7 +1360,12 @@ CONFIG_CRYPTO_TEST=m
1320# Library routines 1360# Library routines
1321# 1361#
1322CONFIG_CRC_CCITT=m 1362CONFIG_CRC_CCITT=m
1363# CONFIG_CRC16 is not set
1323CONFIG_CRC32=y 1364CONFIG_CRC32=y
1324CONFIG_LIBCRC32C=m 1365CONFIG_LIBCRC32C=m
1325CONFIG_ZLIB_INFLATE=y 1366CONFIG_ZLIB_INFLATE=y
1326CONFIG_ZLIB_DEFLATE=m 1367CONFIG_ZLIB_DEFLATE=m
1368CONFIG_TEXTSEARCH=y
1369CONFIG_TEXTSEARCH_KMP=m
1370CONFIG_TEXTSEARCH_BM=m
1371CONFIG_TEXTSEARCH_FSM=m
diff --git a/arch/ppc64/defconfig b/arch/ppc64/defconfig
index 7cb4750bb7a9..37c157c93cef 100644
--- a/arch/ppc64/defconfig
+++ b/arch/ppc64/defconfig
@@ -1,17 +1,17 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.13-rc6 3# Linux kernel version: 2.6.14-rc4
4# Mon Aug 8 14:16:54 2005 4# Thu Oct 20 08:28:33 2005
5# 5#
6CONFIG_64BIT=y 6CONFIG_64BIT=y
7CONFIG_MMU=y 7CONFIG_MMU=y
8CONFIG_RWSEM_XCHGADD_ALGORITHM=y 8CONFIG_RWSEM_XCHGADD_ALGORITHM=y
9CONFIG_GENERIC_CALIBRATE_DELAY=y 9CONFIG_GENERIC_CALIBRATE_DELAY=y
10CONFIG_GENERIC_ISA_DMA=y 10CONFIG_GENERIC_ISA_DMA=y
11CONFIG_HAVE_DEC_LOCK=y
12CONFIG_EARLY_PRINTK=y 11CONFIG_EARLY_PRINTK=y
13CONFIG_COMPAT=y 12CONFIG_COMPAT=y
14CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 13CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
14CONFIG_ARCH_MAY_HAVE_PC_FDC=y
15CONFIG_FORCE_MAX_ZONEORDER=13 15CONFIG_FORCE_MAX_ZONEORDER=13
16 16
17# 17#
@@ -26,6 +26,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32
26# General setup 26# General setup
27# 27#
28CONFIG_LOCALVERSION="" 28CONFIG_LOCALVERSION=""
29CONFIG_LOCALVERSION_AUTO=y
29CONFIG_SWAP=y 30CONFIG_SWAP=y
30CONFIG_SYSVIPC=y 31CONFIG_SYSVIPC=y
31CONFIG_POSIX_MQUEUE=y 32CONFIG_POSIX_MQUEUE=y
@@ -37,6 +38,7 @@ CONFIG_KOBJECT_UEVENT=y
37CONFIG_IKCONFIG=y 38CONFIG_IKCONFIG=y
38CONFIG_IKCONFIG_PROC=y 39CONFIG_IKCONFIG_PROC=y
39CONFIG_CPUSETS=y 40CONFIG_CPUSETS=y
41CONFIG_INITRAMFS_SOURCE=""
40# CONFIG_EMBEDDED is not set 42# CONFIG_EMBEDDED is not set
41CONFIG_KALLSYMS=y 43CONFIG_KALLSYMS=y
42# CONFIG_KALLSYMS_ALL is not set 44# CONFIG_KALLSYMS_ALL is not set
@@ -106,6 +108,7 @@ CONFIG_DISCONTIGMEM_MANUAL=y
106CONFIG_DISCONTIGMEM=y 108CONFIG_DISCONTIGMEM=y
107CONFIG_FLAT_NODE_MEM_MAP=y 109CONFIG_FLAT_NODE_MEM_MAP=y
108CONFIG_NEED_MULTIPLE_NODES=y 110CONFIG_NEED_MULTIPLE_NODES=y
111# CONFIG_SPARSEMEM_STATIC is not set
109CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y 112CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y
110CONFIG_NODES_SPAN_OTHER_NODES=y 113CONFIG_NODES_SPAN_OTHER_NODES=y
111# CONFIG_NUMA is not set 114# CONFIG_NUMA is not set
@@ -126,19 +129,20 @@ CONFIG_RTAS_FLASH=m
126CONFIG_SCANLOG=m 129CONFIG_SCANLOG=m
127CONFIG_LPARCFG=y 130CONFIG_LPARCFG=y
128CONFIG_SECCOMP=y 131CONFIG_SECCOMP=y
132CONFIG_BINFMT_ELF=y
133CONFIG_BINFMT_MISC=m
134CONFIG_HOTPLUG_CPU=y
135CONFIG_PROC_DEVICETREE=y
136# CONFIG_CMDLINE_BOOL is not set
129CONFIG_ISA_DMA_API=y 137CONFIG_ISA_DMA_API=y
130 138
131# 139#
132# General setup 140# Bus Options
133# 141#
134CONFIG_PCI=y 142CONFIG_PCI=y
135CONFIG_PCI_DOMAINS=y 143CONFIG_PCI_DOMAINS=y
136CONFIG_BINFMT_ELF=y
137CONFIG_BINFMT_MISC=m
138# CONFIG_PCI_LEGACY_PROC is not set 144# CONFIG_PCI_LEGACY_PROC is not set
139# CONFIG_PCI_NAMES is not set
140# CONFIG_PCI_DEBUG is not set 145# CONFIG_PCI_DEBUG is not set
141CONFIG_HOTPLUG_CPU=y
142 146
143# 147#
144# PCCARD (PCMCIA/CardBus) support 148# PCCARD (PCMCIA/CardBus) support
@@ -154,8 +158,6 @@ CONFIG_HOTPLUG_PCI=m
154# CONFIG_HOTPLUG_PCI_SHPC is not set 158# CONFIG_HOTPLUG_PCI_SHPC is not set
155CONFIG_HOTPLUG_PCI_RPA=m 159CONFIG_HOTPLUG_PCI_RPA=m
156CONFIG_HOTPLUG_PCI_RPA_DLPAR=m 160CONFIG_HOTPLUG_PCI_RPA_DLPAR=m
157CONFIG_PROC_DEVICETREE=y
158# CONFIG_CMDLINE_BOOL is not set
159 161
160# 162#
161# Networking 163# Networking
@@ -185,8 +187,8 @@ CONFIG_INET_AH=m
185CONFIG_INET_ESP=m 187CONFIG_INET_ESP=m
186CONFIG_INET_IPCOMP=m 188CONFIG_INET_IPCOMP=m
187CONFIG_INET_TUNNEL=y 189CONFIG_INET_TUNNEL=y
188# CONFIG_IP_TCPDIAG is not set 190CONFIG_INET_DIAG=y
189# CONFIG_IP_TCPDIAG_IPV6 is not set 191CONFIG_INET_TCP_DIAG=y
190# CONFIG_TCP_CONG_ADVANCED is not set 192# CONFIG_TCP_CONG_ADVANCED is not set
191CONFIG_TCP_CONG_BIC=y 193CONFIG_TCP_CONG_BIC=y
192 194
@@ -197,6 +199,9 @@ CONFIG_TCP_CONG_BIC=y
197# CONFIG_IPV6 is not set 199# CONFIG_IPV6 is not set
198CONFIG_NETFILTER=y 200CONFIG_NETFILTER=y
199# CONFIG_NETFILTER_DEBUG is not set 201# CONFIG_NETFILTER_DEBUG is not set
202CONFIG_NETFILTER_NETLINK=y
203CONFIG_NETFILTER_NETLINK_QUEUE=m
204CONFIG_NETFILTER_NETLINK_LOG=m
200 205
201# 206#
202# IP: Netfilter Configuration 207# IP: Netfilter Configuration
@@ -204,11 +209,15 @@ CONFIG_NETFILTER=y
204CONFIG_IP_NF_CONNTRACK=m 209CONFIG_IP_NF_CONNTRACK=m
205CONFIG_IP_NF_CT_ACCT=y 210CONFIG_IP_NF_CT_ACCT=y
206CONFIG_IP_NF_CONNTRACK_MARK=y 211CONFIG_IP_NF_CONNTRACK_MARK=y
212CONFIG_IP_NF_CONNTRACK_EVENTS=y
213CONFIG_IP_NF_CONNTRACK_NETLINK=m
207CONFIG_IP_NF_CT_PROTO_SCTP=m 214CONFIG_IP_NF_CT_PROTO_SCTP=m
208CONFIG_IP_NF_FTP=m 215CONFIG_IP_NF_FTP=m
209CONFIG_IP_NF_IRC=m 216CONFIG_IP_NF_IRC=m
217# CONFIG_IP_NF_NETBIOS_NS is not set
210CONFIG_IP_NF_TFTP=m 218CONFIG_IP_NF_TFTP=m
211CONFIG_IP_NF_AMANDA=m 219CONFIG_IP_NF_AMANDA=m
220# CONFIG_IP_NF_PPTP is not set
212CONFIG_IP_NF_QUEUE=m 221CONFIG_IP_NF_QUEUE=m
213CONFIG_IP_NF_IPTABLES=m 222CONFIG_IP_NF_IPTABLES=m
214CONFIG_IP_NF_MATCH_LIMIT=m 223CONFIG_IP_NF_MATCH_LIMIT=m
@@ -232,14 +241,18 @@ CONFIG_IP_NF_MATCH_OWNER=m
232CONFIG_IP_NF_MATCH_ADDRTYPE=m 241CONFIG_IP_NF_MATCH_ADDRTYPE=m
233CONFIG_IP_NF_MATCH_REALM=m 242CONFIG_IP_NF_MATCH_REALM=m
234CONFIG_IP_NF_MATCH_SCTP=m 243CONFIG_IP_NF_MATCH_SCTP=m
244CONFIG_IP_NF_MATCH_DCCP=m
235CONFIG_IP_NF_MATCH_COMMENT=m 245CONFIG_IP_NF_MATCH_COMMENT=m
236CONFIG_IP_NF_MATCH_CONNMARK=m 246CONFIG_IP_NF_MATCH_CONNMARK=m
247CONFIG_IP_NF_MATCH_CONNBYTES=m
237CONFIG_IP_NF_MATCH_HASHLIMIT=m 248CONFIG_IP_NF_MATCH_HASHLIMIT=m
249CONFIG_IP_NF_MATCH_STRING=m
238CONFIG_IP_NF_FILTER=m 250CONFIG_IP_NF_FILTER=m
239CONFIG_IP_NF_TARGET_REJECT=m 251CONFIG_IP_NF_TARGET_REJECT=m
240CONFIG_IP_NF_TARGET_LOG=m 252CONFIG_IP_NF_TARGET_LOG=m
241CONFIG_IP_NF_TARGET_ULOG=m 253CONFIG_IP_NF_TARGET_ULOG=m
242CONFIG_IP_NF_TARGET_TCPMSS=m 254CONFIG_IP_NF_TARGET_TCPMSS=m
255CONFIG_IP_NF_TARGET_NFQUEUE=m
243CONFIG_IP_NF_NAT=m 256CONFIG_IP_NF_NAT=m
244CONFIG_IP_NF_NAT_NEEDED=y 257CONFIG_IP_NF_NAT_NEEDED=y
245CONFIG_IP_NF_TARGET_MASQUERADE=m 258CONFIG_IP_NF_TARGET_MASQUERADE=m
@@ -257,6 +270,7 @@ CONFIG_IP_NF_TARGET_ECN=m
257CONFIG_IP_NF_TARGET_DSCP=m 270CONFIG_IP_NF_TARGET_DSCP=m
258CONFIG_IP_NF_TARGET_MARK=m 271CONFIG_IP_NF_TARGET_MARK=m
259CONFIG_IP_NF_TARGET_CLASSIFY=m 272CONFIG_IP_NF_TARGET_CLASSIFY=m
273CONFIG_IP_NF_TARGET_TTL=m
260CONFIG_IP_NF_TARGET_CONNMARK=m 274CONFIG_IP_NF_TARGET_CONNMARK=m
261CONFIG_IP_NF_TARGET_CLUSTERIP=m 275CONFIG_IP_NF_TARGET_CLUSTERIP=m
262CONFIG_IP_NF_RAW=m 276CONFIG_IP_NF_RAW=m
@@ -266,6 +280,11 @@ CONFIG_IP_NF_ARPFILTER=m
266CONFIG_IP_NF_ARP_MANGLE=m 280CONFIG_IP_NF_ARP_MANGLE=m
267 281
268# 282#
283# DCCP Configuration (EXPERIMENTAL)
284#
285# CONFIG_IP_DCCP is not set
286
287#
269# SCTP Configuration (EXPERIMENTAL) 288# SCTP Configuration (EXPERIMENTAL)
270# 289#
271# CONFIG_IP_SCTP is not set 290# CONFIG_IP_SCTP is not set
@@ -292,6 +311,7 @@ CONFIG_NET_CLS_ROUTE=y
292# CONFIG_HAMRADIO is not set 311# CONFIG_HAMRADIO is not set
293# CONFIG_IRDA is not set 312# CONFIG_IRDA is not set
294# CONFIG_BT is not set 313# CONFIG_BT is not set
314# CONFIG_IEEE80211 is not set
295 315
296# 316#
297# Device Drivers 317# Device Drivers
@@ -306,6 +326,11 @@ CONFIG_FW_LOADER=y
306# CONFIG_DEBUG_DRIVER is not set 326# CONFIG_DEBUG_DRIVER is not set
307 327
308# 328#
329# Connector - unified userspace <-> kernelspace linker
330#
331# CONFIG_CONNECTOR is not set
332
333#
309# Memory Technology Devices (MTD) 334# Memory Technology Devices (MTD)
310# 335#
311# CONFIG_MTD is not set 336# CONFIG_MTD is not set
@@ -344,7 +369,6 @@ CONFIG_BLK_DEV_RAM=y
344CONFIG_BLK_DEV_RAM_COUNT=16 369CONFIG_BLK_DEV_RAM_COUNT=16
345CONFIG_BLK_DEV_RAM_SIZE=65536 370CONFIG_BLK_DEV_RAM_SIZE=65536
346CONFIG_BLK_DEV_INITRD=y 371CONFIG_BLK_DEV_INITRD=y
347CONFIG_INITRAMFS_SOURCE=""
348# CONFIG_CDROM_PKTCDVD is not set 372# CONFIG_CDROM_PKTCDVD is not set
349 373
350# 374#
@@ -422,6 +446,7 @@ CONFIG_IDEDMA_AUTO=y
422# 446#
423# SCSI device support 447# SCSI device support
424# 448#
449# CONFIG_RAID_ATTRS is not set
425CONFIG_SCSI=y 450CONFIG_SCSI=y
426CONFIG_SCSI_PROC_FS=y 451CONFIG_SCSI_PROC_FS=y
427 452
@@ -449,6 +474,7 @@ CONFIG_SCSI_CONSTANTS=y
449CONFIG_SCSI_SPI_ATTRS=y 474CONFIG_SCSI_SPI_ATTRS=y
450CONFIG_SCSI_FC_ATTRS=y 475CONFIG_SCSI_FC_ATTRS=y
451CONFIG_SCSI_ISCSI_ATTRS=m 476CONFIG_SCSI_ISCSI_ATTRS=m
477# CONFIG_SCSI_SAS_ATTRS is not set
452 478
453# 479#
454# SCSI low-level drivers 480# SCSI low-level drivers
@@ -462,10 +488,12 @@ CONFIG_SCSI_ISCSI_ATTRS=m
462# CONFIG_SCSI_AIC79XX is not set 488# CONFIG_SCSI_AIC79XX is not set
463# CONFIG_MEGARAID_NEWGEN is not set 489# CONFIG_MEGARAID_NEWGEN is not set
464# CONFIG_MEGARAID_LEGACY is not set 490# CONFIG_MEGARAID_LEGACY is not set
491# CONFIG_MEGARAID_SAS is not set
465CONFIG_SCSI_SATA=y 492CONFIG_SCSI_SATA=y
466# CONFIG_SCSI_SATA_AHCI is not set 493# CONFIG_SCSI_SATA_AHCI is not set
467CONFIG_SCSI_SATA_SVW=y 494CONFIG_SCSI_SATA_SVW=y
468# CONFIG_SCSI_ATA_PIIX is not set 495# CONFIG_SCSI_ATA_PIIX is not set
496# CONFIG_SCSI_SATA_MV is not set
469# CONFIG_SCSI_SATA_NV is not set 497# CONFIG_SCSI_SATA_NV is not set
470# CONFIG_SCSI_SATA_PROMISE is not set 498# CONFIG_SCSI_SATA_PROMISE is not set
471# CONFIG_SCSI_SATA_QSTOR is not set 499# CONFIG_SCSI_SATA_QSTOR is not set
@@ -535,6 +563,7 @@ CONFIG_DM_MULTIPATH_EMC=m
535# CONFIG_FUSION is not set 563# CONFIG_FUSION is not set
536# CONFIG_FUSION_SPI is not set 564# CONFIG_FUSION_SPI is not set
537# CONFIG_FUSION_FC is not set 565# CONFIG_FUSION_FC is not set
566# CONFIG_FUSION_SAS is not set
538 567
539# 568#
540# IEEE 1394 (FireWire) support 569# IEEE 1394 (FireWire) support
@@ -578,7 +607,6 @@ CONFIG_IEEE1394_AMDTP=m
578# 607#
579CONFIG_ADB_PMU=y 608CONFIG_ADB_PMU=y
580CONFIG_PMAC_SMU=y 609CONFIG_PMAC_SMU=y
581# CONFIG_PMAC_BACKLIGHT is not set
582CONFIG_THERM_PM72=y 610CONFIG_THERM_PM72=y
583 611
584# 612#
@@ -596,12 +624,18 @@ CONFIG_TUN=m
596# CONFIG_ARCNET is not set 624# CONFIG_ARCNET is not set
597 625
598# 626#
627# PHY device support
628#
629# CONFIG_PHYLIB is not set
630
631#
599# Ethernet (10 or 100Mbit) 632# Ethernet (10 or 100Mbit)
600# 633#
601CONFIG_NET_ETHERNET=y 634CONFIG_NET_ETHERNET=y
602CONFIG_MII=y 635CONFIG_MII=y
603# CONFIG_HAPPYMEAL is not set 636# CONFIG_HAPPYMEAL is not set
604CONFIG_SUNGEM=y 637CONFIG_SUNGEM=y
638# CONFIG_CASSINI is not set
605CONFIG_NET_VENDOR_3COM=y 639CONFIG_NET_VENDOR_3COM=y
606CONFIG_VORTEX=y 640CONFIG_VORTEX=y
607# CONFIG_TYPHOON is not set 641# CONFIG_TYPHOON is not set
@@ -630,6 +664,7 @@ CONFIG_E100=y
630# CONFIG_EPIC100 is not set 664# CONFIG_EPIC100 is not set
631# CONFIG_SUNDANCE is not set 665# CONFIG_SUNDANCE is not set
632# CONFIG_VIA_RHINE is not set 666# CONFIG_VIA_RHINE is not set
667# CONFIG_NET_POCKET is not set
633 668
634# 669#
635# Ethernet (1000 Mbit) 670# Ethernet (1000 Mbit)
@@ -643,16 +678,19 @@ CONFIG_E1000=y
643# CONFIG_HAMACHI is not set 678# CONFIG_HAMACHI is not set
644# CONFIG_YELLOWFIN is not set 679# CONFIG_YELLOWFIN is not set
645# CONFIG_R8169 is not set 680# CONFIG_R8169 is not set
681# CONFIG_SIS190 is not set
646# CONFIG_SKGE is not set 682# CONFIG_SKGE is not set
647# CONFIG_SK98LIN is not set 683# CONFIG_SK98LIN is not set
648# CONFIG_VIA_VELOCITY is not set 684# CONFIG_VIA_VELOCITY is not set
649CONFIG_TIGON3=y 685CONFIG_TIGON3=y
650# CONFIG_BNX2 is not set 686# CONFIG_BNX2 is not set
687# CONFIG_SPIDER_NET is not set
651# CONFIG_MV643XX_ETH is not set 688# CONFIG_MV643XX_ETH is not set
652 689
653# 690#
654# Ethernet (10000 Mbit) 691# Ethernet (10000 Mbit)
655# 692#
693# CONFIG_CHELSIO_T1 is not set
656CONFIG_IXGB=m 694CONFIG_IXGB=m
657# CONFIG_IXGB_NAPI is not set 695# CONFIG_IXGB_NAPI is not set
658# CONFIG_S2IO is not set 696# CONFIG_S2IO is not set
@@ -838,8 +876,8 @@ CONFIG_I2C_AMD8111=y
838# CONFIG_I2C_I801 is not set 876# CONFIG_I2C_I801 is not set
839# CONFIG_I2C_I810 is not set 877# CONFIG_I2C_I810 is not set
840# CONFIG_I2C_PIIX4 is not set 878# CONFIG_I2C_PIIX4 is not set
841# CONFIG_I2C_ISA is not set
842CONFIG_I2C_KEYWEST=y 879CONFIG_I2C_KEYWEST=y
880CONFIG_I2C_PMAC_SMU=y
843# CONFIG_I2C_NFORCE2 is not set 881# CONFIG_I2C_NFORCE2 is not set
844# CONFIG_I2C_PARPORT is not set 882# CONFIG_I2C_PARPORT is not set
845# CONFIG_I2C_PARPORT_LIGHT is not set 883# CONFIG_I2C_PARPORT_LIGHT is not set
@@ -854,7 +892,6 @@ CONFIG_I2C_KEYWEST=y
854# CONFIG_I2C_VIAPRO is not set 892# CONFIG_I2C_VIAPRO is not set
855# CONFIG_I2C_VOODOO3 is not set 893# CONFIG_I2C_VOODOO3 is not set
856# CONFIG_I2C_PCA_ISA is not set 894# CONFIG_I2C_PCA_ISA is not set
857# CONFIG_I2C_SENSOR is not set
858 895
859# 896#
860# Miscellaneous I2C Chip support 897# Miscellaneous I2C Chip support
@@ -881,12 +918,17 @@ CONFIG_I2C_KEYWEST=y
881# Hardware Monitoring support 918# Hardware Monitoring support
882# 919#
883# CONFIG_HWMON is not set 920# CONFIG_HWMON is not set
921# CONFIG_HWMON_VID is not set
884 922
885# 923#
886# Misc devices 924# Misc devices
887# 925#
888 926
889# 927#
928# Multimedia Capabilities Port drivers
929#
930
931#
890# Multimedia devices 932# Multimedia devices
891# 933#
892# CONFIG_VIDEO_DEV is not set 934# CONFIG_VIDEO_DEV is not set
@@ -939,6 +981,7 @@ CONFIG_FB_RADEON_I2C=y
939# CONFIG_FB_KYRO is not set 981# CONFIG_FB_KYRO is not set
940# CONFIG_FB_3DFX is not set 982# CONFIG_FB_3DFX is not set
941# CONFIG_FB_VOODOO1 is not set 983# CONFIG_FB_VOODOO1 is not set
984# CONFIG_FB_CYBLA is not set
942# CONFIG_FB_TRIDENT is not set 985# CONFIG_FB_TRIDENT is not set
943# CONFIG_FB_S1D13XXX is not set 986# CONFIG_FB_S1D13XXX is not set
944# CONFIG_FB_VIRTUAL is not set 987# CONFIG_FB_VIRTUAL is not set
@@ -1020,6 +1063,7 @@ CONFIG_USB_STORAGE=m
1020# CONFIG_USB_STORAGE_SDDR09 is not set 1063# CONFIG_USB_STORAGE_SDDR09 is not set
1021# CONFIG_USB_STORAGE_SDDR55 is not set 1064# CONFIG_USB_STORAGE_SDDR55 is not set
1022# CONFIG_USB_STORAGE_JUMPSHOT is not set 1065# CONFIG_USB_STORAGE_JUMPSHOT is not set
1066# CONFIG_USB_STORAGE_ONETOUCH is not set
1023 1067
1024# 1068#
1025# USB Input Devices 1069# USB Input Devices
@@ -1036,9 +1080,11 @@ CONFIG_USB_HIDDEV=y
1036# CONFIG_USB_MTOUCH is not set 1080# CONFIG_USB_MTOUCH is not set
1037# CONFIG_USB_ITMTOUCH is not set 1081# CONFIG_USB_ITMTOUCH is not set
1038# CONFIG_USB_EGALAX is not set 1082# CONFIG_USB_EGALAX is not set
1083# CONFIG_USB_YEALINK is not set
1039# CONFIG_USB_XPAD is not set 1084# CONFIG_USB_XPAD is not set
1040# CONFIG_USB_ATI_REMOTE is not set 1085# CONFIG_USB_ATI_REMOTE is not set
1041# CONFIG_USB_KEYSPAN_REMOTE is not set 1086# CONFIG_USB_KEYSPAN_REMOTE is not set
1087# CONFIG_USB_APPLETOUCH is not set
1042 1088
1043# 1089#
1044# USB Imaging devices 1090# USB Imaging devices
@@ -1111,7 +1157,8 @@ CONFIG_USB_PEGASUS=y
1111# InfiniBand support 1157# InfiniBand support
1112# 1158#
1113CONFIG_INFINIBAND=m 1159CONFIG_INFINIBAND=m
1114CONFIG_INFINIBAND_USER_VERBS=m 1160# CONFIG_INFINIBAND_USER_MAD is not set
1161# CONFIG_INFINIBAND_USER_ACCESS is not set
1115CONFIG_INFINIBAND_MTHCA=m 1162CONFIG_INFINIBAND_MTHCA=m
1116# CONFIG_INFINIBAND_MTHCA_DEBUG is not set 1163# CONFIG_INFINIBAND_MTHCA_DEBUG is not set
1117CONFIG_INFINIBAND_IPOIB=m 1164CONFIG_INFINIBAND_IPOIB=m
@@ -1149,16 +1196,12 @@ CONFIG_JFS_SECURITY=y
1149# CONFIG_JFS_DEBUG is not set 1196# CONFIG_JFS_DEBUG is not set
1150# CONFIG_JFS_STATISTICS is not set 1197# CONFIG_JFS_STATISTICS is not set
1151CONFIG_FS_POSIX_ACL=y 1198CONFIG_FS_POSIX_ACL=y
1152
1153#
1154# XFS support
1155#
1156CONFIG_XFS_FS=m 1199CONFIG_XFS_FS=m
1157CONFIG_XFS_EXPORT=y 1200CONFIG_XFS_EXPORT=y
1158# CONFIG_XFS_RT is not set
1159# CONFIG_XFS_QUOTA is not set 1201# CONFIG_XFS_QUOTA is not set
1160CONFIG_XFS_SECURITY=y 1202CONFIG_XFS_SECURITY=y
1161CONFIG_XFS_POSIX_ACL=y 1203CONFIG_XFS_POSIX_ACL=y
1204# CONFIG_XFS_RT is not set
1162# CONFIG_MINIX_FS is not set 1205# CONFIG_MINIX_FS is not set
1163# CONFIG_ROMFS_FS is not set 1206# CONFIG_ROMFS_FS is not set
1164CONFIG_INOTIFY=y 1207CONFIG_INOTIFY=y
@@ -1166,6 +1209,7 @@ CONFIG_INOTIFY=y
1166CONFIG_DNOTIFY=y 1209CONFIG_DNOTIFY=y
1167CONFIG_AUTOFS_FS=y 1210CONFIG_AUTOFS_FS=y
1168# CONFIG_AUTOFS4_FS is not set 1211# CONFIG_AUTOFS4_FS is not set
1212# CONFIG_FUSE_FS is not set
1169 1213
1170# 1214#
1171# CD-ROM/DVD Filesystems 1215# CD-ROM/DVD Filesystems
@@ -1192,14 +1236,11 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
1192CONFIG_PROC_FS=y 1236CONFIG_PROC_FS=y
1193CONFIG_PROC_KCORE=y 1237CONFIG_PROC_KCORE=y
1194CONFIG_SYSFS=y 1238CONFIG_SYSFS=y
1195CONFIG_DEVPTS_FS_XATTR=y
1196CONFIG_DEVPTS_FS_SECURITY=y
1197CONFIG_TMPFS=y 1239CONFIG_TMPFS=y
1198CONFIG_TMPFS_XATTR=y
1199CONFIG_TMPFS_SECURITY=y
1200CONFIG_HUGETLBFS=y 1240CONFIG_HUGETLBFS=y
1201CONFIG_HUGETLB_PAGE=y 1241CONFIG_HUGETLB_PAGE=y
1202CONFIG_RAMFS=y 1242CONFIG_RAMFS=y
1243# CONFIG_RELAYFS_FS is not set
1203 1244
1204# 1245#
1205# Miscellaneous filesystems 1246# Miscellaneous filesystems
@@ -1250,6 +1291,7 @@ CONFIG_CIFS_POSIX=y
1250# CONFIG_NCP_FS is not set 1291# CONFIG_NCP_FS is not set
1251# CONFIG_CODA_FS is not set 1292# CONFIG_CODA_FS is not set
1252# CONFIG_AFS_FS is not set 1293# CONFIG_AFS_FS is not set
1294# CONFIG_9P_FS is not set
1253 1295
1254# 1296#
1255# Partition Types 1297# Partition Types
@@ -1328,6 +1370,7 @@ CONFIG_OPROFILE=y
1328CONFIG_DEBUG_KERNEL=y 1370CONFIG_DEBUG_KERNEL=y
1329CONFIG_MAGIC_SYSRQ=y 1371CONFIG_MAGIC_SYSRQ=y
1330CONFIG_LOG_BUF_SHIFT=17 1372CONFIG_LOG_BUF_SHIFT=17
1373CONFIG_DETECT_SOFTLOCKUP=y
1331# CONFIG_SCHEDSTATS is not set 1374# CONFIG_SCHEDSTATS is not set
1332# CONFIG_DEBUG_SLAB is not set 1375# CONFIG_DEBUG_SLAB is not set
1333# CONFIG_DEBUG_SPINLOCK is not set 1376# CONFIG_DEBUG_SPINLOCK is not set
@@ -1387,7 +1430,12 @@ CONFIG_CRYPTO_TEST=m
1387# Library routines 1430# Library routines
1388# 1431#
1389CONFIG_CRC_CCITT=m 1432CONFIG_CRC_CCITT=m
1433# CONFIG_CRC16 is not set
1390CONFIG_CRC32=y 1434CONFIG_CRC32=y
1391CONFIG_LIBCRC32C=m 1435CONFIG_LIBCRC32C=m
1392CONFIG_ZLIB_INFLATE=y 1436CONFIG_ZLIB_INFLATE=y
1393CONFIG_ZLIB_DEFLATE=m 1437CONFIG_ZLIB_DEFLATE=m
1438CONFIG_TEXTSEARCH=y
1439CONFIG_TEXTSEARCH_KMP=m
1440CONFIG_TEXTSEARCH_BM=m
1441CONFIG_TEXTSEARCH_FSM=m
diff --git a/arch/ppc64/kernel/iSeries_htab.c b/arch/ppc64/kernel/iSeries_htab.c
index 2192055a90a0..073b76661747 100644
--- a/arch/ppc64/kernel/iSeries_htab.c
+++ b/arch/ppc64/kernel/iSeries_htab.c
@@ -66,7 +66,7 @@ static long iSeries_hpte_insert(unsigned long hpte_group, unsigned long va,
66 } 66 }
67 67
68 if (slot < 0) { /* MSB set means secondary group */ 68 if (slot < 0) { /* MSB set means secondary group */
69 vflags |= HPTE_V_VALID; 69 vflags |= HPTE_V_SECONDARY;
70 secondary = 1; 70 secondary = 1;
71 slot &= 0x7fffffffffffffff; 71 slot &= 0x7fffffffffffffff;
72 } 72 }
diff --git a/arch/ppc64/kernel/time.c b/arch/ppc64/kernel/time.c
index 9939c206afa4..b56c6a324e17 100644
--- a/arch/ppc64/kernel/time.c
+++ b/arch/ppc64/kernel/time.c
@@ -870,7 +870,7 @@ void div128_by_32( unsigned long dividend_high, unsigned long dividend_low,
870 rb = ((ra + b) - (x * divisor)) << 32; 870 rb = ((ra + b) - (x * divisor)) << 32;
871 871
872 y = (rb + c)/divisor; 872 y = (rb + c)/divisor;
873 rc = ((rb + b) - (y * divisor)) << 32; 873 rc = ((rb + c) - (y * divisor)) << 32;
874 874
875 z = (rc + d)/divisor; 875 z = (rc + d)/divisor;
876 876
diff --git a/arch/ppc64/kernel/vdso32/gettimeofday.S b/arch/ppc64/kernel/vdso32/gettimeofday.S
index 07f1c1c650c8..e243c1d24af7 100644
--- a/arch/ppc64/kernel/vdso32/gettimeofday.S
+++ b/arch/ppc64/kernel/vdso32/gettimeofday.S
@@ -109,7 +109,7 @@ __do_get_xsec:
109 lwz r6,(CFG_TB_TO_XS+4)(r9) 109 lwz r6,(CFG_TB_TO_XS+4)(r9)
110 mulhwu r4,r7,r5 110 mulhwu r4,r7,r5
111 mulhwu r6,r7,r6 111 mulhwu r6,r7,r6
112 mullw r6,r7,r5 112 mullw r0,r7,r5
113 addc r6,r6,r0 113 addc r6,r6,r0
114 114
115 /* At this point, we have the scaled xsec value in r4 + XER:CA 115 /* At this point, we have the scaled xsec value in r4 + XER:CA
diff --git a/arch/ppc64/mm/init.c b/arch/ppc64/mm/init.c
index c2157c9c3acb..be64b157afce 100644
--- a/arch/ppc64/mm/init.c
+++ b/arch/ppc64/mm/init.c
@@ -799,8 +799,7 @@ void update_mmu_cache(struct vm_area_struct *vma, unsigned long ea,
799 if (cpus_equal(vma->vm_mm->cpu_vm_mask, tmp)) 799 if (cpus_equal(vma->vm_mm->cpu_vm_mask, tmp))
800 local = 1; 800 local = 1;
801 801
802 __hash_page(ea, pte_val(pte) & (_PAGE_USER|_PAGE_RW), vsid, ptep, 802 __hash_page(ea, 0, vsid, ptep, 0x300, local);
803 0x300, local);
804 local_irq_restore(flags); 803 local_irq_restore(flags);
805} 804}
806 805
diff --git a/arch/um/include/sysdep-x86_64/ptrace.h b/arch/um/include/sysdep-x86_64/ptrace.h
index 8f0656766c21..8d353f0feec1 100644
--- a/arch/um/include/sysdep-x86_64/ptrace.h
+++ b/arch/um/include/sysdep-x86_64/ptrace.h
@@ -183,10 +183,6 @@ struct syscall_args {
183 case RBP: val = UPT_RBP(regs); break; \ 183 case RBP: val = UPT_RBP(regs); break; \
184 case ORIG_RAX: val = UPT_ORIG_RAX(regs); break; \ 184 case ORIG_RAX: val = UPT_ORIG_RAX(regs); break; \
185 case CS: val = UPT_CS(regs); break; \ 185 case CS: val = UPT_CS(regs); break; \
186 case DS: val = UPT_DS(regs); break; \
187 case ES: val = UPT_ES(regs); break; \
188 case FS: val = UPT_FS(regs); break; \
189 case GS: val = UPT_GS(regs); break; \
190 case EFLAGS: val = UPT_EFLAGS(regs); break; \ 186 case EFLAGS: val = UPT_EFLAGS(regs); break; \
191 default : \ 187 default : \
192 panic("Bad register in UPT_REG : %d\n", reg); \ 188 panic("Bad register in UPT_REG : %d\n", reg); \
diff --git a/drivers/acpi/glue.c b/drivers/acpi/glue.c
index e36c5da2b31a..3937adf4e5e5 100644
--- a/drivers/acpi/glue.c
+++ b/drivers/acpi/glue.c
@@ -96,7 +96,7 @@ struct acpi_find_pci_root {
96static acpi_status 96static acpi_status
97do_root_bridge_busnr_callback(struct acpi_resource *resource, void *data) 97do_root_bridge_busnr_callback(struct acpi_resource *resource, void *data)
98{ 98{
99 int *busnr = (int *)data; 99 unsigned long *busnr = (unsigned long *)data;
100 struct acpi_resource_address64 address; 100 struct acpi_resource_address64 address;
101 101
102 if (resource->id != ACPI_RSTYPE_ADDRESS16 && 102 if (resource->id != ACPI_RSTYPE_ADDRESS16 &&
@@ -115,13 +115,13 @@ do_root_bridge_busnr_callback(struct acpi_resource *resource, void *data)
115static int get_root_bridge_busnr(acpi_handle handle) 115static int get_root_bridge_busnr(acpi_handle handle)
116{ 116{
117 acpi_status status; 117 acpi_status status;
118 int bus, bbn; 118 unsigned long bus, bbn;
119 struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL }; 119 struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL };
120 120
121 acpi_get_name(handle, ACPI_FULL_PATHNAME, &buffer); 121 acpi_get_name(handle, ACPI_FULL_PATHNAME, &buffer);
122 122
123 status = acpi_evaluate_integer(handle, METHOD_NAME__BBN, NULL, 123 status = acpi_evaluate_integer(handle, METHOD_NAME__BBN, NULL,
124 (unsigned long *)&bbn); 124 &bbn);
125 if (status == AE_NOT_FOUND) { 125 if (status == AE_NOT_FOUND) {
126 /* Assume bus = 0 */ 126 /* Assume bus = 0 */
127 printk(KERN_INFO PREFIX 127 printk(KERN_INFO PREFIX
@@ -153,7 +153,7 @@ static int get_root_bridge_busnr(acpi_handle handle)
153 } 153 }
154 exit: 154 exit:
155 acpi_os_free(buffer.pointer); 155 acpi_os_free(buffer.pointer);
156 return bbn; 156 return (int)bbn;
157} 157}
158 158
159static acpi_status 159static acpi_status
diff --git a/drivers/char/drm/drm_vm.c b/drivers/char/drm/drm_vm.c
index ced4215e2275..39ea96e42c5b 100644
--- a/drivers/char/drm/drm_vm.c
+++ b/drivers/char/drm/drm_vm.c
@@ -148,7 +148,8 @@ static __inline__ struct page *drm_do_vm_shm_nopage(struct vm_area_struct *vma,
148 148
149 offset = address - vma->vm_start; 149 offset = address - vma->vm_start;
150 i = (unsigned long)map->handle + offset; 150 i = (unsigned long)map->handle + offset;
151 page = vmalloc_to_page((void *)i); 151 page = (map->type == _DRM_CONSISTENT) ?
152 virt_to_page((void *)i) : vmalloc_to_page((void *)i);
152 if (!page) 153 if (!page)
153 return NOPAGE_OOM; 154 return NOPAGE_OOM;
154 get_page(page); 155 get_page(page);
diff --git a/drivers/char/drm/mga_dma.c b/drivers/char/drm/mga_dma.c
index fc7d4a594bca..c8e1b6c83636 100644
--- a/drivers/char/drm/mga_dma.c
+++ b/drivers/char/drm/mga_dma.c
@@ -437,7 +437,7 @@ static int mga_do_agp_dma_bootstrap(drm_device_t * dev,
437 drm_mga_dma_bootstrap_t * dma_bs) 437 drm_mga_dma_bootstrap_t * dma_bs)
438{ 438{
439 drm_mga_private_t * const dev_priv = (drm_mga_private_t *) dev->dev_private; 439 drm_mga_private_t * const dev_priv = (drm_mga_private_t *) dev->dev_private;
440 const unsigned int warp_size = mga_warp_microcode_size(dev_priv); 440 unsigned int warp_size = mga_warp_microcode_size(dev_priv);
441 int err; 441 int err;
442 unsigned offset; 442 unsigned offset;
443 const unsigned secondary_size = dma_bs->secondary_bin_count 443 const unsigned secondary_size = dma_bs->secondary_bin_count
@@ -499,6 +499,12 @@ static int mga_do_agp_dma_bootstrap(drm_device_t * dev,
499 return err; 499 return err;
500 } 500 }
501 501
502 /* Make drm_addbufs happy by not trying to create a mapping for less
503 * than a page.
504 */
505 if (warp_size < PAGE_SIZE)
506 warp_size = PAGE_SIZE;
507
502 offset = 0; 508 offset = 0;
503 err = drm_addmap( dev, offset, warp_size, 509 err = drm_addmap( dev, offset, warp_size,
504 _DRM_AGP, _DRM_READ_ONLY, & dev_priv->warp ); 510 _DRM_AGP, _DRM_READ_ONLY, & dev_priv->warp );
@@ -587,7 +593,7 @@ static int mga_do_pci_dma_bootstrap(drm_device_t * dev,
587 drm_mga_dma_bootstrap_t * dma_bs) 593 drm_mga_dma_bootstrap_t * dma_bs)
588{ 594{
589 drm_mga_private_t * const dev_priv = (drm_mga_private_t *) dev->dev_private; 595 drm_mga_private_t * const dev_priv = (drm_mga_private_t *) dev->dev_private;
590 const unsigned int warp_size = mga_warp_microcode_size(dev_priv); 596 unsigned int warp_size = mga_warp_microcode_size(dev_priv);
591 unsigned int primary_size; 597 unsigned int primary_size;
592 unsigned int bin_count; 598 unsigned int bin_count;
593 int err; 599 int err;
@@ -599,6 +605,12 @@ static int mga_do_pci_dma_bootstrap(drm_device_t * dev,
599 return DRM_ERR(EFAULT); 605 return DRM_ERR(EFAULT);
600 } 606 }
601 607
608 /* Make drm_addbufs happy by not trying to create a mapping for less
609 * than a page.
610 */
611 if (warp_size < PAGE_SIZE)
612 warp_size = PAGE_SIZE;
613
602 /* The proper alignment is 0x100 for this mapping */ 614 /* The proper alignment is 0x100 for this mapping */
603 err = drm_addmap(dev, 0, warp_size, _DRM_CONSISTENT, 615 err = drm_addmap(dev, 0, warp_size, _DRM_CONSISTENT,
604 _DRM_READ_ONLY, &dev_priv->warp); 616 _DRM_READ_ONLY, &dev_priv->warp);
@@ -812,6 +824,10 @@ static int mga_do_init_dma( drm_device_t *dev, drm_mga_init_t *init )
812 } 824 }
813 825
814 if (! dev_priv->used_new_dma_init) { 826 if (! dev_priv->used_new_dma_init) {
827
828 dev_priv->dma_access = MGA_PAGPXFER;
829 dev_priv->wagp_enable = MGA_WAGP_ENABLE;
830
815 dev_priv->status = drm_core_findmap(dev, init->status_offset); 831 dev_priv->status = drm_core_findmap(dev, init->status_offset);
816 if (!dev_priv->status) { 832 if (!dev_priv->status) {
817 DRM_ERROR("failed to find status page!\n"); 833 DRM_ERROR("failed to find status page!\n");
@@ -928,7 +944,7 @@ static int mga_do_cleanup_dma( drm_device_t *dev )
928 drm_mga_private_t *dev_priv = dev->dev_private; 944 drm_mga_private_t *dev_priv = dev->dev_private;
929 945
930 if ((dev_priv->warp != NULL) 946 if ((dev_priv->warp != NULL)
931 && (dev_priv->mmio->type != _DRM_CONSISTENT)) 947 && (dev_priv->warp->type != _DRM_CONSISTENT))
932 drm_core_ioremapfree(dev_priv->warp, dev); 948 drm_core_ioremapfree(dev_priv->warp, dev);
933 949
934 if ((dev_priv->primary != NULL) 950 if ((dev_priv->primary != NULL)
diff --git a/drivers/char/drm/mga_drv.h b/drivers/char/drm/mga_drv.h
index b22fdbd4f830..6059c5a5b105 100644
--- a/drivers/char/drm/mga_drv.h
+++ b/drivers/char/drm/mga_drv.h
@@ -227,7 +227,7 @@ static inline u32 _MGA_READ(u32 *addr)
227#define MGA_EMIT_STATE( dev_priv, dirty ) \ 227#define MGA_EMIT_STATE( dev_priv, dirty ) \
228do { \ 228do { \
229 if ( (dirty) & ~MGA_UPLOAD_CLIPRECTS ) { \ 229 if ( (dirty) & ~MGA_UPLOAD_CLIPRECTS ) { \
230 if ( dev_priv->chipset == MGA_CARD_TYPE_G400 ) { \ 230 if ( dev_priv->chipset >= MGA_CARD_TYPE_G400 ) { \
231 mga_g400_emit_state( dev_priv ); \ 231 mga_g400_emit_state( dev_priv ); \
232 } else { \ 232 } else { \
233 mga_g200_emit_state( dev_priv ); \ 233 mga_g200_emit_state( dev_priv ); \
diff --git a/drivers/char/drm/mga_state.c b/drivers/char/drm/mga_state.c
index 05bbb4719376..6ac5e006226f 100644
--- a/drivers/char/drm/mga_state.c
+++ b/drivers/char/drm/mga_state.c
@@ -53,7 +53,7 @@ static void mga_emit_clip_rect( drm_mga_private_t *dev_priv,
53 53
54 /* Force reset of DWGCTL on G400 (eliminates clip disable bit). 54 /* Force reset of DWGCTL on G400 (eliminates clip disable bit).
55 */ 55 */
56 if (dev_priv->chipset == MGA_CARD_TYPE_G400) { 56 if (dev_priv->chipset >= MGA_CARD_TYPE_G400) {
57 DMA_BLOCK(MGA_DWGCTL, ctx->dwgctl, 57 DMA_BLOCK(MGA_DWGCTL, ctx->dwgctl,
58 MGA_LEN + MGA_EXEC, 0x80000000, 58 MGA_LEN + MGA_EXEC, 0x80000000,
59 MGA_DWGCTL, ctx->dwgctl, 59 MGA_DWGCTL, ctx->dwgctl,
diff --git a/drivers/ieee1394/ohci1394.c b/drivers/ieee1394/ohci1394.c
index 6a6acbd80af4..4cf9b8f3e336 100644
--- a/drivers/ieee1394/ohci1394.c
+++ b/drivers/ieee1394/ohci1394.c
@@ -2283,8 +2283,9 @@ static void ohci_schedule_iso_tasklets(struct ti_ohci *ohci,
2283{ 2283{
2284 struct ohci1394_iso_tasklet *t; 2284 struct ohci1394_iso_tasklet *t;
2285 unsigned long mask; 2285 unsigned long mask;
2286 unsigned long flags;
2286 2287
2287 spin_lock(&ohci->iso_tasklet_list_lock); 2288 spin_lock_irqsave(&ohci->iso_tasklet_list_lock, flags);
2288 2289
2289 list_for_each_entry(t, &ohci->iso_tasklet_list, link) { 2290 list_for_each_entry(t, &ohci->iso_tasklet_list, link) {
2290 mask = 1 << t->context; 2291 mask = 1 << t->context;
@@ -2295,8 +2296,7 @@ static void ohci_schedule_iso_tasklets(struct ti_ohci *ohci,
2295 tasklet_schedule(&t->tasklet); 2296 tasklet_schedule(&t->tasklet);
2296 } 2297 }
2297 2298
2298 spin_unlock(&ohci->iso_tasklet_list_lock); 2299 spin_unlock_irqrestore(&ohci->iso_tasklet_list_lock, flags);
2299
2300} 2300}
2301 2301
2302static irqreturn_t ohci_irq_handler(int irq, void *dev_id, 2302static irqreturn_t ohci_irq_handler(int irq, void *dev_id,
diff --git a/drivers/ieee1394/raw1394.c b/drivers/ieee1394/raw1394.c
index 315f5ca8bedb..0470f77a9cd1 100644
--- a/drivers/ieee1394/raw1394.c
+++ b/drivers/ieee1394/raw1394.c
@@ -412,6 +412,7 @@ static void fcp_request(struct hpsb_host *host, int nodeid, int direction,
412static ssize_t raw1394_read(struct file *file, char __user * buffer, 412static ssize_t raw1394_read(struct file *file, char __user * buffer,
413 size_t count, loff_t * offset_is_ignored) 413 size_t count, loff_t * offset_is_ignored)
414{ 414{
415 unsigned long flags;
415 struct file_info *fi = (struct file_info *)file->private_data; 416 struct file_info *fi = (struct file_info *)file->private_data;
416 struct list_head *lh; 417 struct list_head *lh;
417 struct pending_request *req; 418 struct pending_request *req;
@@ -435,10 +436,10 @@ static ssize_t raw1394_read(struct file *file, char __user * buffer,
435 } 436 }
436 } 437 }
437 438
438 spin_lock_irq(&fi->reqlists_lock); 439 spin_lock_irqsave(&fi->reqlists_lock, flags);
439 lh = fi->req_complete.next; 440 lh = fi->req_complete.next;
440 list_del(lh); 441 list_del(lh);
441 spin_unlock_irq(&fi->reqlists_lock); 442 spin_unlock_irqrestore(&fi->reqlists_lock, flags);
442 443
443 req = list_entry(lh, struct pending_request, list); 444 req = list_entry(lh, struct pending_request, list);
444 445
@@ -486,6 +487,7 @@ static int state_opened(struct file_info *fi, struct pending_request *req)
486 487
487static int state_initialized(struct file_info *fi, struct pending_request *req) 488static int state_initialized(struct file_info *fi, struct pending_request *req)
488{ 489{
490 unsigned long flags;
489 struct host_info *hi; 491 struct host_info *hi;
490 struct raw1394_khost_list *khl; 492 struct raw1394_khost_list *khl;
491 493
@@ -499,7 +501,7 @@ static int state_initialized(struct file_info *fi, struct pending_request *req)
499 501
500 switch (req->req.type) { 502 switch (req->req.type) {
501 case RAW1394_REQ_LIST_CARDS: 503 case RAW1394_REQ_LIST_CARDS:
502 spin_lock_irq(&host_info_lock); 504 spin_lock_irqsave(&host_info_lock, flags);
503 khl = kmalloc(sizeof(struct raw1394_khost_list) * host_count, 505 khl = kmalloc(sizeof(struct raw1394_khost_list) * host_count,
504 SLAB_ATOMIC); 506 SLAB_ATOMIC);
505 507
@@ -513,7 +515,7 @@ static int state_initialized(struct file_info *fi, struct pending_request *req)
513 khl++; 515 khl++;
514 } 516 }
515 } 517 }
516 spin_unlock_irq(&host_info_lock); 518 spin_unlock_irqrestore(&host_info_lock, flags);
517 519
518 if (khl != NULL) { 520 if (khl != NULL) {
519 req->req.error = RAW1394_ERROR_NONE; 521 req->req.error = RAW1394_ERROR_NONE;
@@ -528,7 +530,7 @@ static int state_initialized(struct file_info *fi, struct pending_request *req)
528 break; 530 break;
529 531
530 case RAW1394_REQ_SET_CARD: 532 case RAW1394_REQ_SET_CARD:
531 spin_lock_irq(&host_info_lock); 533 spin_lock_irqsave(&host_info_lock, flags);
532 if (req->req.misc < host_count) { 534 if (req->req.misc < host_count) {
533 list_for_each_entry(hi, &host_info_list, list) { 535 list_for_each_entry(hi, &host_info_list, list) {
534 if (!req->req.misc--) 536 if (!req->req.misc--)
@@ -550,7 +552,7 @@ static int state_initialized(struct file_info *fi, struct pending_request *req)
550 } else { 552 } else {
551 req->req.error = RAW1394_ERROR_INVALID_ARG; 553 req->req.error = RAW1394_ERROR_INVALID_ARG;
552 } 554 }
553 spin_unlock_irq(&host_info_lock); 555 spin_unlock_irqrestore(&host_info_lock, flags);
554 556
555 req->req.length = 0; 557 req->req.length = 0;
556 break; 558 break;
@@ -569,7 +571,6 @@ static void handle_iso_listen(struct file_info *fi, struct pending_request *req)
569{ 571{
570 int channel = req->req.misc; 572 int channel = req->req.misc;
571 573
572 spin_lock_irq(&host_info_lock);
573 if ((channel > 63) || (channel < -64)) { 574 if ((channel > 63) || (channel < -64)) {
574 req->req.error = RAW1394_ERROR_INVALID_ARG; 575 req->req.error = RAW1394_ERROR_INVALID_ARG;
575 } else if (channel >= 0) { 576 } else if (channel >= 0) {
@@ -601,7 +602,6 @@ static void handle_iso_listen(struct file_info *fi, struct pending_request *req)
601 602
602 req->req.length = 0; 603 req->req.length = 0;
603 queue_complete_req(req); 604 queue_complete_req(req);
604 spin_unlock_irq(&host_info_lock);
605} 605}
606 606
607static void handle_fcp_listen(struct file_info *fi, struct pending_request *req) 607static void handle_fcp_listen(struct file_info *fi, struct pending_request *req)
@@ -627,6 +627,7 @@ static void handle_fcp_listen(struct file_info *fi, struct pending_request *req)
627static int handle_async_request(struct file_info *fi, 627static int handle_async_request(struct file_info *fi,
628 struct pending_request *req, int node) 628 struct pending_request *req, int node)
629{ 629{
630 unsigned long flags;
630 struct hpsb_packet *packet = NULL; 631 struct hpsb_packet *packet = NULL;
631 u64 addr = req->req.address & 0xffffffffffffULL; 632 u64 addr = req->req.address & 0xffffffffffffULL;
632 633
@@ -761,9 +762,9 @@ static int handle_async_request(struct file_info *fi,
761 hpsb_set_packet_complete_task(packet, 762 hpsb_set_packet_complete_task(packet,
762 (void (*)(void *))queue_complete_cb, req); 763 (void (*)(void *))queue_complete_cb, req);
763 764
764 spin_lock_irq(&fi->reqlists_lock); 765 spin_lock_irqsave(&fi->reqlists_lock, flags);
765 list_add_tail(&req->list, &fi->req_pending); 766 list_add_tail(&req->list, &fi->req_pending);
766 spin_unlock_irq(&fi->reqlists_lock); 767 spin_unlock_irqrestore(&fi->reqlists_lock, flags);
767 768
768 packet->generation = req->req.generation; 769 packet->generation = req->req.generation;
769 770
@@ -779,6 +780,7 @@ static int handle_async_request(struct file_info *fi,
779static int handle_iso_send(struct file_info *fi, struct pending_request *req, 780static int handle_iso_send(struct file_info *fi, struct pending_request *req,
780 int channel) 781 int channel)
781{ 782{
783 unsigned long flags;
782 struct hpsb_packet *packet; 784 struct hpsb_packet *packet;
783 785
784 packet = hpsb_make_isopacket(fi->host, req->req.length, channel & 0x3f, 786 packet = hpsb_make_isopacket(fi->host, req->req.length, channel & 0x3f,
@@ -804,9 +806,9 @@ static int handle_iso_send(struct file_info *fi, struct pending_request *req,
804 (void (*)(void *))queue_complete_req, 806 (void (*)(void *))queue_complete_req,
805 req); 807 req);
806 808
807 spin_lock_irq(&fi->reqlists_lock); 809 spin_lock_irqsave(&fi->reqlists_lock, flags);
808 list_add_tail(&req->list, &fi->req_pending); 810 list_add_tail(&req->list, &fi->req_pending);
809 spin_unlock_irq(&fi->reqlists_lock); 811 spin_unlock_irqrestore(&fi->reqlists_lock, flags);
810 812
811 /* Update the generation of the packet just before sending. */ 813 /* Update the generation of the packet just before sending. */
812 packet->generation = req->req.generation; 814 packet->generation = req->req.generation;
@@ -821,6 +823,7 @@ static int handle_iso_send(struct file_info *fi, struct pending_request *req,
821 823
822static int handle_async_send(struct file_info *fi, struct pending_request *req) 824static int handle_async_send(struct file_info *fi, struct pending_request *req)
823{ 825{
826 unsigned long flags;
824 struct hpsb_packet *packet; 827 struct hpsb_packet *packet;
825 int header_length = req->req.misc & 0xffff; 828 int header_length = req->req.misc & 0xffff;
826 int expect_response = req->req.misc >> 16; 829 int expect_response = req->req.misc >> 16;
@@ -867,9 +870,9 @@ static int handle_async_send(struct file_info *fi, struct pending_request *req)
867 hpsb_set_packet_complete_task(packet, 870 hpsb_set_packet_complete_task(packet,
868 (void (*)(void *))queue_complete_cb, req); 871 (void (*)(void *))queue_complete_cb, req);
869 872
870 spin_lock_irq(&fi->reqlists_lock); 873 spin_lock_irqsave(&fi->reqlists_lock, flags);
871 list_add_tail(&req->list, &fi->req_pending); 874 list_add_tail(&req->list, &fi->req_pending);
872 spin_unlock_irq(&fi->reqlists_lock); 875 spin_unlock_irqrestore(&fi->reqlists_lock, flags);
873 876
874 /* Update the generation of the packet just before sending. */ 877 /* Update the generation of the packet just before sending. */
875 packet->generation = req->req.generation; 878 packet->generation = req->req.generation;
@@ -885,6 +888,7 @@ static int handle_async_send(struct file_info *fi, struct pending_request *req)
885static int arm_read(struct hpsb_host *host, int nodeid, quadlet_t * buffer, 888static int arm_read(struct hpsb_host *host, int nodeid, quadlet_t * buffer,
886 u64 addr, size_t length, u16 flags) 889 u64 addr, size_t length, u16 flags)
887{ 890{
891 unsigned long irqflags;
888 struct pending_request *req; 892 struct pending_request *req;
889 struct host_info *hi; 893 struct host_info *hi;
890 struct file_info *fi = NULL; 894 struct file_info *fi = NULL;
@@ -899,7 +903,7 @@ static int arm_read(struct hpsb_host *host, int nodeid, quadlet_t * buffer,
899 "addr: %4.4x %8.8x length: %Zu", nodeid, 903 "addr: %4.4x %8.8x length: %Zu", nodeid,
900 (u16) ((addr >> 32) & 0xFFFF), (u32) (addr & 0xFFFFFFFF), 904 (u16) ((addr >> 32) & 0xFFFF), (u32) (addr & 0xFFFFFFFF),
901 length); 905 length);
902 spin_lock(&host_info_lock); 906 spin_lock_irqsave(&host_info_lock, irqflags);
903 hi = find_host_info(host); /* search address-entry */ 907 hi = find_host_info(host); /* search address-entry */
904 if (hi != NULL) { 908 if (hi != NULL) {
905 list_for_each_entry(fi, &hi->file_info_list, list) { 909 list_for_each_entry(fi, &hi->file_info_list, list) {
@@ -924,7 +928,7 @@ static int arm_read(struct hpsb_host *host, int nodeid, quadlet_t * buffer,
924 if (!found) { 928 if (!found) {
925 printk(KERN_ERR "raw1394: arm_read FAILED addr_entry not found" 929 printk(KERN_ERR "raw1394: arm_read FAILED addr_entry not found"
926 " -> rcode_address_error\n"); 930 " -> rcode_address_error\n");
927 spin_unlock(&host_info_lock); 931 spin_unlock_irqrestore(&host_info_lock, irqflags);
928 return (RCODE_ADDRESS_ERROR); 932 return (RCODE_ADDRESS_ERROR);
929 } else { 933 } else {
930 DBGMSG("arm_read addr_entry FOUND"); 934 DBGMSG("arm_read addr_entry FOUND");
@@ -954,7 +958,7 @@ static int arm_read(struct hpsb_host *host, int nodeid, quadlet_t * buffer,
954 req = __alloc_pending_request(SLAB_ATOMIC); 958 req = __alloc_pending_request(SLAB_ATOMIC);
955 if (!req) { 959 if (!req) {
956 DBGMSG("arm_read -> rcode_conflict_error"); 960 DBGMSG("arm_read -> rcode_conflict_error");
957 spin_unlock(&host_info_lock); 961 spin_unlock_irqrestore(&host_info_lock, irqflags);
958 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected. 962 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected.
959 The request may be retried */ 963 The request may be retried */
960 } 964 }
@@ -974,7 +978,7 @@ static int arm_read(struct hpsb_host *host, int nodeid, quadlet_t * buffer,
974 if (!(req->data)) { 978 if (!(req->data)) {
975 free_pending_request(req); 979 free_pending_request(req);
976 DBGMSG("arm_read -> rcode_conflict_error"); 980 DBGMSG("arm_read -> rcode_conflict_error");
977 spin_unlock(&host_info_lock); 981 spin_unlock_irqrestore(&host_info_lock, irqflags);
978 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected. 982 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected.
979 The request may be retried */ 983 The request may be retried */
980 } 984 }
@@ -1031,13 +1035,14 @@ static int arm_read(struct hpsb_host *host, int nodeid, quadlet_t * buffer,
1031 sizeof(struct arm_request)); 1035 sizeof(struct arm_request));
1032 queue_complete_req(req); 1036 queue_complete_req(req);
1033 } 1037 }
1034 spin_unlock(&host_info_lock); 1038 spin_unlock_irqrestore(&host_info_lock, irqflags);
1035 return (rcode); 1039 return (rcode);
1036} 1040}
1037 1041
1038static int arm_write(struct hpsb_host *host, int nodeid, int destid, 1042static int arm_write(struct hpsb_host *host, int nodeid, int destid,
1039 quadlet_t * data, u64 addr, size_t length, u16 flags) 1043 quadlet_t * data, u64 addr, size_t length, u16 flags)
1040{ 1044{
1045 unsigned long irqflags;
1041 struct pending_request *req; 1046 struct pending_request *req;
1042 struct host_info *hi; 1047 struct host_info *hi;
1043 struct file_info *fi = NULL; 1048 struct file_info *fi = NULL;
@@ -1052,7 +1057,7 @@ static int arm_write(struct hpsb_host *host, int nodeid, int destid,
1052 "addr: %4.4x %8.8x length: %Zu", nodeid, 1057 "addr: %4.4x %8.8x length: %Zu", nodeid,
1053 (u16) ((addr >> 32) & 0xFFFF), (u32) (addr & 0xFFFFFFFF), 1058 (u16) ((addr >> 32) & 0xFFFF), (u32) (addr & 0xFFFFFFFF),
1054 length); 1059 length);
1055 spin_lock(&host_info_lock); 1060 spin_lock_irqsave(&host_info_lock, irqflags);
1056 hi = find_host_info(host); /* search address-entry */ 1061 hi = find_host_info(host); /* search address-entry */
1057 if (hi != NULL) { 1062 if (hi != NULL) {
1058 list_for_each_entry(fi, &hi->file_info_list, list) { 1063 list_for_each_entry(fi, &hi->file_info_list, list) {
@@ -1077,7 +1082,7 @@ static int arm_write(struct hpsb_host *host, int nodeid, int destid,
1077 if (!found) { 1082 if (!found) {
1078 printk(KERN_ERR "raw1394: arm_write FAILED addr_entry not found" 1083 printk(KERN_ERR "raw1394: arm_write FAILED addr_entry not found"
1079 " -> rcode_address_error\n"); 1084 " -> rcode_address_error\n");
1080 spin_unlock(&host_info_lock); 1085 spin_unlock_irqrestore(&host_info_lock, irqflags);
1081 return (RCODE_ADDRESS_ERROR); 1086 return (RCODE_ADDRESS_ERROR);
1082 } else { 1087 } else {
1083 DBGMSG("arm_write addr_entry FOUND"); 1088 DBGMSG("arm_write addr_entry FOUND");
@@ -1106,7 +1111,7 @@ static int arm_write(struct hpsb_host *host, int nodeid, int destid,
1106 req = __alloc_pending_request(SLAB_ATOMIC); 1111 req = __alloc_pending_request(SLAB_ATOMIC);
1107 if (!req) { 1112 if (!req) {
1108 DBGMSG("arm_write -> rcode_conflict_error"); 1113 DBGMSG("arm_write -> rcode_conflict_error");
1109 spin_unlock(&host_info_lock); 1114 spin_unlock_irqrestore(&host_info_lock, irqflags);
1110 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected. 1115 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected.
1111 The request my be retried */ 1116 The request my be retried */
1112 } 1117 }
@@ -1118,7 +1123,7 @@ static int arm_write(struct hpsb_host *host, int nodeid, int destid,
1118 if (!(req->data)) { 1123 if (!(req->data)) {
1119 free_pending_request(req); 1124 free_pending_request(req);
1120 DBGMSG("arm_write -> rcode_conflict_error"); 1125 DBGMSG("arm_write -> rcode_conflict_error");
1121 spin_unlock(&host_info_lock); 1126 spin_unlock_irqrestore(&host_info_lock, irqflags);
1122 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected. 1127 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected.
1123 The request may be retried */ 1128 The request may be retried */
1124 } 1129 }
@@ -1165,7 +1170,7 @@ static int arm_write(struct hpsb_host *host, int nodeid, int destid,
1165 sizeof(struct arm_request)); 1170 sizeof(struct arm_request));
1166 queue_complete_req(req); 1171 queue_complete_req(req);
1167 } 1172 }
1168 spin_unlock(&host_info_lock); 1173 spin_unlock_irqrestore(&host_info_lock, irqflags);
1169 return (rcode); 1174 return (rcode);
1170} 1175}
1171 1176
@@ -1173,6 +1178,7 @@ static int arm_lock(struct hpsb_host *host, int nodeid, quadlet_t * store,
1173 u64 addr, quadlet_t data, quadlet_t arg, int ext_tcode, 1178 u64 addr, quadlet_t data, quadlet_t arg, int ext_tcode,
1174 u16 flags) 1179 u16 flags)
1175{ 1180{
1181 unsigned long irqflags;
1176 struct pending_request *req; 1182 struct pending_request *req;
1177 struct host_info *hi; 1183 struct host_info *hi;
1178 struct file_info *fi = NULL; 1184 struct file_info *fi = NULL;
@@ -1198,7 +1204,7 @@ static int arm_lock(struct hpsb_host *host, int nodeid, quadlet_t * store,
1198 (u32) (addr & 0xFFFFFFFF), ext_tcode & 0xFF, 1204 (u32) (addr & 0xFFFFFFFF), ext_tcode & 0xFF,
1199 be32_to_cpu(data), be32_to_cpu(arg)); 1205 be32_to_cpu(data), be32_to_cpu(arg));
1200 } 1206 }
1201 spin_lock(&host_info_lock); 1207 spin_lock_irqsave(&host_info_lock, irqflags);
1202 hi = find_host_info(host); /* search address-entry */ 1208 hi = find_host_info(host); /* search address-entry */
1203 if (hi != NULL) { 1209 if (hi != NULL) {
1204 list_for_each_entry(fi, &hi->file_info_list, list) { 1210 list_for_each_entry(fi, &hi->file_info_list, list) {
@@ -1224,7 +1230,7 @@ static int arm_lock(struct hpsb_host *host, int nodeid, quadlet_t * store,
1224 if (!found) { 1230 if (!found) {
1225 printk(KERN_ERR "raw1394: arm_lock FAILED addr_entry not found" 1231 printk(KERN_ERR "raw1394: arm_lock FAILED addr_entry not found"
1226 " -> rcode_address_error\n"); 1232 " -> rcode_address_error\n");
1227 spin_unlock(&host_info_lock); 1233 spin_unlock_irqrestore(&host_info_lock, irqflags);
1228 return (RCODE_ADDRESS_ERROR); 1234 return (RCODE_ADDRESS_ERROR);
1229 } else { 1235 } else {
1230 DBGMSG("arm_lock addr_entry FOUND"); 1236 DBGMSG("arm_lock addr_entry FOUND");
@@ -1307,7 +1313,7 @@ static int arm_lock(struct hpsb_host *host, int nodeid, quadlet_t * store,
1307 req = __alloc_pending_request(SLAB_ATOMIC); 1313 req = __alloc_pending_request(SLAB_ATOMIC);
1308 if (!req) { 1314 if (!req) {
1309 DBGMSG("arm_lock -> rcode_conflict_error"); 1315 DBGMSG("arm_lock -> rcode_conflict_error");
1310 spin_unlock(&host_info_lock); 1316 spin_unlock_irqrestore(&host_info_lock, irqflags);
1311 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected. 1317 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected.
1312 The request may be retried */ 1318 The request may be retried */
1313 } 1319 }
@@ -1316,7 +1322,7 @@ static int arm_lock(struct hpsb_host *host, int nodeid, quadlet_t * store,
1316 if (!(req->data)) { 1322 if (!(req->data)) {
1317 free_pending_request(req); 1323 free_pending_request(req);
1318 DBGMSG("arm_lock -> rcode_conflict_error"); 1324 DBGMSG("arm_lock -> rcode_conflict_error");
1319 spin_unlock(&host_info_lock); 1325 spin_unlock_irqrestore(&host_info_lock, irqflags);
1320 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected. 1326 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected.
1321 The request may be retried */ 1327 The request may be retried */
1322 } 1328 }
@@ -1382,7 +1388,7 @@ static int arm_lock(struct hpsb_host *host, int nodeid, quadlet_t * store,
1382 sizeof(struct arm_response) + 2 * sizeof(*store)); 1388 sizeof(struct arm_response) + 2 * sizeof(*store));
1383 queue_complete_req(req); 1389 queue_complete_req(req);
1384 } 1390 }
1385 spin_unlock(&host_info_lock); 1391 spin_unlock_irqrestore(&host_info_lock, irqflags);
1386 return (rcode); 1392 return (rcode);
1387} 1393}
1388 1394
@@ -1390,6 +1396,7 @@ static int arm_lock64(struct hpsb_host *host, int nodeid, octlet_t * store,
1390 u64 addr, octlet_t data, octlet_t arg, int ext_tcode, 1396 u64 addr, octlet_t data, octlet_t arg, int ext_tcode,
1391 u16 flags) 1397 u16 flags)
1392{ 1398{
1399 unsigned long irqflags;
1393 struct pending_request *req; 1400 struct pending_request *req;
1394 struct host_info *hi; 1401 struct host_info *hi;
1395 struct file_info *fi = NULL; 1402 struct file_info *fi = NULL;
@@ -1422,7 +1429,7 @@ static int arm_lock64(struct hpsb_host *host, int nodeid, octlet_t * store,
1422 (u32) ((be64_to_cpu(arg) >> 32) & 0xFFFFFFFF), 1429 (u32) ((be64_to_cpu(arg) >> 32) & 0xFFFFFFFF),
1423 (u32) (be64_to_cpu(arg) & 0xFFFFFFFF)); 1430 (u32) (be64_to_cpu(arg) & 0xFFFFFFFF));
1424 } 1431 }
1425 spin_lock(&host_info_lock); 1432 spin_lock_irqsave(&host_info_lock, irqflags);
1426 hi = find_host_info(host); /* search addressentry in file_info's for host */ 1433 hi = find_host_info(host); /* search addressentry in file_info's for host */
1427 if (hi != NULL) { 1434 if (hi != NULL) {
1428 list_for_each_entry(fi, &hi->file_info_list, list) { 1435 list_for_each_entry(fi, &hi->file_info_list, list) {
@@ -1449,7 +1456,7 @@ static int arm_lock64(struct hpsb_host *host, int nodeid, octlet_t * store,
1449 printk(KERN_ERR 1456 printk(KERN_ERR
1450 "raw1394: arm_lock64 FAILED addr_entry not found" 1457 "raw1394: arm_lock64 FAILED addr_entry not found"
1451 " -> rcode_address_error\n"); 1458 " -> rcode_address_error\n");
1452 spin_unlock(&host_info_lock); 1459 spin_unlock_irqrestore(&host_info_lock, irqflags);
1453 return (RCODE_ADDRESS_ERROR); 1460 return (RCODE_ADDRESS_ERROR);
1454 } else { 1461 } else {
1455 DBGMSG("arm_lock64 addr_entry FOUND"); 1462 DBGMSG("arm_lock64 addr_entry FOUND");
@@ -1533,7 +1540,7 @@ static int arm_lock64(struct hpsb_host *host, int nodeid, octlet_t * store,
1533 DBGMSG("arm_lock64 -> entering notification-section"); 1540 DBGMSG("arm_lock64 -> entering notification-section");
1534 req = __alloc_pending_request(SLAB_ATOMIC); 1541 req = __alloc_pending_request(SLAB_ATOMIC);
1535 if (!req) { 1542 if (!req) {
1536 spin_unlock(&host_info_lock); 1543 spin_unlock_irqrestore(&host_info_lock, irqflags);
1537 DBGMSG("arm_lock64 -> rcode_conflict_error"); 1544 DBGMSG("arm_lock64 -> rcode_conflict_error");
1538 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected. 1545 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected.
1539 The request may be retried */ 1546 The request may be retried */
@@ -1542,7 +1549,7 @@ static int arm_lock64(struct hpsb_host *host, int nodeid, octlet_t * store,
1542 req->data = kmalloc(size, SLAB_ATOMIC); 1549 req->data = kmalloc(size, SLAB_ATOMIC);
1543 if (!(req->data)) { 1550 if (!(req->data)) {
1544 free_pending_request(req); 1551 free_pending_request(req);
1545 spin_unlock(&host_info_lock); 1552 spin_unlock_irqrestore(&host_info_lock, irqflags);
1546 DBGMSG("arm_lock64 -> rcode_conflict_error"); 1553 DBGMSG("arm_lock64 -> rcode_conflict_error");
1547 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected. 1554 return (RCODE_CONFLICT_ERROR); /* A resource conflict was detected.
1548 The request may be retried */ 1555 The request may be retried */
@@ -1609,7 +1616,7 @@ static int arm_lock64(struct hpsb_host *host, int nodeid, octlet_t * store,
1609 sizeof(struct arm_response) + 2 * sizeof(*store)); 1616 sizeof(struct arm_response) + 2 * sizeof(*store));
1610 queue_complete_req(req); 1617 queue_complete_req(req);
1611 } 1618 }
1612 spin_unlock(&host_info_lock); 1619 spin_unlock_irqrestore(&host_info_lock, irqflags);
1613 return (rcode); 1620 return (rcode);
1614} 1621}
1615 1622
@@ -1980,6 +1987,7 @@ static int write_phypacket(struct file_info *fi, struct pending_request *req)
1980 struct hpsb_packet *packet = NULL; 1987 struct hpsb_packet *packet = NULL;
1981 int retval = 0; 1988 int retval = 0;
1982 quadlet_t data; 1989 quadlet_t data;
1990 unsigned long flags;
1983 1991
1984 data = be32_to_cpu((u32) req->req.sendb); 1992 data = be32_to_cpu((u32) req->req.sendb);
1985 DBGMSG("write_phypacket called - quadlet 0x%8.8x ", data); 1993 DBGMSG("write_phypacket called - quadlet 0x%8.8x ", data);
@@ -1990,9 +1998,9 @@ static int write_phypacket(struct file_info *fi, struct pending_request *req)
1990 req->packet = packet; 1998 req->packet = packet;
1991 hpsb_set_packet_complete_task(packet, 1999 hpsb_set_packet_complete_task(packet,
1992 (void (*)(void *))queue_complete_cb, req); 2000 (void (*)(void *))queue_complete_cb, req);
1993 spin_lock_irq(&fi->reqlists_lock); 2001 spin_lock_irqsave(&fi->reqlists_lock, flags);
1994 list_add_tail(&req->list, &fi->req_pending); 2002 list_add_tail(&req->list, &fi->req_pending);
1995 spin_unlock_irq(&fi->reqlists_lock); 2003 spin_unlock_irqrestore(&fi->reqlists_lock, flags);
1996 packet->generation = req->req.generation; 2004 packet->generation = req->req.generation;
1997 retval = hpsb_send_packet(packet); 2005 retval = hpsb_send_packet(packet);
1998 DBGMSG("write_phypacket send_packet called => retval: %d ", retval); 2006 DBGMSG("write_phypacket send_packet called => retval: %d ", retval);
@@ -2659,14 +2667,15 @@ static unsigned int raw1394_poll(struct file *file, poll_table * pt)
2659{ 2667{
2660 struct file_info *fi = file->private_data; 2668 struct file_info *fi = file->private_data;
2661 unsigned int mask = POLLOUT | POLLWRNORM; 2669 unsigned int mask = POLLOUT | POLLWRNORM;
2670 unsigned long flags;
2662 2671
2663 poll_wait(file, &fi->poll_wait_complete, pt); 2672 poll_wait(file, &fi->poll_wait_complete, pt);
2664 2673
2665 spin_lock_irq(&fi->reqlists_lock); 2674 spin_lock_irqsave(&fi->reqlists_lock, flags);
2666 if (!list_empty(&fi->req_complete)) { 2675 if (!list_empty(&fi->req_complete)) {
2667 mask |= POLLIN | POLLRDNORM; 2676 mask |= POLLIN | POLLRDNORM;
2668 } 2677 }
2669 spin_unlock_irq(&fi->reqlists_lock); 2678 spin_unlock_irqrestore(&fi->reqlists_lock, flags);
2670 2679
2671 return mask; 2680 return mask;
2672} 2681}
@@ -2710,6 +2719,7 @@ static int raw1394_release(struct inode *inode, struct file *file)
2710 struct arm_addr *arm_addr = NULL; 2719 struct arm_addr *arm_addr = NULL;
2711 int another_host; 2720 int another_host;
2712 int csr_mod = 0; 2721 int csr_mod = 0;
2722 unsigned long flags;
2713 2723
2714 if (fi->iso_state != RAW1394_ISO_INACTIVE) 2724 if (fi->iso_state != RAW1394_ISO_INACTIVE)
2715 raw1394_iso_shutdown(fi); 2725 raw1394_iso_shutdown(fi);
@@ -2720,13 +2730,11 @@ static int raw1394_release(struct inode *inode, struct file *file)
2720 } 2730 }
2721 } 2731 }
2722 2732
2723 spin_lock_irq(&host_info_lock); 2733 spin_lock_irqsave(&host_info_lock, flags);
2724 fi->listen_channels = 0; 2734 fi->listen_channels = 0;
2725 spin_unlock_irq(&host_info_lock);
2726 2735
2727 fail = 0; 2736 fail = 0;
2728 /* set address-entries invalid */ 2737 /* set address-entries invalid */
2729 spin_lock_irq(&host_info_lock);
2730 2738
2731 while (!list_empty(&fi->addr_list)) { 2739 while (!list_empty(&fi->addr_list)) {
2732 another_host = 0; 2740 another_host = 0;
@@ -2777,14 +2785,14 @@ static int raw1394_release(struct inode *inode, struct file *file)
2777 vfree(addr->addr_space_buffer); 2785 vfree(addr->addr_space_buffer);
2778 kfree(addr); 2786 kfree(addr);
2779 } /* while */ 2787 } /* while */
2780 spin_unlock_irq(&host_info_lock); 2788 spin_unlock_irqrestore(&host_info_lock, flags);
2781 if (fail > 0) { 2789 if (fail > 0) {
2782 printk(KERN_ERR "raw1394: during addr_list-release " 2790 printk(KERN_ERR "raw1394: during addr_list-release "
2783 "error(s) occurred \n"); 2791 "error(s) occurred \n");
2784 } 2792 }
2785 2793
2786 while (!done) { 2794 while (!done) {
2787 spin_lock_irq(&fi->reqlists_lock); 2795 spin_lock_irqsave(&fi->reqlists_lock, flags);
2788 2796
2789 while (!list_empty(&fi->req_complete)) { 2797 while (!list_empty(&fi->req_complete)) {
2790 lh = fi->req_complete.next; 2798 lh = fi->req_complete.next;
@@ -2798,7 +2806,7 @@ static int raw1394_release(struct inode *inode, struct file *file)
2798 if (list_empty(&fi->req_pending)) 2806 if (list_empty(&fi->req_pending))
2799 done = 1; 2807 done = 1;
2800 2808
2801 spin_unlock_irq(&fi->reqlists_lock); 2809 spin_unlock_irqrestore(&fi->reqlists_lock, flags);
2802 2810
2803 if (!done) 2811 if (!done)
2804 down_interruptible(&fi->complete_sem); 2812 down_interruptible(&fi->complete_sem);
@@ -2828,9 +2836,9 @@ static int raw1394_release(struct inode *inode, struct file *file)
2828 fi->host->id); 2836 fi->host->id);
2829 2837
2830 if (fi->state == connected) { 2838 if (fi->state == connected) {
2831 spin_lock_irq(&host_info_lock); 2839 spin_lock_irqsave(&host_info_lock, flags);
2832 list_del(&fi->list); 2840 list_del(&fi->list);
2833 spin_unlock_irq(&host_info_lock); 2841 spin_unlock_irqrestore(&host_info_lock, flags);
2834 2842
2835 put_device(&fi->host->device); 2843 put_device(&fi->host->device);
2836 } 2844 }
diff --git a/drivers/infiniband/hw/mthca/mthca_eq.c b/drivers/infiniband/hw/mthca/mthca_eq.c
index c81fa8e975ef..8dfafda5ed24 100644
--- a/drivers/infiniband/hw/mthca/mthca_eq.c
+++ b/drivers/infiniband/hw/mthca/mthca_eq.c
@@ -396,20 +396,21 @@ static irqreturn_t mthca_tavor_interrupt(int irq, void *dev_ptr, struct pt_regs
396 writel(dev->eq_table.clr_mask, dev->eq_table.clr_int); 396 writel(dev->eq_table.clr_mask, dev->eq_table.clr_int);
397 397
398 ecr = readl(dev->eq_regs.tavor.ecr_base + 4); 398 ecr = readl(dev->eq_regs.tavor.ecr_base + 4);
399 if (ecr) { 399 if (!ecr)
400 writel(ecr, dev->eq_regs.tavor.ecr_base + 400 return IRQ_NONE;
401 MTHCA_ECR_CLR_BASE - MTHCA_ECR_BASE + 4);
402 401
403 for (i = 0; i < MTHCA_NUM_EQ; ++i) 402 writel(ecr, dev->eq_regs.tavor.ecr_base +
404 if (ecr & dev->eq_table.eq[i].eqn_mask && 403 MTHCA_ECR_CLR_BASE - MTHCA_ECR_BASE + 4);
405 mthca_eq_int(dev, &dev->eq_table.eq[i])) { 404
405 for (i = 0; i < MTHCA_NUM_EQ; ++i)
406 if (ecr & dev->eq_table.eq[i].eqn_mask) {
407 if (mthca_eq_int(dev, &dev->eq_table.eq[i]))
406 tavor_set_eq_ci(dev, &dev->eq_table.eq[i], 408 tavor_set_eq_ci(dev, &dev->eq_table.eq[i],
407 dev->eq_table.eq[i].cons_index); 409 dev->eq_table.eq[i].cons_index);
408 tavor_eq_req_not(dev, dev->eq_table.eq[i].eqn); 410 tavor_eq_req_not(dev, dev->eq_table.eq[i].eqn);
409 } 411 }
410 }
411 412
412 return IRQ_RETVAL(ecr); 413 return IRQ_HANDLED;
413} 414}
414 415
415static irqreturn_t mthca_tavor_msi_x_interrupt(int irq, void *eq_ptr, 416static irqreturn_t mthca_tavor_msi_x_interrupt(int irq, void *eq_ptr,
diff --git a/drivers/md/md.c b/drivers/md/md.c
index 2897df90df44..e9476075aa13 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -3063,6 +3063,7 @@ static int md_thread(void * arg)
3063 * many dirty RAID5 blocks. 3063 * many dirty RAID5 blocks.
3064 */ 3064 */
3065 3065
3066 allow_signal(SIGKILL);
3066 complete(thread->event); 3067 complete(thread->event);
3067 while (!kthread_should_stop()) { 3068 while (!kthread_should_stop()) {
3068 void (*run)(mddev_t *); 3069 void (*run)(mddev_t *);
@@ -3111,7 +3112,7 @@ mdk_thread_t *md_register_thread(void (*run) (mddev_t *), mddev_t *mddev,
3111 thread->mddev = mddev; 3112 thread->mddev = mddev;
3112 thread->name = name; 3113 thread->name = name;
3113 thread->timeout = MAX_SCHEDULE_TIMEOUT; 3114 thread->timeout = MAX_SCHEDULE_TIMEOUT;
3114 thread->tsk = kthread_run(md_thread, thread, mdname(thread->mddev)); 3115 thread->tsk = kthread_run(md_thread, thread, name, mdname(thread->mddev));
3115 if (IS_ERR(thread->tsk)) { 3116 if (IS_ERR(thread->tsk)) {
3116 kfree(thread); 3117 kfree(thread);
3117 return NULL; 3118 return NULL;
@@ -3569,6 +3570,7 @@ static void md_do_sync(mddev_t *mddev)
3569 try_again: 3570 try_again:
3570 if (signal_pending(current)) { 3571 if (signal_pending(current)) {
3571 flush_signals(current); 3572 flush_signals(current);
3573 set_bit(MD_RECOVERY_INTR, &mddev->recovery);
3572 goto skip; 3574 goto skip;
3573 } 3575 }
3574 ITERATE_MDDEV(mddev2,tmp) { 3576 ITERATE_MDDEV(mddev2,tmp) {
diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig
index 93570355819a..bbb989df4cf0 100644
--- a/drivers/media/video/Kconfig
+++ b/drivers/media/video/Kconfig
@@ -262,7 +262,6 @@ config VIDEO_SAA7134_DVB
262 depends on VIDEO_SAA7134 && DVB_CORE 262 depends on VIDEO_SAA7134 && DVB_CORE
263 select VIDEO_BUF_DVB 263 select VIDEO_BUF_DVB
264 select DVB_MT352 264 select DVB_MT352
265 select DVB_CX22702
266 select DVB_TDA1004X 265 select DVB_TDA1004X
267 ---help--- 266 ---help---
268 This adds support for DVB cards based on the 267 This adds support for DVB cards based on the
diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c
index 429820e48c69..7de19a84dc74 100644
--- a/drivers/message/fusion/mptsas.c
+++ b/drivers/message/fusion/mptsas.c
@@ -257,8 +257,8 @@ static void mptsas_print_device_pg0(SasDevicePage0_t *pg0)
257 printk("SAS Address=0x%llX\n", le64_to_cpu(sas_address)); 257 printk("SAS Address=0x%llX\n", le64_to_cpu(sas_address));
258 printk("Target ID=0x%X\n", pg0->TargetID); 258 printk("Target ID=0x%X\n", pg0->TargetID);
259 printk("Bus=0x%X\n", pg0->Bus); 259 printk("Bus=0x%X\n", pg0->Bus);
260 printk("PhyNum=0x%X\n", pg0->PhyNum); 260 printk("Parent Phy Num=0x%X\n", pg0->PhyNum);
261 printk("AccessStatus=0x%X\n", le16_to_cpu(pg0->AccessStatus)); 261 printk("Access Status=0x%X\n", le16_to_cpu(pg0->AccessStatus));
262 printk("Device Info=0x%X\n", le32_to_cpu(pg0->DeviceInfo)); 262 printk("Device Info=0x%X\n", le32_to_cpu(pg0->DeviceInfo));
263 printk("Flags=0x%X\n", le16_to_cpu(pg0->Flags)); 263 printk("Flags=0x%X\n", le16_to_cpu(pg0->Flags));
264 printk("Physical Port=0x%X\n", pg0->PhysicalPort); 264 printk("Physical Port=0x%X\n", pg0->PhysicalPort);
@@ -270,7 +270,7 @@ static void mptsas_print_expander_pg1(SasExpanderPage1_t *pg1)
270 printk("---- SAS EXPANDER PAGE 1 ------------\n"); 270 printk("---- SAS EXPANDER PAGE 1 ------------\n");
271 271
272 printk("Physical Port=0x%X\n", pg1->PhysicalPort); 272 printk("Physical Port=0x%X\n", pg1->PhysicalPort);
273 printk("PHY Identifier=0x%X\n", pg1->Phy); 273 printk("PHY Identifier=0x%X\n", pg1->PhyIdentifier);
274 printk("Negotiated Link Rate=0x%X\n", pg1->NegotiatedLinkRate); 274 printk("Negotiated Link Rate=0x%X\n", pg1->NegotiatedLinkRate);
275 printk("Programmed Link Rate=0x%X\n", pg1->ProgrammedLinkRate); 275 printk("Programmed Link Rate=0x%X\n", pg1->ProgrammedLinkRate);
276 printk("Hardware Link Rate=0x%X\n", pg1->HwLinkRate); 276 printk("Hardware Link Rate=0x%X\n", pg1->HwLinkRate);
@@ -604,7 +604,7 @@ mptsas_sas_expander_pg1(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info,
604 mptsas_print_expander_pg1(buffer); 604 mptsas_print_expander_pg1(buffer);
605 605
606 /* save config data */ 606 /* save config data */
607 phy_info->phy_id = buffer->Phy; 607 phy_info->phy_id = buffer->PhyIdentifier;
608 phy_info->port_id = buffer->PhysicalPort; 608 phy_info->port_id = buffer->PhysicalPort;
609 phy_info->negotiated_link_rate = buffer->NegotiatedLinkRate; 609 phy_info->negotiated_link_rate = buffer->NegotiatedLinkRate;
610 phy_info->programmed_link_rate = buffer->ProgrammedLinkRate; 610 phy_info->programmed_link_rate = buffer->ProgrammedLinkRate;
@@ -825,6 +825,8 @@ mptsas_probe_hba_phys(MPT_ADAPTER *ioc, int *index)
825 mptsas_sas_device_pg0(ioc, &port_info->phy_info[i].identify, 825 mptsas_sas_device_pg0(ioc, &port_info->phy_info[i].identify,
826 (MPI_SAS_DEVICE_PGAD_FORM_GET_NEXT_HANDLE << 826 (MPI_SAS_DEVICE_PGAD_FORM_GET_NEXT_HANDLE <<
827 MPI_SAS_DEVICE_PGAD_FORM_SHIFT), handle); 827 MPI_SAS_DEVICE_PGAD_FORM_SHIFT), handle);
828 port_info->phy_info[i].identify.phy_id =
829 port_info->phy_info[i].phy_id;
828 handle = port_info->phy_info[i].identify.handle; 830 handle = port_info->phy_info[i].identify.handle;
829 831
830 if (port_info->phy_info[i].attached.handle) { 832 if (port_info->phy_info[i].attached.handle) {
@@ -881,6 +883,8 @@ mptsas_probe_expander_phys(MPT_ADAPTER *ioc, u32 *handle, int *index)
881 (MPI_SAS_DEVICE_PGAD_FORM_HANDLE << 883 (MPI_SAS_DEVICE_PGAD_FORM_HANDLE <<
882 MPI_SAS_DEVICE_PGAD_FORM_SHIFT), 884 MPI_SAS_DEVICE_PGAD_FORM_SHIFT),
883 port_info->phy_info[i].identify.handle); 885 port_info->phy_info[i].identify.handle);
886 port_info->phy_info[i].identify.phy_id =
887 port_info->phy_info[i].phy_id;
884 } 888 }
885 889
886 if (port_info->phy_info[i].attached.handle) { 890 if (port_info->phy_info[i].attached.handle) {
diff --git a/drivers/net/wireless/orinoco.c b/drivers/net/wireless/orinoco.c
index cf3daaa1b369..15ceaf615756 100644
--- a/drivers/net/wireless/orinoco.c
+++ b/drivers/net/wireless/orinoco.c
@@ -578,8 +578,9 @@ static int orinoco_xmit(struct sk_buff *skb, struct net_device *dev)
578 txfid, NULL); 578 txfid, NULL);
579 if (err) { 579 if (err) {
580 netif_start_queue(dev); 580 netif_start_queue(dev);
581 printk(KERN_ERR "%s: Error %d transmitting packet\n", 581 if (net_ratelimit())
582 dev->name, err); 582 printk(KERN_ERR "%s: Error %d transmitting packet\n",
583 dev->name, err);
583 stats->tx_errors++; 584 stats->tx_errors++;
584 goto fail; 585 goto fail;
585 } 586 }
diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
index 657be948baf7..28ce3a7ee434 100644
--- a/drivers/pci/setup-bus.c
+++ b/drivers/pci/setup-bus.c
@@ -40,7 +40,7 @@
40 * FIXME: IO should be max 256 bytes. However, since we may 40 * FIXME: IO should be max 256 bytes. However, since we may
41 * have a P2P bridge below a cardbus bridge, we need 4K. 41 * have a P2P bridge below a cardbus bridge, we need 4K.
42 */ 42 */
43#define CARDBUS_IO_SIZE (4*1024) 43#define CARDBUS_IO_SIZE (256)
44#define CARDBUS_MEM_SIZE (32*1024*1024) 44#define CARDBUS_MEM_SIZE (32*1024*1024)
45 45
46static void __devinit 46static void __devinit
diff --git a/drivers/scsi/NCR5380.c b/drivers/scsi/NCR5380.c
index d40ba0bd68a3..23392ae7df8b 100644
--- a/drivers/scsi/NCR5380.c
+++ b/drivers/scsi/NCR5380.c
@@ -91,7 +91,7 @@
91#ifndef NDEBUG 91#ifndef NDEBUG
92#define NDEBUG 0 92#define NDEBUG 0
93#endif 93#endif
94#ifndef NDEBUG 94#ifndef NDEBUG_ABORT
95#define NDEBUG_ABORT 0 95#define NDEBUG_ABORT 0
96#endif 96#endif
97 97
diff --git a/drivers/scsi/aacraid/aacraid.h b/drivers/scsi/aacraid/aacraid.h
index 4a99d2f000f4..d54b1cc88d0d 100644
--- a/drivers/scsi/aacraid/aacraid.h
+++ b/drivers/scsi/aacraid/aacraid.h
@@ -19,7 +19,7 @@
19#define AAC_MAX_LUN (8) 19#define AAC_MAX_LUN (8)
20 20
21#define AAC_MAX_HOSTPHYSMEMPAGES (0xfffff) 21#define AAC_MAX_HOSTPHYSMEMPAGES (0xfffff)
22#define AAC_MAX_32BIT_SGBCOUNT ((unsigned short)512) 22#define AAC_MAX_32BIT_SGBCOUNT ((unsigned short)256)
23 23
24/* 24/*
25 * These macros convert from physical channels to virtual channels 25 * These macros convert from physical channels to virtual channels
diff --git a/drivers/scsi/scsi_devinfo.c b/drivers/scsi/scsi_devinfo.c
index 64fc9e21f35b..e69477d1889b 100644
--- a/drivers/scsi/scsi_devinfo.c
+++ b/drivers/scsi/scsi_devinfo.c
@@ -185,6 +185,7 @@ static struct {
185 {"PIONEER", "CD-ROM DRM-600", NULL, BLIST_FORCELUN | BLIST_SINGLELUN}, 185 {"PIONEER", "CD-ROM DRM-600", NULL, BLIST_FORCELUN | BLIST_SINGLELUN},
186 {"PIONEER", "CD-ROM DRM-602X", NULL, BLIST_FORCELUN | BLIST_SINGLELUN}, 186 {"PIONEER", "CD-ROM DRM-602X", NULL, BLIST_FORCELUN | BLIST_SINGLELUN},
187 {"PIONEER", "CD-ROM DRM-604X", NULL, BLIST_FORCELUN | BLIST_SINGLELUN}, 187 {"PIONEER", "CD-ROM DRM-604X", NULL, BLIST_FORCELUN | BLIST_SINGLELUN},
188 {"PIONEER", "CD-ROM DRM-624X", NULL, BLIST_FORCELUN | BLIST_SINGLELUN},
188 {"REGAL", "CDC-4X", NULL, BLIST_MAX5LUN | BLIST_SINGLELUN}, 189 {"REGAL", "CDC-4X", NULL, BLIST_MAX5LUN | BLIST_SINGLELUN},
189 {"SanDisk", "ImageMate CF-SD1", NULL, BLIST_FORCELUN}, 190 {"SanDisk", "ImageMate CF-SD1", NULL, BLIST_FORCELUN},
190 {"SEAGATE", "ST34555N", "0930", BLIST_NOTQ}, /* Chokes on tagged INQUIRY */ 191 {"SEAGATE", "ST34555N", "0930", BLIST_NOTQ}, /* Chokes on tagged INQUIRY */
diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c
index ad5342165079..52b348c36d56 100644
--- a/drivers/scsi/scsi_error.c
+++ b/drivers/scsi/scsi_error.c
@@ -1645,6 +1645,8 @@ int scsi_error_handler(void *data)
1645 set_current_state(TASK_INTERRUPTIBLE); 1645 set_current_state(TASK_INTERRUPTIBLE);
1646 } 1646 }
1647 1647
1648 __set_current_state(TASK_RUNNING);
1649
1648 SCSI_LOG_ERROR_RECOVERY(1, printk("Error handler scsi_eh_%d" 1650 SCSI_LOG_ERROR_RECOVERY(1, printk("Error handler scsi_eh_%d"
1649 " exiting\n",shost->host_no)); 1651 " exiting\n",shost->host_no));
1650 1652
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index dc9c772bc874..0074f28c37b2 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -97,7 +97,6 @@ int scsi_insert_special_req(struct scsi_request *sreq, int at_head)
97} 97}
98 98
99static void scsi_run_queue(struct request_queue *q); 99static void scsi_run_queue(struct request_queue *q);
100static void scsi_release_buffers(struct scsi_cmnd *cmd);
101 100
102/* 101/*
103 * Function: scsi_unprep_request() 102 * Function: scsi_unprep_request()
@@ -1040,8 +1039,10 @@ static int scsi_init_io(struct scsi_cmnd *cmd)
1040 * if sg table allocation fails, requeue request later. 1039 * if sg table allocation fails, requeue request later.
1041 */ 1040 */
1042 sgpnt = scsi_alloc_sgtable(cmd, GFP_ATOMIC); 1041 sgpnt = scsi_alloc_sgtable(cmd, GFP_ATOMIC);
1043 if (unlikely(!sgpnt)) 1042 if (unlikely(!sgpnt)) {
1043 scsi_unprep_request(req);
1044 return BLKPREP_DEFER; 1044 return BLKPREP_DEFER;
1045 }
1045 1046
1046 cmd->request_buffer = (char *) sgpnt; 1047 cmd->request_buffer = (char *) sgpnt;
1047 cmd->request_bufflen = req->nr_sectors << 9; 1048 cmd->request_bufflen = req->nr_sectors << 9;
@@ -1245,8 +1246,8 @@ static int scsi_prep_fn(struct request_queue *q, struct request *req)
1245 */ 1246 */
1246 ret = scsi_init_io(cmd); 1247 ret = scsi_init_io(cmd);
1247 switch(ret) { 1248 switch(ret) {
1249 /* For BLKPREP_KILL/DEFER the cmd was released */
1248 case BLKPREP_KILL: 1250 case BLKPREP_KILL:
1249 /* BLKPREP_KILL return also releases the command */
1250 goto kill; 1251 goto kill;
1251 case BLKPREP_DEFER: 1252 case BLKPREP_DEFER:
1252 goto defer; 1253 goto defer;
diff --git a/drivers/scsi/scsi_transport_fc.c b/drivers/scsi/scsi_transport_fc.c
index 2cab556b6e82..771e97ef136e 100644
--- a/drivers/scsi/scsi_transport_fc.c
+++ b/drivers/scsi/scsi_transport_fc.c
@@ -819,12 +819,15 @@ show_fc_private_host_tgtid_bind_type(struct class_device *cdev, char *buf)
819 return snprintf(buf, FC_BINDTYPE_MAX_NAMELEN, "%s\n", name); 819 return snprintf(buf, FC_BINDTYPE_MAX_NAMELEN, "%s\n", name);
820} 820}
821 821
822#define get_list_head_entry(pos, head, member) \
823 pos = list_entry((head)->next, typeof(*pos), member)
824
822static ssize_t 825static ssize_t
823store_fc_private_host_tgtid_bind_type(struct class_device *cdev, 826store_fc_private_host_tgtid_bind_type(struct class_device *cdev,
824 const char *buf, size_t count) 827 const char *buf, size_t count)
825{ 828{
826 struct Scsi_Host *shost = transport_class_to_shost(cdev); 829 struct Scsi_Host *shost = transport_class_to_shost(cdev);
827 struct fc_rport *rport, *next_rport; 830 struct fc_rport *rport;
828 enum fc_tgtid_binding_type val; 831 enum fc_tgtid_binding_type val;
829 unsigned long flags; 832 unsigned long flags;
830 833
@@ -834,9 +837,13 @@ store_fc_private_host_tgtid_bind_type(struct class_device *cdev,
834 /* if changing bind type, purge all unused consistent bindings */ 837 /* if changing bind type, purge all unused consistent bindings */
835 if (val != fc_host_tgtid_bind_type(shost)) { 838 if (val != fc_host_tgtid_bind_type(shost)) {
836 spin_lock_irqsave(shost->host_lock, flags); 839 spin_lock_irqsave(shost->host_lock, flags);
837 list_for_each_entry_safe(rport, next_rport, 840 while (!list_empty(&fc_host_rport_bindings(shost))) {
838 &fc_host_rport_bindings(shost), peers) 841 get_list_head_entry(rport,
842 &fc_host_rport_bindings(shost), peers);
843 spin_unlock_irqrestore(shost->host_lock, flags);
839 fc_rport_terminate(rport); 844 fc_rport_terminate(rport);
845 spin_lock_irqsave(shost->host_lock, flags);
846 }
840 spin_unlock_irqrestore(shost->host_lock, flags); 847 spin_unlock_irqrestore(shost->host_lock, flags);
841 } 848 }
842 849
diff --git a/fs/aio.c b/fs/aio.c
index 9fe7216457d8..edfca5b75535 100644
--- a/fs/aio.c
+++ b/fs/aio.c
@@ -1397,6 +1397,9 @@ static ssize_t aio_setup_iocb(struct kiocb *kiocb)
1397 if (unlikely(!access_ok(VERIFY_WRITE, kiocb->ki_buf, 1397 if (unlikely(!access_ok(VERIFY_WRITE, kiocb->ki_buf,
1398 kiocb->ki_left))) 1398 kiocb->ki_left)))
1399 break; 1399 break;
1400 ret = security_file_permission(file, MAY_READ);
1401 if (unlikely(ret))
1402 break;
1400 ret = -EINVAL; 1403 ret = -EINVAL;
1401 if (file->f_op->aio_read) 1404 if (file->f_op->aio_read)
1402 kiocb->ki_retry = aio_pread; 1405 kiocb->ki_retry = aio_pread;
@@ -1409,6 +1412,9 @@ static ssize_t aio_setup_iocb(struct kiocb *kiocb)
1409 if (unlikely(!access_ok(VERIFY_READ, kiocb->ki_buf, 1412 if (unlikely(!access_ok(VERIFY_READ, kiocb->ki_buf,
1410 kiocb->ki_left))) 1413 kiocb->ki_left)))
1411 break; 1414 break;
1415 ret = security_file_permission(file, MAY_WRITE);
1416 if (unlikely(ret))
1417 break;
1412 ret = -EINVAL; 1418 ret = -EINVAL;
1413 if (file->f_op->aio_write) 1419 if (file->f_op->aio_write)
1414 kiocb->ki_retry = aio_pwrite; 1420 kiocb->ki_retry = aio_pwrite;
diff --git a/fs/inotify.c b/fs/inotify.c
index a37e9fb1da58..9fbaebfdf40b 100644
--- a/fs/inotify.c
+++ b/fs/inotify.c
@@ -176,6 +176,7 @@ static inline void put_inotify_dev(struct inotify_device *dev)
176 if (atomic_dec_and_test(&dev->count)) { 176 if (atomic_dec_and_test(&dev->count)) {
177 atomic_dec(&dev->user->inotify_devs); 177 atomic_dec(&dev->user->inotify_devs);
178 free_uid(dev->user); 178 free_uid(dev->user);
179 idr_destroy(&dev->idr);
179 kfree(dev); 180 kfree(dev);
180 } 181 }
181} 182}
diff --git a/include/asm-alpha/atomic.h b/include/asm-alpha/atomic.h
index 1b383e3cb68c..0b40bad00289 100644
--- a/include/asm-alpha/atomic.h
+++ b/include/asm-alpha/atomic.h
@@ -100,18 +100,19 @@ static __inline__ void atomic64_sub(long i, atomic64_t * v)
100static __inline__ long atomic_add_return(int i, atomic_t * v) 100static __inline__ long atomic_add_return(int i, atomic_t * v)
101{ 101{
102 long temp, result; 102 long temp, result;
103 smp_mb();
103 __asm__ __volatile__( 104 __asm__ __volatile__(
104 "1: ldl_l %0,%1\n" 105 "1: ldl_l %0,%1\n"
105 " addl %0,%3,%2\n" 106 " addl %0,%3,%2\n"
106 " addl %0,%3,%0\n" 107 " addl %0,%3,%0\n"
107 " stl_c %0,%1\n" 108 " stl_c %0,%1\n"
108 " beq %0,2f\n" 109 " beq %0,2f\n"
109 " mb\n"
110 ".subsection 2\n" 110 ".subsection 2\n"
111 "2: br 1b\n" 111 "2: br 1b\n"
112 ".previous" 112 ".previous"
113 :"=&r" (temp), "=m" (v->counter), "=&r" (result) 113 :"=&r" (temp), "=m" (v->counter), "=&r" (result)
114 :"Ir" (i), "m" (v->counter) : "memory"); 114 :"Ir" (i), "m" (v->counter) : "memory");
115 smp_mb();
115 return result; 116 return result;
116} 117}
117 118
@@ -120,54 +121,57 @@ static __inline__ long atomic_add_return(int i, atomic_t * v)
120static __inline__ long atomic64_add_return(long i, atomic64_t * v) 121static __inline__ long atomic64_add_return(long i, atomic64_t * v)
121{ 122{
122 long temp, result; 123 long temp, result;
124 smp_mb();
123 __asm__ __volatile__( 125 __asm__ __volatile__(
124 "1: ldq_l %0,%1\n" 126 "1: ldq_l %0,%1\n"
125 " addq %0,%3,%2\n" 127 " addq %0,%3,%2\n"
126 " addq %0,%3,%0\n" 128 " addq %0,%3,%0\n"
127 " stq_c %0,%1\n" 129 " stq_c %0,%1\n"
128 " beq %0,2f\n" 130 " beq %0,2f\n"
129 " mb\n"
130 ".subsection 2\n" 131 ".subsection 2\n"
131 "2: br 1b\n" 132 "2: br 1b\n"
132 ".previous" 133 ".previous"
133 :"=&r" (temp), "=m" (v->counter), "=&r" (result) 134 :"=&r" (temp), "=m" (v->counter), "=&r" (result)
134 :"Ir" (i), "m" (v->counter) : "memory"); 135 :"Ir" (i), "m" (v->counter) : "memory");
136 smp_mb();
135 return result; 137 return result;
136} 138}
137 139
138static __inline__ long atomic_sub_return(int i, atomic_t * v) 140static __inline__ long atomic_sub_return(int i, atomic_t * v)
139{ 141{
140 long temp, result; 142 long temp, result;
143 smp_mb();
141 __asm__ __volatile__( 144 __asm__ __volatile__(
142 "1: ldl_l %0,%1\n" 145 "1: ldl_l %0,%1\n"
143 " subl %0,%3,%2\n" 146 " subl %0,%3,%2\n"
144 " subl %0,%3,%0\n" 147 " subl %0,%3,%0\n"
145 " stl_c %0,%1\n" 148 " stl_c %0,%1\n"
146 " beq %0,2f\n" 149 " beq %0,2f\n"
147 " mb\n"
148 ".subsection 2\n" 150 ".subsection 2\n"
149 "2: br 1b\n" 151 "2: br 1b\n"
150 ".previous" 152 ".previous"
151 :"=&r" (temp), "=m" (v->counter), "=&r" (result) 153 :"=&r" (temp), "=m" (v->counter), "=&r" (result)
152 :"Ir" (i), "m" (v->counter) : "memory"); 154 :"Ir" (i), "m" (v->counter) : "memory");
155 smp_mb();
153 return result; 156 return result;
154} 157}
155 158
156static __inline__ long atomic64_sub_return(long i, atomic64_t * v) 159static __inline__ long atomic64_sub_return(long i, atomic64_t * v)
157{ 160{
158 long temp, result; 161 long temp, result;
162 smp_mb();
159 __asm__ __volatile__( 163 __asm__ __volatile__(
160 "1: ldq_l %0,%1\n" 164 "1: ldq_l %0,%1\n"
161 " subq %0,%3,%2\n" 165 " subq %0,%3,%2\n"
162 " subq %0,%3,%0\n" 166 " subq %0,%3,%0\n"
163 " stq_c %0,%1\n" 167 " stq_c %0,%1\n"
164 " beq %0,2f\n" 168 " beq %0,2f\n"
165 " mb\n"
166 ".subsection 2\n" 169 ".subsection 2\n"
167 "2: br 1b\n" 170 "2: br 1b\n"
168 ".previous" 171 ".previous"
169 :"=&r" (temp), "=m" (v->counter), "=&r" (result) 172 :"=&r" (temp), "=m" (v->counter), "=&r" (result)
170 :"Ir" (i), "m" (v->counter) : "memory"); 173 :"Ir" (i), "m" (v->counter) : "memory");
174 smp_mb();
171 return result; 175 return result;
172} 176}
173 177
diff --git a/include/asm-arm/arch-pxa/pxa-regs.h b/include/asm-arm/arch-pxa/pxa-regs.h
index 13fa2deb4ddd..3af7165ab0d7 100644
--- a/include/asm-arm/arch-pxa/pxa-regs.h
+++ b/include/asm-arm/arch-pxa/pxa-regs.h
@@ -653,7 +653,7 @@
653 653
654#define UDCCS_IO_RFS (1 << 0) /* Receive FIFO service */ 654#define UDCCS_IO_RFS (1 << 0) /* Receive FIFO service */
655#define UDCCS_IO_RPC (1 << 1) /* Receive packet complete */ 655#define UDCCS_IO_RPC (1 << 1) /* Receive packet complete */
656#define UDCCS_IO_ROF (1 << 3) /* Receive overflow */ 656#define UDCCS_IO_ROF (1 << 2) /* Receive overflow */
657#define UDCCS_IO_DME (1 << 3) /* DMA enable */ 657#define UDCCS_IO_DME (1 << 3) /* DMA enable */
658#define UDCCS_IO_RNE (1 << 6) /* Receive FIFO not empty */ 658#define UDCCS_IO_RNE (1 << 6) /* Receive FIFO not empty */
659#define UDCCS_IO_RSP (1 << 7) /* Receive short packet */ 659#define UDCCS_IO_RSP (1 << 7) /* Receive short packet */
diff --git a/include/asm-arm/arch-s3c2410/regs-clock.h b/include/asm-arm/arch-s3c2410/regs-clock.h
index 16f4c3cc1388..34360706e016 100644
--- a/include/asm-arm/arch-s3c2410/regs-clock.h
+++ b/include/asm-arm/arch-s3c2410/regs-clock.h
@@ -18,7 +18,9 @@
18 * 10-Feb-2005 Ben Dooks Fixed CAMDIVN address (Guillaume Gourat) 18 * 10-Feb-2005 Ben Dooks Fixed CAMDIVN address (Guillaume Gourat)
19 * 10-Mar-2005 Lucas Villa Real Changed S3C2410_VA to S3C24XX_VA 19 * 10-Mar-2005 Lucas Villa Real Changed S3C2410_VA to S3C24XX_VA
20 * 27-Aug-2005 Ben Dooks Add clock-slow info 20 * 27-Aug-2005 Ben Dooks Add clock-slow info
21 */ 21 * 20-Oct-2005 Ben Dooks Fixed overflow in PLL (Guillaume Gourat)
22 * 20-Oct-2005 Ben Dooks Add masks for DCLK (Guillaume Gourat)
23*/
22 24
23#ifndef __ASM_ARM_REGS_CLOCK 25#ifndef __ASM_ARM_REGS_CLOCK
24#define __ASM_ARM_REGS_CLOCK "$Id: clock.h,v 1.4 2003/04/30 14:50:51 ben Exp $" 26#define __ASM_ARM_REGS_CLOCK "$Id: clock.h,v 1.4 2003/04/30 14:50:51 ben Exp $"
@@ -66,11 +68,16 @@
66#define S3C2410_DCLKCON_DCLK0_UCLK (1<<1) 68#define S3C2410_DCLKCON_DCLK0_UCLK (1<<1)
67#define S3C2410_DCLKCON_DCLK0_DIV(x) (((x) - 1 )<<4) 69#define S3C2410_DCLKCON_DCLK0_DIV(x) (((x) - 1 )<<4)
68#define S3C2410_DCLKCON_DCLK0_CMP(x) (((x) - 1 )<<8) 70#define S3C2410_DCLKCON_DCLK0_CMP(x) (((x) - 1 )<<8)
71#define S3C2410_DCLKCON_DCLK0_DIV_MASK ((0xf)<<4)
72#define S3C2410_DCLKCON_DCLK0_CMP_MASK ((0xf)<<8)
69 73
70#define S3C2410_DCLKCON_DCLK1EN (1<<16) 74#define S3C2410_DCLKCON_DCLK1EN (1<<16)
71#define S3C2410_DCLKCON_DCLK1_PCLK (0<<17) 75#define S3C2410_DCLKCON_DCLK1_PCLK (0<<17)
72#define S3C2410_DCLKCON_DCLK1_UCLK (1<<17) 76#define S3C2410_DCLKCON_DCLK1_UCLK (1<<17)
73#define S3C2410_DCLKCON_DCLK1_DIV(x) (((x) - 1) <<20) 77#define S3C2410_DCLKCON_DCLK1_DIV(x) (((x) - 1) <<20)
78#define S3C2410_DCLKCON_DCLK1_CMP(x) (((x) - 1) <<24)
79#define S3C2410_DCLKCON_DCLK1_DIV_MASK ((0xf) <<20)
80#define S3C2410_DCLKCON_DCLK1_CMP_MASK ((0xf) <<24)
74 81
75#define S3C2410_CLKDIVN_PDIVN (1<<0) 82#define S3C2410_CLKDIVN_PDIVN (1<<0)
76#define S3C2410_CLKDIVN_HDIVN (1<<1) 83#define S3C2410_CLKDIVN_HDIVN (1<<1)
@@ -83,10 +90,13 @@
83 90
84#ifndef __ASSEMBLY__ 91#ifndef __ASSEMBLY__
85 92
93#include <asm/div64.h>
94
86static inline unsigned int 95static inline unsigned int
87s3c2410_get_pll(int pllval, int baseclk) 96s3c2410_get_pll(unsigned int pllval, unsigned int baseclk)
88{ 97{
89 int mdiv, pdiv, sdiv; 98 unsigned int mdiv, pdiv, sdiv;
99 uint64_t fvco;
90 100
91 mdiv = pllval >> S3C2410_PLLCON_MDIVSHIFT; 101 mdiv = pllval >> S3C2410_PLLCON_MDIVSHIFT;
92 pdiv = pllval >> S3C2410_PLLCON_PDIVSHIFT; 102 pdiv = pllval >> S3C2410_PLLCON_PDIVSHIFT;
@@ -96,7 +106,10 @@ s3c2410_get_pll(int pllval, int baseclk)
96 pdiv &= S3C2410_PLLCON_PDIVMASK; 106 pdiv &= S3C2410_PLLCON_PDIVMASK;
97 sdiv &= S3C2410_PLLCON_SDIVMASK; 107 sdiv &= S3C2410_PLLCON_SDIVMASK;
98 108
99 return (baseclk * (mdiv + 8)) / ((pdiv + 2) << sdiv); 109 fvco = (uint64_t)baseclk * (mdiv + 8);
110 do_div(fvco, (pdiv + 2) << sdiv);
111
112 return (unsigned int)fvco;
100} 113}
101 114
102#endif /* __ASSEMBLY__ */ 115#endif /* __ASSEMBLY__ */
diff --git a/include/linux/bootmem.h b/include/linux/bootmem.h
index 82bd8842d11c..3b03b0b868dd 100644
--- a/include/linux/bootmem.h
+++ b/include/linux/bootmem.h
@@ -43,7 +43,7 @@ typedef struct bootmem_data {
43extern unsigned long __init bootmem_bootmap_pages (unsigned long); 43extern unsigned long __init bootmem_bootmap_pages (unsigned long);
44extern unsigned long __init init_bootmem (unsigned long addr, unsigned long memend); 44extern unsigned long __init init_bootmem (unsigned long addr, unsigned long memend);
45extern void __init free_bootmem (unsigned long addr, unsigned long size); 45extern void __init free_bootmem (unsigned long addr, unsigned long size);
46extern void * __init __alloc_bootmem (unsigned long size, unsigned long align, unsigned long goal); 46extern void * __init __alloc_bootmem_limit (unsigned long size, unsigned long align, unsigned long goal, unsigned long limit);
47#ifndef CONFIG_HAVE_ARCH_BOOTMEM_NODE 47#ifndef CONFIG_HAVE_ARCH_BOOTMEM_NODE
48extern void __init reserve_bootmem (unsigned long addr, unsigned long size); 48extern void __init reserve_bootmem (unsigned long addr, unsigned long size);
49#define alloc_bootmem(x) \ 49#define alloc_bootmem(x) \
@@ -54,6 +54,16 @@ extern void __init reserve_bootmem (unsigned long addr, unsigned long size);
54 __alloc_bootmem((x), PAGE_SIZE, __pa(MAX_DMA_ADDRESS)) 54 __alloc_bootmem((x), PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
55#define alloc_bootmem_low_pages(x) \ 55#define alloc_bootmem_low_pages(x) \
56 __alloc_bootmem((x), PAGE_SIZE, 0) 56 __alloc_bootmem((x), PAGE_SIZE, 0)
57
58#define alloc_bootmem_limit(x, limit) \
59 __alloc_bootmem_limit((x), SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS), (limit))
60#define alloc_bootmem_low_limit(x, limit) \
61 __alloc_bootmem_limit((x), SMP_CACHE_BYTES, 0, (limit))
62#define alloc_bootmem_pages_limit(x, limit) \
63 __alloc_bootmem_limit((x), PAGE_SIZE, __pa(MAX_DMA_ADDRESS), (limit))
64#define alloc_bootmem_low_pages_limit(x, limit) \
65 __alloc_bootmem_limit((x), PAGE_SIZE, 0, (limit))
66
57#endif /* !CONFIG_HAVE_ARCH_BOOTMEM_NODE */ 67#endif /* !CONFIG_HAVE_ARCH_BOOTMEM_NODE */
58extern unsigned long __init free_all_bootmem (void); 68extern unsigned long __init free_all_bootmem (void);
59 69
@@ -61,7 +71,7 @@ extern unsigned long __init init_bootmem_node (pg_data_t *pgdat, unsigned long f
61extern void __init reserve_bootmem_node (pg_data_t *pgdat, unsigned long physaddr, unsigned long size); 71extern void __init reserve_bootmem_node (pg_data_t *pgdat, unsigned long physaddr, unsigned long size);
62extern void __init free_bootmem_node (pg_data_t *pgdat, unsigned long addr, unsigned long size); 72extern void __init free_bootmem_node (pg_data_t *pgdat, unsigned long addr, unsigned long size);
63extern unsigned long __init free_all_bootmem_node (pg_data_t *pgdat); 73extern unsigned long __init free_all_bootmem_node (pg_data_t *pgdat);
64extern void * __init __alloc_bootmem_node (pg_data_t *pgdat, unsigned long size, unsigned long align, unsigned long goal); 74extern void * __init __alloc_bootmem_node_limit (pg_data_t *pgdat, unsigned long size, unsigned long align, unsigned long goal, unsigned long limit);
65#ifndef CONFIG_HAVE_ARCH_BOOTMEM_NODE 75#ifndef CONFIG_HAVE_ARCH_BOOTMEM_NODE
66#define alloc_bootmem_node(pgdat, x) \ 76#define alloc_bootmem_node(pgdat, x) \
67 __alloc_bootmem_node((pgdat), (x), SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS)) 77 __alloc_bootmem_node((pgdat), (x), SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS))
@@ -69,6 +79,14 @@ extern void * __init __alloc_bootmem_node (pg_data_t *pgdat, unsigned long size,
69 __alloc_bootmem_node((pgdat), (x), PAGE_SIZE, __pa(MAX_DMA_ADDRESS)) 79 __alloc_bootmem_node((pgdat), (x), PAGE_SIZE, __pa(MAX_DMA_ADDRESS))
70#define alloc_bootmem_low_pages_node(pgdat, x) \ 80#define alloc_bootmem_low_pages_node(pgdat, x) \
71 __alloc_bootmem_node((pgdat), (x), PAGE_SIZE, 0) 81 __alloc_bootmem_node((pgdat), (x), PAGE_SIZE, 0)
82
83#define alloc_bootmem_node_limit(pgdat, x, limit) \
84 __alloc_bootmem_node_limit((pgdat), (x), SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS), (limit))
85#define alloc_bootmem_pages_node_limit(pgdat, x, limit) \
86 __alloc_bootmem_node_limit((pgdat), (x), PAGE_SIZE, __pa(MAX_DMA_ADDRESS), (limit))
87#define alloc_bootmem_low_pages_node_limit(pgdat, x, limit) \
88 __alloc_bootmem_node_limit((pgdat), (x), PAGE_SIZE, 0, (limit))
89
72#endif /* !CONFIG_HAVE_ARCH_BOOTMEM_NODE */ 90#endif /* !CONFIG_HAVE_ARCH_BOOTMEM_NODE */
73 91
74#ifdef CONFIG_HAVE_ARCH_ALLOC_REMAP 92#ifdef CONFIG_HAVE_ARCH_ALLOC_REMAP
@@ -105,5 +123,15 @@ extern void *__init alloc_large_system_hash(const char *tablename,
105#endif 123#endif
106extern int __initdata hashdist; /* Distribute hashes across NUMA nodes? */ 124extern int __initdata hashdist; /* Distribute hashes across NUMA nodes? */
107 125
126static inline void *__alloc_bootmem (unsigned long size, unsigned long align, unsigned long goal)
127{
128 return __alloc_bootmem_limit(size, align, goal, 0);
129}
130
131static inline void *__alloc_bootmem_node (pg_data_t *pgdat, unsigned long size, unsigned long align,
132 unsigned long goal)
133{
134 return __alloc_bootmem_node_limit(pgdat, size, align, goal, 0);
135}
108 136
109#endif /* _LINUX_BOOTMEM_H */ 137#endif /* _LINUX_BOOTMEM_H */
diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
index e670b0d13fe0..d664330d900e 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -25,6 +25,8 @@ int is_hugepage_mem_enough(size_t);
25unsigned long hugetlb_total_pages(void); 25unsigned long hugetlb_total_pages(void);
26struct page *alloc_huge_page(void); 26struct page *alloc_huge_page(void);
27void free_huge_page(struct page *); 27void free_huge_page(struct page *);
28int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
29 unsigned long address, int write_access);
28 30
29extern unsigned long max_huge_pages; 31extern unsigned long max_huge_pages;
30extern const unsigned long hugetlb_zero, hugetlb_infinity; 32extern const unsigned long hugetlb_zero, hugetlb_infinity;
@@ -99,6 +101,7 @@ static inline unsigned long hugetlb_total_pages(void)
99 do { } while (0) 101 do { } while (0)
100#define alloc_huge_page() ({ NULL; }) 102#define alloc_huge_page() ({ NULL; })
101#define free_huge_page(p) ({ (void)(p); BUG(); }) 103#define free_huge_page(p) ({ (void)(p); BUG(); })
104#define hugetlb_fault(mm, vma, addr, write) ({ BUG(); 0; })
102 105
103#ifndef HPAGE_MASK 106#ifndef HPAGE_MASK
104#define HPAGE_MASK 0 /* Keep the compiler happy */ 107#define HPAGE_MASK 0 /* Keep the compiler happy */
diff --git a/include/linux/idr.h b/include/linux/idr.h
index ca3b7e462576..3d5de45f961b 100644
--- a/include/linux/idr.h
+++ b/include/linux/idr.h
@@ -75,4 +75,5 @@ int idr_pre_get(struct idr *idp, unsigned gfp_mask);
75int idr_get_new(struct idr *idp, void *ptr, int *id); 75int idr_get_new(struct idr *idp, void *ptr, int *id);
76int idr_get_new_above(struct idr *idp, void *ptr, int starting_id, int *id); 76int idr_get_new_above(struct idr *idp, void *ptr, int starting_id, int *id);
77void idr_remove(struct idr *idp, int id); 77void idr_remove(struct idr *idp, int id);
78void idr_destroy(struct idr *idp);
78void idr_init(struct idr *idp); 79void idr_init(struct idr *idp);
diff --git a/include/net/ax25.h b/include/net/ax25.h
index 9dbcd9e51c00..30bb4a893237 100644
--- a/include/net/ax25.h
+++ b/include/net/ax25.h
@@ -171,7 +171,7 @@ typedef struct {
171 ax25_address calls[AX25_MAX_DIGIS]; 171 ax25_address calls[AX25_MAX_DIGIS];
172 unsigned char repeated[AX25_MAX_DIGIS]; 172 unsigned char repeated[AX25_MAX_DIGIS];
173 unsigned char ndigi; 173 unsigned char ndigi;
174 char lastrepeat; 174 signed char lastrepeat;
175} ax25_digi; 175} ax25_digi;
176 176
177typedef struct ax25_route { 177typedef struct ax25_route {
diff --git a/kernel/exit.c b/kernel/exit.c
index 43077732619b..3b25b182d2be 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -843,6 +843,7 @@ fastcall NORET_TYPE void do_exit(long code)
843 group_dead = atomic_dec_and_test(&tsk->signal->live); 843 group_dead = atomic_dec_and_test(&tsk->signal->live);
844 if (group_dead) { 844 if (group_dead) {
845 del_timer_sync(&tsk->signal->real_timer); 845 del_timer_sync(&tsk->signal->real_timer);
846 exit_itimers(tsk->signal);
846 acct_process(code); 847 acct_process(code);
847 } 848 }
848 exit_mm(tsk); 849 exit_mm(tsk);
diff --git a/kernel/fork.c b/kernel/fork.c
index 533ce27f4b2c..280bd44ac441 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -848,7 +848,7 @@ static inline void copy_flags(unsigned long clone_flags, struct task_struct *p)
848{ 848{
849 unsigned long new_flags = p->flags; 849 unsigned long new_flags = p->flags;
850 850
851 new_flags &= ~PF_SUPERPRIV; 851 new_flags &= ~(PF_SUPERPRIV | PF_NOFREEZE);
852 new_flags |= PF_FORKNOEXEC; 852 new_flags |= PF_FORKNOEXEC;
853 if (!(clone_flags & CLONE_PTRACE)) 853 if (!(clone_flags & CLONE_PTRACE))
854 p->ptrace = 0; 854 p->ptrace = 0;
diff --git a/kernel/posix-cpu-timers.c b/kernel/posix-cpu-timers.c
index 7a51a5597c33..d30b304a3384 100644
--- a/kernel/posix-cpu-timers.c
+++ b/kernel/posix-cpu-timers.c
@@ -961,14 +961,16 @@ void posix_cpu_timer_get(struct k_itimer *timer, struct itimerspec *itp)
961static void check_thread_timers(struct task_struct *tsk, 961static void check_thread_timers(struct task_struct *tsk,
962 struct list_head *firing) 962 struct list_head *firing)
963{ 963{
964 int maxfire;
964 struct list_head *timers = tsk->cpu_timers; 965 struct list_head *timers = tsk->cpu_timers;
965 966
967 maxfire = 20;
966 tsk->it_prof_expires = cputime_zero; 968 tsk->it_prof_expires = cputime_zero;
967 while (!list_empty(timers)) { 969 while (!list_empty(timers)) {
968 struct cpu_timer_list *t = list_entry(timers->next, 970 struct cpu_timer_list *t = list_entry(timers->next,
969 struct cpu_timer_list, 971 struct cpu_timer_list,
970 entry); 972 entry);
971 if (cputime_lt(prof_ticks(tsk), t->expires.cpu)) { 973 if (!--maxfire || cputime_lt(prof_ticks(tsk), t->expires.cpu)) {
972 tsk->it_prof_expires = t->expires.cpu; 974 tsk->it_prof_expires = t->expires.cpu;
973 break; 975 break;
974 } 976 }
@@ -977,12 +979,13 @@ static void check_thread_timers(struct task_struct *tsk,
977 } 979 }
978 980
979 ++timers; 981 ++timers;
982 maxfire = 20;
980 tsk->it_virt_expires = cputime_zero; 983 tsk->it_virt_expires = cputime_zero;
981 while (!list_empty(timers)) { 984 while (!list_empty(timers)) {
982 struct cpu_timer_list *t = list_entry(timers->next, 985 struct cpu_timer_list *t = list_entry(timers->next,
983 struct cpu_timer_list, 986 struct cpu_timer_list,
984 entry); 987 entry);
985 if (cputime_lt(virt_ticks(tsk), t->expires.cpu)) { 988 if (!--maxfire || cputime_lt(virt_ticks(tsk), t->expires.cpu)) {
986 tsk->it_virt_expires = t->expires.cpu; 989 tsk->it_virt_expires = t->expires.cpu;
987 break; 990 break;
988 } 991 }
@@ -991,12 +994,13 @@ static void check_thread_timers(struct task_struct *tsk,
991 } 994 }
992 995
993 ++timers; 996 ++timers;
997 maxfire = 20;
994 tsk->it_sched_expires = 0; 998 tsk->it_sched_expires = 0;
995 while (!list_empty(timers)) { 999 while (!list_empty(timers)) {
996 struct cpu_timer_list *t = list_entry(timers->next, 1000 struct cpu_timer_list *t = list_entry(timers->next,
997 struct cpu_timer_list, 1001 struct cpu_timer_list,
998 entry); 1002 entry);
999 if (tsk->sched_time < t->expires.sched) { 1003 if (!--maxfire || tsk->sched_time < t->expires.sched) {
1000 tsk->it_sched_expires = t->expires.sched; 1004 tsk->it_sched_expires = t->expires.sched;
1001 break; 1005 break;
1002 } 1006 }
@@ -1013,6 +1017,7 @@ static void check_thread_timers(struct task_struct *tsk,
1013static void check_process_timers(struct task_struct *tsk, 1017static void check_process_timers(struct task_struct *tsk,
1014 struct list_head *firing) 1018 struct list_head *firing)
1015{ 1019{
1020 int maxfire;
1016 struct signal_struct *const sig = tsk->signal; 1021 struct signal_struct *const sig = tsk->signal;
1017 cputime_t utime, stime, ptime, virt_expires, prof_expires; 1022 cputime_t utime, stime, ptime, virt_expires, prof_expires;
1018 unsigned long long sched_time, sched_expires; 1023 unsigned long long sched_time, sched_expires;
@@ -1045,12 +1050,13 @@ static void check_process_timers(struct task_struct *tsk,
1045 } while (t != tsk); 1050 } while (t != tsk);
1046 ptime = cputime_add(utime, stime); 1051 ptime = cputime_add(utime, stime);
1047 1052
1053 maxfire = 20;
1048 prof_expires = cputime_zero; 1054 prof_expires = cputime_zero;
1049 while (!list_empty(timers)) { 1055 while (!list_empty(timers)) {
1050 struct cpu_timer_list *t = list_entry(timers->next, 1056 struct cpu_timer_list *t = list_entry(timers->next,
1051 struct cpu_timer_list, 1057 struct cpu_timer_list,
1052 entry); 1058 entry);
1053 if (cputime_lt(ptime, t->expires.cpu)) { 1059 if (!--maxfire || cputime_lt(ptime, t->expires.cpu)) {
1054 prof_expires = t->expires.cpu; 1060 prof_expires = t->expires.cpu;
1055 break; 1061 break;
1056 } 1062 }
@@ -1059,12 +1065,13 @@ static void check_process_timers(struct task_struct *tsk,
1059 } 1065 }
1060 1066
1061 ++timers; 1067 ++timers;
1068 maxfire = 20;
1062 virt_expires = cputime_zero; 1069 virt_expires = cputime_zero;
1063 while (!list_empty(timers)) { 1070 while (!list_empty(timers)) {
1064 struct cpu_timer_list *t = list_entry(timers->next, 1071 struct cpu_timer_list *t = list_entry(timers->next,
1065 struct cpu_timer_list, 1072 struct cpu_timer_list,
1066 entry); 1073 entry);
1067 if (cputime_lt(utime, t->expires.cpu)) { 1074 if (!--maxfire || cputime_lt(utime, t->expires.cpu)) {
1068 virt_expires = t->expires.cpu; 1075 virt_expires = t->expires.cpu;
1069 break; 1076 break;
1070 } 1077 }
@@ -1073,12 +1080,13 @@ static void check_process_timers(struct task_struct *tsk,
1073 } 1080 }
1074 1081
1075 ++timers; 1082 ++timers;
1083 maxfire = 20;
1076 sched_expires = 0; 1084 sched_expires = 0;
1077 while (!list_empty(timers)) { 1085 while (!list_empty(timers)) {
1078 struct cpu_timer_list *t = list_entry(timers->next, 1086 struct cpu_timer_list *t = list_entry(timers->next,
1079 struct cpu_timer_list, 1087 struct cpu_timer_list,
1080 entry); 1088 entry);
1081 if (sched_time < t->expires.sched) { 1089 if (!--maxfire || sched_time < t->expires.sched) {
1082 sched_expires = t->expires.sched; 1090 sched_expires = t->expires.sched;
1083 break; 1091 break;
1084 } 1092 }
diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c
index b7b532acd9fc..dda3cda73c77 100644
--- a/kernel/posix-timers.c
+++ b/kernel/posix-timers.c
@@ -1157,7 +1157,7 @@ retry_delete:
1157} 1157}
1158 1158
1159/* 1159/*
1160 * This is called by __exit_signal, only when there are no more 1160 * This is called by do_exit or de_thread, only when there are no more
1161 * references to the shared signal_struct. 1161 * references to the shared signal_struct.
1162 */ 1162 */
1163void exit_itimers(struct signal_struct *sig) 1163void exit_itimers(struct signal_struct *sig)
diff --git a/kernel/signal.c b/kernel/signal.c
index 50c992643771..f2b96b08fb44 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -397,20 +397,8 @@ void __exit_signal(struct task_struct *tsk)
397 flush_sigqueue(&tsk->pending); 397 flush_sigqueue(&tsk->pending);
398 if (sig) { 398 if (sig) {
399 /* 399 /*
400 * We are cleaning up the signal_struct here. We delayed 400 * We are cleaning up the signal_struct here.
401 * calling exit_itimers until after flush_sigqueue, just in
402 * case our thread-local pending queue contained a queued
403 * timer signal that would have been cleared in
404 * exit_itimers. When that called sigqueue_free, it would
405 * attempt to re-take the tasklist_lock and deadlock. This
406 * can never happen if we ensure that all queues the
407 * timer's signal might be queued on have been flushed
408 * first. The shared_pending queue, and our own pending
409 * queue are the only queues the timer could be on, since
410 * there are no other threads left in the group and timer
411 * signals are constrained to threads inside the group.
412 */ 401 */
413 exit_itimers(sig);
414 exit_thread_group_keys(sig); 402 exit_thread_group_keys(sig);
415 kmem_cache_free(signal_cachep, sig); 403 kmem_cache_free(signal_cachep, sig);
416 } 404 }
diff --git a/lib/idr.c b/lib/idr.c
index 6415d053e2bf..d4df21debc4d 100644
--- a/lib/idr.c
+++ b/lib/idr.c
@@ -346,6 +346,19 @@ void idr_remove(struct idr *idp, int id)
346EXPORT_SYMBOL(idr_remove); 346EXPORT_SYMBOL(idr_remove);
347 347
348/** 348/**
349 * idr_destroy - release all cached layers within an idr tree
350 * idp: idr handle
351 */
352void idr_destroy(struct idr *idp)
353{
354 while (idp->id_free_cnt) {
355 struct idr_layer *p = alloc_layer(idp);
356 kmem_cache_free(idr_layer_cache, p);
357 }
358}
359EXPORT_SYMBOL(idr_destroy);
360
361/**
349 * idr_find - return pointer for given id 362 * idr_find - return pointer for given id
350 * @idp: idr handle 363 * @idp: idr handle
351 * @id: lookup key 364 * @id: lookup key
diff --git a/mm/bootmem.c b/mm/bootmem.c
index c1330cc19783..a58699b6579e 100644
--- a/mm/bootmem.c
+++ b/mm/bootmem.c
@@ -154,10 +154,10 @@ static void __init free_bootmem_core(bootmem_data_t *bdata, unsigned long addr,
154 */ 154 */
155static void * __init 155static void * __init
156__alloc_bootmem_core(struct bootmem_data *bdata, unsigned long size, 156__alloc_bootmem_core(struct bootmem_data *bdata, unsigned long size,
157 unsigned long align, unsigned long goal) 157 unsigned long align, unsigned long goal, unsigned long limit)
158{ 158{
159 unsigned long offset, remaining_size, areasize, preferred; 159 unsigned long offset, remaining_size, areasize, preferred;
160 unsigned long i, start = 0, incr, eidx; 160 unsigned long i, start = 0, incr, eidx, end_pfn = bdata->node_low_pfn;
161 void *ret; 161 void *ret;
162 162
163 if(!size) { 163 if(!size) {
@@ -166,7 +166,14 @@ __alloc_bootmem_core(struct bootmem_data *bdata, unsigned long size,
166 } 166 }
167 BUG_ON(align & (align-1)); 167 BUG_ON(align & (align-1));
168 168
169 eidx = bdata->node_low_pfn - (bdata->node_boot_start >> PAGE_SHIFT); 169 if (limit && bdata->node_boot_start >= limit)
170 return NULL;
171
172 limit >>=PAGE_SHIFT;
173 if (limit && end_pfn > limit)
174 end_pfn = limit;
175
176 eidx = end_pfn - (bdata->node_boot_start >> PAGE_SHIFT);
170 offset = 0; 177 offset = 0;
171 if (align && 178 if (align &&
172 (bdata->node_boot_start & (align - 1UL)) != 0) 179 (bdata->node_boot_start & (align - 1UL)) != 0)
@@ -178,11 +185,12 @@ __alloc_bootmem_core(struct bootmem_data *bdata, unsigned long size,
178 * first, then we try to allocate lower pages. 185 * first, then we try to allocate lower pages.
179 */ 186 */
180 if (goal && (goal >= bdata->node_boot_start) && 187 if (goal && (goal >= bdata->node_boot_start) &&
181 ((goal >> PAGE_SHIFT) < bdata->node_low_pfn)) { 188 ((goal >> PAGE_SHIFT) < end_pfn)) {
182 preferred = goal - bdata->node_boot_start; 189 preferred = goal - bdata->node_boot_start;
183 190
184 if (bdata->last_success >= preferred) 191 if (bdata->last_success >= preferred)
185 preferred = bdata->last_success; 192 if (!limit || (limit && limit > bdata->last_success))
193 preferred = bdata->last_success;
186 } else 194 } else
187 preferred = 0; 195 preferred = 0;
188 196
@@ -382,14 +390,15 @@ unsigned long __init free_all_bootmem (void)
382 return(free_all_bootmem_core(NODE_DATA(0))); 390 return(free_all_bootmem_core(NODE_DATA(0)));
383} 391}
384 392
385void * __init __alloc_bootmem (unsigned long size, unsigned long align, unsigned long goal) 393void * __init __alloc_bootmem_limit (unsigned long size, unsigned long align, unsigned long goal,
394 unsigned long limit)
386{ 395{
387 pg_data_t *pgdat = pgdat_list; 396 pg_data_t *pgdat = pgdat_list;
388 void *ptr; 397 void *ptr;
389 398
390 for_each_pgdat(pgdat) 399 for_each_pgdat(pgdat)
391 if ((ptr = __alloc_bootmem_core(pgdat->bdata, size, 400 if ((ptr = __alloc_bootmem_core(pgdat->bdata, size,
392 align, goal))) 401 align, goal, limit)))
393 return(ptr); 402 return(ptr);
394 403
395 /* 404 /*
@@ -400,14 +409,16 @@ void * __init __alloc_bootmem (unsigned long size, unsigned long align, unsigned
400 return NULL; 409 return NULL;
401} 410}
402 411
403void * __init __alloc_bootmem_node (pg_data_t *pgdat, unsigned long size, unsigned long align, unsigned long goal) 412
413void * __init __alloc_bootmem_node_limit (pg_data_t *pgdat, unsigned long size, unsigned long align,
414 unsigned long goal, unsigned long limit)
404{ 415{
405 void *ptr; 416 void *ptr;
406 417
407 ptr = __alloc_bootmem_core(pgdat->bdata, size, align, goal); 418 ptr = __alloc_bootmem_core(pgdat->bdata, size, align, goal, limit);
408 if (ptr) 419 if (ptr)
409 return (ptr); 420 return (ptr);
410 421
411 return __alloc_bootmem(size, align, goal); 422 return __alloc_bootmem_limit(size, align, goal, limit);
412} 423}
413 424
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index 901ac523a1c3..61d380678030 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -274,21 +274,22 @@ int copy_hugetlb_page_range(struct mm_struct *dst, struct mm_struct *src,
274{ 274{
275 pte_t *src_pte, *dst_pte, entry; 275 pte_t *src_pte, *dst_pte, entry;
276 struct page *ptepage; 276 struct page *ptepage;
277 unsigned long addr = vma->vm_start; 277 unsigned long addr;
278 unsigned long end = vma->vm_end;
279 278
280 while (addr < end) { 279 for (addr = vma->vm_start; addr < vma->vm_end; addr += HPAGE_SIZE) {
281 dst_pte = huge_pte_alloc(dst, addr); 280 dst_pte = huge_pte_alloc(dst, addr);
282 if (!dst_pte) 281 if (!dst_pte)
283 goto nomem; 282 goto nomem;
283 spin_lock(&src->page_table_lock);
284 src_pte = huge_pte_offset(src, addr); 284 src_pte = huge_pte_offset(src, addr);
285 BUG_ON(!src_pte || pte_none(*src_pte)); /* prefaulted */ 285 if (src_pte && !pte_none(*src_pte)) {
286 entry = *src_pte; 286 entry = *src_pte;
287 ptepage = pte_page(entry); 287 ptepage = pte_page(entry);
288 get_page(ptepage); 288 get_page(ptepage);
289 add_mm_counter(dst, rss, HPAGE_SIZE / PAGE_SIZE); 289 add_mm_counter(dst, rss, HPAGE_SIZE / PAGE_SIZE);
290 set_huge_pte_at(dst, addr, dst_pte, entry); 290 set_huge_pte_at(dst, addr, dst_pte, entry);
291 addr += HPAGE_SIZE; 291 }
292 spin_unlock(&src->page_table_lock);
292 } 293 }
293 return 0; 294 return 0;
294 295
@@ -323,8 +324,8 @@ void unmap_hugepage_range(struct vm_area_struct *vma, unsigned long start,
323 324
324 page = pte_page(pte); 325 page = pte_page(pte);
325 put_page(page); 326 put_page(page);
327 add_mm_counter(mm, rss, - (HPAGE_SIZE / PAGE_SIZE));
326 } 328 }
327 add_mm_counter(mm, rss, -((end - start) >> PAGE_SHIFT));
328 flush_tlb_range(vma, start, end); 329 flush_tlb_range(vma, start, end);
329} 330}
330 331
@@ -393,6 +394,28 @@ out:
393 return ret; 394 return ret;
394} 395}
395 396
397/*
398 * On ia64 at least, it is possible to receive a hugetlb fault from a
399 * stale zero entry left in the TLB from earlier hardware prefetching.
400 * Low-level arch code should already have flushed the stale entry as
401 * part of its fault handling, but we do need to accept this minor fault
402 * and return successfully. Whereas the "normal" case is that this is
403 * an access to a hugetlb page which has been truncated off since mmap.
404 */
405int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
406 unsigned long address, int write_access)
407{
408 int ret = VM_FAULT_SIGBUS;
409 pte_t *pte;
410
411 spin_lock(&mm->page_table_lock);
412 pte = huge_pte_offset(mm, address);
413 if (pte && !pte_none(*pte))
414 ret = VM_FAULT_MINOR;
415 spin_unlock(&mm->page_table_lock);
416 return ret;
417}
418
396int follow_hugetlb_page(struct mm_struct *mm, struct vm_area_struct *vma, 419int follow_hugetlb_page(struct mm_struct *mm, struct vm_area_struct *vma,
397 struct page **pages, struct vm_area_struct **vmas, 420 struct page **pages, struct vm_area_struct **vmas,
398 unsigned long *position, int *length, int i) 421 unsigned long *position, int *length, int i)
@@ -403,6 +426,7 @@ int follow_hugetlb_page(struct mm_struct *mm, struct vm_area_struct *vma,
403 BUG_ON(!is_vm_hugetlb_page(vma)); 426 BUG_ON(!is_vm_hugetlb_page(vma));
404 427
405 vpfn = vaddr/PAGE_SIZE; 428 vpfn = vaddr/PAGE_SIZE;
429 spin_lock(&mm->page_table_lock);
406 while (vaddr < vma->vm_end && remainder) { 430 while (vaddr < vma->vm_end && remainder) {
407 431
408 if (pages) { 432 if (pages) {
@@ -415,8 +439,13 @@ int follow_hugetlb_page(struct mm_struct *mm, struct vm_area_struct *vma,
415 * indexing below to work. */ 439 * indexing below to work. */
416 pte = huge_pte_offset(mm, vaddr & HPAGE_MASK); 440 pte = huge_pte_offset(mm, vaddr & HPAGE_MASK);
417 441
418 /* hugetlb should be locked, and hence, prefaulted */ 442 /* the hugetlb file might have been truncated */
419 WARN_ON(!pte || pte_none(*pte)); 443 if (!pte || pte_none(*pte)) {
444 remainder = 0;
445 if (!i)
446 i = -EFAULT;
447 break;
448 }
420 449
421 page = &pte_page(*pte)[vpfn % (HPAGE_SIZE/PAGE_SIZE)]; 450 page = &pte_page(*pte)[vpfn % (HPAGE_SIZE/PAGE_SIZE)];
422 451
@@ -434,7 +463,7 @@ int follow_hugetlb_page(struct mm_struct *mm, struct vm_area_struct *vma,
434 --remainder; 463 --remainder;
435 ++i; 464 ++i;
436 } 465 }
437 466 spin_unlock(&mm->page_table_lock);
438 *length = remainder; 467 *length = remainder;
439 *position = vaddr; 468 *position = vaddr;
440 469
diff --git a/mm/memory.c b/mm/memory.c
index ae8161f1f459..1db40e935e55 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -2045,8 +2045,8 @@ int __handle_mm_fault(struct mm_struct *mm, struct vm_area_struct * vma,
2045 2045
2046 inc_page_state(pgfault); 2046 inc_page_state(pgfault);
2047 2047
2048 if (is_vm_hugetlb_page(vma)) 2048 if (unlikely(is_vm_hugetlb_page(vma)))
2049 return VM_FAULT_SIGBUS; /* mapping truncation does this. */ 2049 return hugetlb_fault(mm, vma, address, write_access);
2050 2050
2051 /* 2051 /*
2052 * We need the page table lock to synchronize with kswapd 2052 * We need the page table lock to synchronize with kswapd
diff --git a/net/core/neighbour.c b/net/core/neighbour.c
index 4128fc76ac3a..1dcf7fa1f0fe 100644
--- a/net/core/neighbour.c
+++ b/net/core/neighbour.c
@@ -175,39 +175,10 @@ static void pneigh_queue_purge(struct sk_buff_head *list)
175 } 175 }
176} 176}
177 177
178void neigh_changeaddr(struct neigh_table *tbl, struct net_device *dev) 178static void neigh_flush_dev(struct neigh_table *tbl, struct net_device *dev)
179{ 179{
180 int i; 180 int i;
181 181
182 write_lock_bh(&tbl->lock);
183
184 for (i=0; i <= tbl->hash_mask; i++) {
185 struct neighbour *n, **np;
186
187 np = &tbl->hash_buckets[i];
188 while ((n = *np) != NULL) {
189 if (dev && n->dev != dev) {
190 np = &n->next;
191 continue;
192 }
193 *np = n->next;
194 write_lock_bh(&n->lock);
195 n->dead = 1;
196 neigh_del_timer(n);
197 write_unlock_bh(&n->lock);
198 neigh_release(n);
199 }
200 }
201
202 write_unlock_bh(&tbl->lock);
203}
204
205int neigh_ifdown(struct neigh_table *tbl, struct net_device *dev)
206{
207 int i;
208
209 write_lock_bh(&tbl->lock);
210
211 for (i = 0; i <= tbl->hash_mask; i++) { 182 for (i = 0; i <= tbl->hash_mask; i++) {
212 struct neighbour *n, **np = &tbl->hash_buckets[i]; 183 struct neighbour *n, **np = &tbl->hash_buckets[i];
213 184
@@ -243,7 +214,19 @@ int neigh_ifdown(struct neigh_table *tbl, struct net_device *dev)
243 neigh_release(n); 214 neigh_release(n);
244 } 215 }
245 } 216 }
217}
246 218
219void neigh_changeaddr(struct neigh_table *tbl, struct net_device *dev)
220{
221 write_lock_bh(&tbl->lock);
222 neigh_flush_dev(tbl, dev);
223 write_unlock_bh(&tbl->lock);
224}
225
226int neigh_ifdown(struct neigh_table *tbl, struct net_device *dev)
227{
228 write_lock_bh(&tbl->lock);
229 neigh_flush_dev(tbl, dev);
247 pneigh_ifdown(tbl, dev); 230 pneigh_ifdown(tbl, dev);
248 write_unlock_bh(&tbl->lock); 231 write_unlock_bh(&tbl->lock);
249 232
@@ -732,6 +715,7 @@ static inline void neigh_add_timer(struct neighbour *n, unsigned long when)
732 if (unlikely(mod_timer(&n->timer, when))) { 715 if (unlikely(mod_timer(&n->timer, when))) {
733 printk("NEIGH: BUG, double timer add, state is %x\n", 716 printk("NEIGH: BUG, double timer add, state is %x\n",
734 n->nud_state); 717 n->nud_state);
718 dump_stack();
735 } 719 }
736} 720}
737 721
@@ -815,10 +799,10 @@ static void neigh_timer_handler(unsigned long arg)
815 } 799 }
816 800
817 if (neigh->nud_state & NUD_IN_TIMER) { 801 if (neigh->nud_state & NUD_IN_TIMER) {
818 neigh_hold(neigh);
819 if (time_before(next, jiffies + HZ/2)) 802 if (time_before(next, jiffies + HZ/2))
820 next = jiffies + HZ/2; 803 next = jiffies + HZ/2;
821 neigh_add_timer(neigh, next); 804 if (!mod_timer(&neigh->timer, next))
805 neigh_hold(neigh);
822 } 806 }
823 if (neigh->nud_state & (NUD_INCOMPLETE | NUD_PROBE)) { 807 if (neigh->nud_state & (NUD_INCOMPLETE | NUD_PROBE)) {
824 struct sk_buff *skb = skb_peek(&neigh->arp_queue); 808 struct sk_buff *skb = skb_peek(&neigh->arp_queue);
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index af9b1516e21f..02cd4cde2112 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -410,6 +410,9 @@ struct sk_buff *skb_clone(struct sk_buff *skb, gfp_t gfp_mask)
410 C(nfct); 410 C(nfct);
411 nf_conntrack_get(skb->nfct); 411 nf_conntrack_get(skb->nfct);
412 C(nfctinfo); 412 C(nfctinfo);
413#if defined(CONFIG_IP_VS) || defined(CONFIG_IP_VS_MODULE)
414 C(ipvs_property);
415#endif
413#ifdef CONFIG_BRIDGE_NETFILTER 416#ifdef CONFIG_BRIDGE_NETFILTER
414 C(nf_bridge); 417 C(nf_bridge);
415 nf_bridge_get(skb->nf_bridge); 418 nf_bridge_get(skb->nf_bridge);
@@ -467,6 +470,9 @@ static void copy_skb_header(struct sk_buff *new, const struct sk_buff *old)
467 new->nfct = old->nfct; 470 new->nfct = old->nfct;
468 nf_conntrack_get(old->nfct); 471 nf_conntrack_get(old->nfct);
469 new->nfctinfo = old->nfctinfo; 472 new->nfctinfo = old->nfctinfo;
473#if defined(CONFIG_IP_VS) || defined(CONFIG_IP_VS_MODULE)
474 new->ipvs_property = old->ipvs_property;
475#endif
470#ifdef CONFIG_BRIDGE_NETFILTER 476#ifdef CONFIG_BRIDGE_NETFILTER
471 new->nf_bridge = old->nf_bridge; 477 new->nf_bridge = old->nf_bridge;
472 nf_bridge_get(old->nf_bridge); 478 nf_bridge_get(old->nf_bridge);
diff --git a/net/dccp/ipv4.c b/net/dccp/ipv4.c
index ae088d1347af..6298cf58ff9e 100644
--- a/net/dccp/ipv4.c
+++ b/net/dccp/ipv4.c
@@ -463,6 +463,7 @@ static int dccp_v4_send_response(struct sock *sk, struct request_sock *req,
463 if (skb != NULL) { 463 if (skb != NULL) {
464 const struct inet_request_sock *ireq = inet_rsk(req); 464 const struct inet_request_sock *ireq = inet_rsk(req);
465 465
466 memset(&(IPCB(skb)->opt), 0, sizeof(IPCB(skb)->opt));
466 err = ip_build_and_send_pkt(skb, sk, ireq->loc_addr, 467 err = ip_build_and_send_pkt(skb, sk, ireq->loc_addr,
467 ireq->rmt_addr, 468 ireq->rmt_addr,
468 ireq->opt); 469 ireq->opt);
@@ -647,6 +648,7 @@ int dccp_v4_send_reset(struct sock *sk, enum dccp_reset_codes code)
647 if (skb != NULL) { 648 if (skb != NULL) {
648 const struct inet_sock *inet = inet_sk(sk); 649 const struct inet_sock *inet = inet_sk(sk);
649 650
651 memset(&(IPCB(skb)->opt), 0, sizeof(IPCB(skb)->opt));
650 err = ip_build_and_send_pkt(skb, sk, 652 err = ip_build_and_send_pkt(skb, sk,
651 inet->saddr, inet->daddr, NULL); 653 inet->saddr, inet->daddr, NULL);
652 if (err == NET_XMIT_CN) 654 if (err == NET_XMIT_CN)
diff --git a/net/dccp/output.c b/net/dccp/output.c
index 4786bdcddcc9..29250749f16f 100644
--- a/net/dccp/output.c
+++ b/net/dccp/output.c
@@ -62,10 +62,8 @@ int dccp_transmit_skb(struct sock *sk, struct sk_buff *skb)
62 62
63 skb->h.raw = skb_push(skb, dccp_header_size); 63 skb->h.raw = skb_push(skb, dccp_header_size);
64 dh = dccp_hdr(skb); 64 dh = dccp_hdr(skb);
65 /* 65
66 * Data packets are not cloned as they are never retransmitted 66 if (!skb->sk)
67 */
68 if (skb_cloned(skb))
69 skb_set_owner_w(skb, sk); 67 skb_set_owner_w(skb, sk);
70 68
71 /* Build DCCP header and checksum it. */ 69 /* Build DCCP header and checksum it. */
@@ -102,6 +100,7 @@ int dccp_transmit_skb(struct sock *sk, struct sk_buff *skb)
102 100
103 DCCP_INC_STATS(DCCP_MIB_OUTSEGS); 101 DCCP_INC_STATS(DCCP_MIB_OUTSEGS);
104 102
103 memset(&(IPCB(skb)->opt), 0, sizeof(IPCB(skb)->opt));
105 err = ip_queue_xmit(skb, 0); 104 err = ip_queue_xmit(skb, 0);
106 if (err <= 0) 105 if (err <= 0)
107 return err; 106 return err;
@@ -243,7 +242,8 @@ int dccp_write_xmit(struct sock *sk, struct sk_buff *skb, long *timeo)
243 242
244 err = dccp_transmit_skb(sk, skb); 243 err = dccp_transmit_skb(sk, skb);
245 ccid_hc_tx_packet_sent(dp->dccps_hc_tx_ccid, sk, 0, len); 244 ccid_hc_tx_packet_sent(dp->dccps_hc_tx_ccid, sk, 0, len);
246 } 245 } else
246 kfree_skb(skb);
247 247
248 return err; 248 return err;
249} 249}
diff --git a/net/dccp/proto.c b/net/dccp/proto.c
index a1cfd0e9e3bc..a021c3422f67 100644
--- a/net/dccp/proto.c
+++ b/net/dccp/proto.c
@@ -402,8 +402,6 @@ int dccp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
402 * This bug was _quickly_ found & fixed by just looking at an OSTRA 402 * This bug was _quickly_ found & fixed by just looking at an OSTRA
403 * generated callgraph 8) -acme 403 * generated callgraph 8) -acme
404 */ 404 */
405 if (rc != 0)
406 goto out_discard;
407out_release: 405out_release:
408 release_sock(sk); 406 release_sock(sk);
409 return rc ? : len; 407 return rc ? : len;
diff --git a/net/ipv4/ip_output.c b/net/ipv4/ip_output.c
index 3f1a263e1249..1ad5202e556b 100644
--- a/net/ipv4/ip_output.c
+++ b/net/ipv4/ip_output.c
@@ -391,6 +391,9 @@ static void ip_copy_metadata(struct sk_buff *to, struct sk_buff *from)
391 to->nfct = from->nfct; 391 to->nfct = from->nfct;
392 nf_conntrack_get(to->nfct); 392 nf_conntrack_get(to->nfct);
393 to->nfctinfo = from->nfctinfo; 393 to->nfctinfo = from->nfctinfo;
394#if defined(CONFIG_IP_VS) || defined(CONFIG_IP_VS_MODULE)
395 to->ipvs_property = from->ipvs_property;
396#endif
394#ifdef CONFIG_BRIDGE_NETFILTER 397#ifdef CONFIG_BRIDGE_NETFILTER
395 nf_bridge_put(to->nf_bridge); 398 nf_bridge_put(to->nf_bridge);
396 to->nf_bridge = from->nf_bridge; 399 to->nf_bridge = from->nf_bridge;
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
index 7114031fdc70..b907456a79f4 100644
--- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c
@@ -435,17 +435,7 @@ int tcp_fragment(struct sock *sk, struct sk_buff *skb, u32 len, unsigned int mss
435 int nsize, old_factor; 435 int nsize, old_factor;
436 u16 flags; 436 u16 flags;
437 437
438 if (unlikely(len >= skb->len)) { 438 BUG_ON(len > skb->len);
439 if (net_ratelimit()) {
440 printk(KERN_DEBUG "TCP: seg_size=%u, mss=%u, seq=%u, "
441 "end_seq=%u, skb->len=%u.\n", len, mss_now,
442 TCP_SKB_CB(skb)->seq, TCP_SKB_CB(skb)->end_seq,
443 skb->len);
444 WARN_ON(1);
445 }
446 return 0;
447 }
448
449 nsize = skb_headlen(skb) - len; 439 nsize = skb_headlen(skb) - len;
450 if (nsize < 0) 440 if (nsize < 0)
451 nsize = 0; 441 nsize = 0;
diff --git a/security/selinux/selinuxfs.c b/security/selinux/selinuxfs.c
index 8eb140dd2e4b..a45cc971e735 100644
--- a/security/selinux/selinuxfs.c
+++ b/security/selinux/selinuxfs.c
@@ -879,7 +879,7 @@ static ssize_t sel_commit_bools_write(struct file *filep,
879 if (sscanf(page, "%d", &new_value) != 1) 879 if (sscanf(page, "%d", &new_value) != 1)
880 goto out; 880 goto out;
881 881
882 if (new_value) { 882 if (new_value && bool_pending_values) {
883 security_set_bools(bool_num, bool_pending_values); 883 security_set_bools(bool_num, bool_pending_values);
884 } 884 }
885 885
@@ -952,6 +952,7 @@ static int sel_make_bools(void)
952 952
953 /* remove any existing files */ 953 /* remove any existing files */
954 kfree(bool_pending_values); 954 kfree(bool_pending_values);
955 bool_pending_values = NULL;
955 956
956 sel_remove_bools(dir); 957 sel_remove_bools(dir);
957 958
@@ -1002,6 +1003,7 @@ out:
1002 } 1003 }
1003 return ret; 1004 return ret;
1004err: 1005err:
1006 kfree(values);
1005 d_genocide(dir); 1007 d_genocide(dir);
1006 ret = -ENOMEM; 1008 ret = -ENOMEM;
1007 goto out; 1009 goto out;
diff --git a/security/selinux/ss/policydb.c b/security/selinux/ss/policydb.c
index 0a758323a9cf..8e6262d12aa9 100644
--- a/security/selinux/ss/policydb.c
+++ b/security/selinux/ss/policydb.c
@@ -650,8 +650,10 @@ void policydb_destroy(struct policydb *p)
650 } 650 }
651 if (lrt) kfree(lrt); 651 if (lrt) kfree(lrt);
652 652
653 for (i = 0; i < p->p_types.nprim; i++) 653 if (p->type_attr_map) {
654 ebitmap_destroy(&p->type_attr_map[i]); 654 for (i = 0; i < p->p_types.nprim; i++)
655 ebitmap_destroy(&p->type_attr_map[i]);
656 }
655 kfree(p->type_attr_map); 657 kfree(p->type_attr_map);
656 658
657 return; 659 return;