aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-02-19 16:29:02 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-02-19 16:29:02 -0500
commit874ff01bd9183ad16495acfd54e93a619d12b8b5 (patch)
treee9527e94649fadfa705dae64018e027e51681b88
parentebbe46f73a11a667df59cb8e58b371c0a35f29d0 (diff)
parent86aae08faa0069a559ba543ff3dab33fe95f891b (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial
* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (25 commits) Documentation/kernel-docs.txt update. arch/cris: typo in KERN_INFO Storage class should be before const qualifier kernel/printk.c: comment fix update I/O sched Kconfig help texts - CFQ is now default, not AS. Remove duplicate listing of Cris arch from README kbuild: more doc. cleanups doc: make doc. for maxcpus= more visible drivers/net/eexpress.c: remove duplicate comment add a help text for BLK_DEV_GENERIC correct a dead URL in the IP_MULTICAST help text fix the BAYCOM_SER_HDX help text fix SCSI_SCAN_ASYNC help text trivial documentation patch for platform.txt Fix typos concerning hierarchy Fix comment typo "spin_lock_irqrestore". Fix misspellings of "agressive". drivers/scsi/a100u2w.c: trivial typo patch Correct trivial typo in log2.h. Remove useless FIND_FIRST_BIT() macro from cardbus.c. ...
-rw-r--r--Documentation/driver-model/platform.txt4
-rw-r--r--Documentation/filesystems/sysfs-pci.txt2
-rw-r--r--Documentation/kbuild/makefiles.txt28
-rw-r--r--Documentation/kernel-docs.txt257
-rw-r--r--Documentation/kernel-parameters.txt9
-rw-r--r--Documentation/sh/new-machine.txt4
-rw-r--r--Documentation/video4linux/bttv/Insmod-options2
-rw-r--r--README2
-rw-r--r--arch/arm/Kconfig2
-rw-r--r--arch/arm/mm/Kconfig2
-rw-r--r--arch/cris/arch-v10/drivers/pcf8563.c2
-rw-r--r--arch/cris/arch-v32/drivers/pcf8563.c2
-rw-r--r--arch/i386/boot/compressed/relocs.c9
-rw-r--r--arch/i386/kernel/topology.c2
-rw-r--r--arch/i386/oprofile/nmi_int.c14
-rw-r--r--arch/ia64/kernel/perfmon.c2
-rw-r--r--arch/m32r/lib/usercopy.c4
-rw-r--r--arch/m68knommu/platform/5307/timers.c2
-rw-r--r--arch/mips/kernel/machine_kexec.c4
-rw-r--r--arch/parisc/kernel/topology.c2
-rw-r--r--arch/powerpc/kernel/rtas.c2
-rw-r--r--arch/powerpc/mm/numa.c2
-rw-r--r--arch/sh/kernel/cpu/sh2/clock-sh7619.c4
-rw-r--r--arch/sh/kernel/cpu/sh2a/clock-sh7206.c4
-rw-r--r--arch/v850/Kconfig2
-rw-r--r--arch/x86_64/kernel/time.c2
-rw-r--r--block/Kconfig.iosched9
-rw-r--r--drivers/base/cpu.c2
-rw-r--r--drivers/base/node.c2
-rw-r--r--drivers/char/rio/rio_linux.c2
-rw-r--r--drivers/i2c/busses/i2c-ali1535.c2
-rw-r--r--drivers/i2c/busses/i2c-ali15x3.c2
-rw-r--r--drivers/i2c/busses/i2c-amd756.c2
-rw-r--r--drivers/i2c/busses/i2c-amd8111.c2
-rw-r--r--drivers/i2c/busses/i2c-i801.c2
-rw-r--r--drivers/i2c/busses/i2c-piix4.c2
-rw-r--r--drivers/i2c/busses/i2c-sis5595.c2
-rw-r--r--drivers/i2c/busses/i2c-sis630.c2
-rw-r--r--drivers/i2c/busses/i2c-sis96x.c2
-rw-r--r--drivers/i2c/busses/i2c-via.c2
-rw-r--r--drivers/ide/Kconfig3
-rw-r--r--drivers/ieee1394/ohci1394.c2
-rw-r--r--drivers/infiniband/hw/ipath/ipath_iba6110.c2
-rw-r--r--drivers/infiniband/hw/ipath/ipath_iba6120.c2
-rw-r--r--drivers/input/serio/libps2.c2
-rw-r--r--drivers/isdn/i4l/isdn_ppp.c2
-rw-r--r--drivers/media/dvb/dvb-core/dvb_frontend.c2
-rw-r--r--drivers/media/dvb/frontends/dib3000mb.c2
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-audio.c2
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c2
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-std.c4
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-tuner.c2
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-video-v4l.c2
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-wm8775.c2
-rw-r--r--drivers/net/e1000/e1000_hw.h2
-rw-r--r--drivers/net/eexpress.c7
-rw-r--r--drivers/net/hamradio/Kconfig3
-rw-r--r--drivers/net/wireless/wavelan_cs.c8
-rw-r--r--drivers/pci/pcie/aer/aerdrv.h2
-rw-r--r--drivers/pcmcia/cardbus.c2
-rw-r--r--drivers/sbus/char/vfc_i2c.c2
-rw-r--r--drivers/scsi/Kconfig5
-rw-r--r--drivers/scsi/a100u2w.c2
-rw-r--r--drivers/scsi/arm/eesox.c2
-rw-r--r--drivers/scsi/osst.c12
-rw-r--r--drivers/scsi/scsi_scan.c2
-rw-r--r--drivers/scsi/scsi_transport_fc.c2
-rw-r--r--drivers/scsi/scsi_transport_sas.c4
-rw-r--r--drivers/scsi/st.c38
-rw-r--r--drivers/scsi/sym53c8xx_2/sym_fw1.h4
-rw-r--r--drivers/scsi/sym53c8xx_2/sym_fw2.h4
-rw-r--r--drivers/usb/host/ehci-dbg.c2
-rw-r--r--fs/cifs/README2
-rw-r--r--fs/cifs/cifssmb.c4
-rw-r--r--fs/ext4/extents.c14
-rw-r--r--fs/lockd/svc.c2
-rw-r--r--fs/ocfs2/namei.c2
-rw-r--r--include/asm-arm/uaccess.h6
-rw-r--r--include/asm-arm26/uaccess.h10
-rw-r--r--include/asm-ia64/kexec.h2
-rw-r--r--include/asm-ia64/pal.h14
-rw-r--r--include/linux/device.h4
-rw-r--r--include/linux/ext4_fs_extents.h4
-rw-r--r--include/linux/log2.h2
-rw-r--r--include/linux/moduleparam.h2
-rw-r--r--include/linux/seqlock.h2
-rw-r--r--kernel/printk.c2
-rw-r--r--lib/textsearch.c2
-rw-r--r--net/ipv4/Kconfig2
-rw-r--r--net/ipv4/tcp_cong.c2
90 files changed, 304 insertions, 314 deletions
diff --git a/Documentation/driver-model/platform.txt b/Documentation/driver-model/platform.txt
index 9f0bc3bfd776..f7c9262b2dc8 100644
--- a/Documentation/driver-model/platform.txt
+++ b/Documentation/driver-model/platform.txt
@@ -66,7 +66,7 @@ runtime memory footprint:
66 66
67Device Enumeration 67Device Enumeration
68~~~~~~~~~~~~~~~~~~ 68~~~~~~~~~~~~~~~~~~
69As a rule, platform specific (and often board-specific) setup code wil 69As a rule, platform specific (and often board-specific) setup code will
70register platform devices: 70register platform devices:
71 71
72 int platform_device_register(struct platform_device *pdev); 72 int platform_device_register(struct platform_device *pdev);
@@ -106,7 +106,7 @@ It's built from two components:
106 * platform_device.id ... the device instance number, or else "-1" 106 * platform_device.id ... the device instance number, or else "-1"
107 to indicate there's only one. 107 to indicate there's only one.
108 108
109These are catenated, so name/id "serial"/0 indicates bus_id "serial.0", and 109These are concatenated, so name/id "serial"/0 indicates bus_id "serial.0", and
110"serial/3" indicates bus_id "serial.3"; both would use the platform_driver 110"serial/3" indicates bus_id "serial.3"; both would use the platform_driver
111named "serial". While "my_rtc"/-1 would be bus_id "my_rtc" (no instance id) 111named "serial". While "my_rtc"/-1 would be bus_id "my_rtc" (no instance id)
112and use the platform_driver called "my_rtc". 112and use the platform_driver called "my_rtc".
diff --git a/Documentation/filesystems/sysfs-pci.txt b/Documentation/filesystems/sysfs-pci.txt
index 7ba2baa165ff..5daa2aaec2c5 100644
--- a/Documentation/filesystems/sysfs-pci.txt
+++ b/Documentation/filesystems/sysfs-pci.txt
@@ -65,7 +65,7 @@ Accessing legacy resources through sysfs
65---------------------------------------- 65----------------------------------------
66 66
67Legacy I/O port and ISA memory resources are also provided in sysfs if the 67Legacy I/O port and ISA memory resources are also provided in sysfs if the
68underlying platform supports them. They're located in the PCI class heirarchy, 68underlying platform supports them. They're located in the PCI class hierarchy,
69e.g. 69e.g.
70 70
71 /sys/class/pci_bus/0000:17/ 71 /sys/class/pci_bus/0000:17/
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt
index 4b3d6710c504..bb5306e9a5c3 100644
--- a/Documentation/kbuild/makefiles.txt
+++ b/Documentation/kbuild/makefiles.txt
@@ -34,7 +34,7 @@ This document describes the Linux kernel Makefiles.
34 --- 6.1 Set variables to tweak the build to the architecture 34 --- 6.1 Set variables to tweak the build to the architecture
35 --- 6.2 Add prerequisites to archprepare: 35 --- 6.2 Add prerequisites to archprepare:
36 --- 6.3 List directories to visit when descending 36 --- 6.3 List directories to visit when descending
37 --- 6.4 Architecture specific boot images 37 --- 6.4 Architecture-specific boot images
38 --- 6.5 Building non-kbuild targets 38 --- 6.5 Building non-kbuild targets
39 --- 6.6 Commands useful for building a boot image 39 --- 6.6 Commands useful for building a boot image
40 --- 6.7 Custom kbuild commands 40 --- 6.7 Custom kbuild commands
@@ -124,7 +124,7 @@ more details, with real examples.
124 Example: 124 Example:
125 obj-y += foo.o 125 obj-y += foo.o
126 126
127 This tell kbuild that there is one object in that directory, named 127 This tells kbuild that there is one object in that directory, named
128 foo.o. foo.o will be built from foo.c or foo.S. 128 foo.o. foo.o will be built from foo.c or foo.S.
129 129
130 If foo.o shall be built as a module, the variable obj-m is used. 130 If foo.o shall be built as a module, the variable obj-m is used.
@@ -353,7 +353,7 @@ more details, with real examples.
353 Special rules are used when the kbuild infrastructure does 353 Special rules are used when the kbuild infrastructure does
354 not provide the required support. A typical example is 354 not provide the required support. A typical example is
355 header files generated during the build process. 355 header files generated during the build process.
356 Another example are the architecture specific Makefiles which 356 Another example are the architecture-specific Makefiles which
357 need special rules to prepare boot images etc. 357 need special rules to prepare boot images etc.
358 358
359 Special rules are written as normal Make rules. 359 Special rules are written as normal Make rules.
@@ -416,7 +416,7 @@ more details, with real examples.
416 #arch/i386/kernel/Makefile 416 #arch/i386/kernel/Makefile
417 vsyscall-flags += $(call ld-option, -Wl$(comma)--hash-style=sysv) 417 vsyscall-flags += $(call ld-option, -Wl$(comma)--hash-style=sysv)
418 418
419 In the above example vsyscall-flags will be assigned the option 419 In the above example, vsyscall-flags will be assigned the option
420 -Wl$(comma)--hash-style=sysv if it is supported by $(CC). 420 -Wl$(comma)--hash-style=sysv if it is supported by $(CC).
421 The second argument is optional, and if supplied will be used 421 The second argument is optional, and if supplied will be used
422 if first argument is not supported. 422 if first argument is not supported.
@@ -434,7 +434,7 @@ more details, with real examples.
434 #arch/i386/Makefile 434 #arch/i386/Makefile
435 cflags-y += $(call cc-option,-march=pentium-mmx,-march=i586) 435 cflags-y += $(call cc-option,-march=pentium-mmx,-march=i586)
436 436
437 In the above example cflags-y will be assigned the option 437 In the above example, cflags-y will be assigned the option
438 -march=pentium-mmx if supported by $(CC), otherwise -march=i586. 438 -march=pentium-mmx if supported by $(CC), otherwise -march=i586.
439 The second argument to cc-option is optional, and if omitted, 439 The second argument to cc-option is optional, and if omitted,
440 cflags-y will be assigned no value if first option is not supported. 440 cflags-y will be assigned no value if first option is not supported.
@@ -750,10 +750,10 @@ When kbuild executes, the following steps are followed (roughly):
750 located at the root of the obj tree. 750 located at the root of the obj tree.
751 The very first objects linked are listed in head-y, assigned by 751 The very first objects linked are listed in head-y, assigned by
752 arch/$(ARCH)/Makefile. 752 arch/$(ARCH)/Makefile.
7537) Finally, the architecture specific part does any required post processing 7537) Finally, the architecture-specific part does any required post processing
754 and builds the final bootimage. 754 and builds the final bootimage.
755 - This includes building boot records 755 - This includes building boot records
756 - Preparing initrd images and thelike 756 - Preparing initrd images and the like
757 757
758 758
759--- 6.1 Set variables to tweak the build to the architecture 759--- 6.1 Set variables to tweak the build to the architecture
@@ -880,7 +880,7 @@ When kbuild executes, the following steps are followed (roughly):
880 880
881 $(head-y) lists objects to be linked first in vmlinux. 881 $(head-y) lists objects to be linked first in vmlinux.
882 $(libs-y) lists directories where a lib.a archive can be located. 882 $(libs-y) lists directories where a lib.a archive can be located.
883 The rest lists directories where a built-in.o object file can be 883 The rest list directories where a built-in.o object file can be
884 located. 884 located.
885 885
886 $(init-y) objects will be located after $(head-y). 886 $(init-y) objects will be located after $(head-y).
@@ -888,7 +888,7 @@ When kbuild executes, the following steps are followed (roughly):
888 $(core-y), $(libs-y), $(drivers-y) and $(net-y). 888 $(core-y), $(libs-y), $(drivers-y) and $(net-y).
889 889
890 The top level Makefile defines values for all generic directories, 890 The top level Makefile defines values for all generic directories,
891 and arch/$(ARCH)/Makefile only adds architecture specific directories. 891 and arch/$(ARCH)/Makefile only adds architecture-specific directories.
892 892
893 Example: 893 Example:
894 #arch/sparc64/Makefile 894 #arch/sparc64/Makefile
@@ -897,7 +897,7 @@ When kbuild executes, the following steps are followed (roughly):
897 drivers-$(CONFIG_OPROFILE) += arch/sparc64/oprofile/ 897 drivers-$(CONFIG_OPROFILE) += arch/sparc64/oprofile/
898 898
899 899
900--- 6.4 Architecture specific boot images 900--- 6.4 Architecture-specific boot images
901 901
902 An arch Makefile specifies goals that take the vmlinux file, compress 902 An arch Makefile specifies goals that take the vmlinux file, compress
903 it, wrap it in bootstrapping code, and copy the resulting files 903 it, wrap it in bootstrapping code, and copy the resulting files
@@ -924,7 +924,7 @@ When kbuild executes, the following steps are followed (roughly):
924 "$(Q)$(MAKE) $(build)=<dir>" is the recommended way to invoke 924 "$(Q)$(MAKE) $(build)=<dir>" is the recommended way to invoke
925 make in a subdirectory. 925 make in a subdirectory.
926 926
927 There are no rules for naming architecture specific targets, 927 There are no rules for naming architecture-specific targets,
928 but executing "make help" will list all relevant targets. 928 but executing "make help" will list all relevant targets.
929 To support this, $(archhelp) must be defined. 929 To support this, $(archhelp) must be defined.
930 930
@@ -982,7 +982,7 @@ When kbuild executes, the following steps are followed (roughly):
982 $(call if_changed,ld/objcopy/gzip) 982 $(call if_changed,ld/objcopy/gzip)
983 983
984 When the rule is evaluated, it is checked to see if any files 984 When the rule is evaluated, it is checked to see if any files
985 needs an update, or the command line has changed since the last 985 need an update, or the command line has changed since the last
986 invocation. The latter will force a rebuild if any options 986 invocation. The latter will force a rebuild if any options
987 to the executable have changed. 987 to the executable have changed.
988 Any target that utilises if_changed must be listed in $(targets), 988 Any target that utilises if_changed must be listed in $(targets),
@@ -1089,7 +1089,7 @@ When kbuild executes, the following steps are followed (roughly):
1089 assignment. 1089 assignment.
1090 1090
1091 The kbuild infrastructure for *lds file are used in several 1091 The kbuild infrastructure for *lds file are used in several
1092 architecture specific files. 1092 architecture-specific files.
1093 1093
1094 1094
1095=== 7 Kbuild Variables 1095=== 7 Kbuild Variables
@@ -1133,7 +1133,7 @@ The top Makefile exports the following variables:
1133 1133
1134 This variable defines a place for the arch Makefiles to install 1134 This variable defines a place for the arch Makefiles to install
1135 the resident kernel image and System.map file. 1135 the resident kernel image and System.map file.
1136 Use this for architecture specific install targets. 1136 Use this for architecture-specific install targets.
1137 1137
1138 INSTALL_MOD_PATH, MODLIB 1138 INSTALL_MOD_PATH, MODLIB
1139 1139
diff --git a/Documentation/kernel-docs.txt b/Documentation/kernel-docs.txt
index b53bccbd9727..c68dafeda7a7 100644
--- a/Documentation/kernel-docs.txt
+++ b/Documentation/kernel-docs.txt
@@ -1,10 +1,10 @@
1 1
2 Index of Documentation for People Interested in Writing and/or 2 Index of Documentation for People Interested in Writing and/or
3 3
4 Understanding the Linux Kernel. 4 Understanding the Linux Kernel.
5 5
6 Juan-Mariano de Goyeneche <jmseyas@dit.upm.es> 6 Juan-Mariano de Goyeneche <jmseyas@dit.upm.es>
7 7
8/* 8/*
9 * The latest version of this document may be found at: 9 * The latest version of this document may be found at:
10 * http://www.dit.upm.es/~jmseyas/linux/kernel/hackers-docs.html 10 * http://www.dit.upm.es/~jmseyas/linux/kernel/hackers-docs.html
@@ -61,18 +61,18 @@
61 13.-The Linux Kernel Sources, A.-Linux Data Structures, B.-The 61 13.-The Linux Kernel Sources, A.-Linux Data Structures, B.-The
62 Alpha AXP Processor, C.-Useful Web and FTP Sites, D.-The GNU 62 Alpha AXP Processor, C.-Useful Web and FTP Sites, D.-The GNU
63 General Public License, Glossary". In short: a must have. 63 General Public License, Glossary". In short: a must have.
64 64
65 * Title: "The Linux Kernel Hackers' Guide" 65 * Title: "Linux Device Drivers, 2nd Edition"
66 Author: Michael K.Johnson and others. 66 Author: Alessandro Rubini and Jonathan Corbet.
67 URL: http://www.tldp.org/LDP/khg/HyperNews/get/khg.html 67 URL: http://www.xml.com/ldd/chapter/book/index.html
68 Keywords: everything! 68 Keywords: device drivers, modules, debugging, memory, hardware,
69 Description: No more Postscript book-like version. Only HTML now. 69 interrupt handling, char drivers, block drivers, kmod, mmap, DMA,
70 Many people have contributed. The interface is similar to web 70 buses.
71 available mailing lists archives. You can find some articles and 71 Description: O'Reilly's popular book, now also on-line under the
72 then some mails asking questions about them and/or complementing 72 GNU Free Documentation License.
73 previous contributions. A little bit anarchic in this aspect, but 73 Notes: You can also buy it in paper-form from O'Reilly. See below
74 with some valuable information in some cases. 74 under BOOKS (Not on-line).
75 75
76 * Title: "Conceptual Architecture of the Linux Kernel" 76 * Title: "Conceptual Architecture of the Linux Kernel"
77 Author: Ivan T. Bowman. 77 Author: Ivan T. Bowman.
78 URL: http://plg.uwaterloo.ca/~itbowman/papers/CS746G-a1.html 78 URL: http://plg.uwaterloo.ca/~itbowman/papers/CS746G-a1.html
@@ -81,17 +81,17 @@
81 Description: Conceptual software arquitecture of the Linux kernel, 81 Description: Conceptual software arquitecture of the Linux kernel,
82 automatically extracted from the source code. Very detailed. Good 82 automatically extracted from the source code. Very detailed. Good
83 figures. Gives good overall kernel understanding. 83 figures. Gives good overall kernel understanding.
84 84
85 * Title: "Concrete Architecture of the Linux Kernel" 85 * Title: "Concrete Architecture of the Linux Kernel"
86 Author: Ivan T. Bowman, Saheem Siddiqi, and Meyer C. Tanuan. 86 Author: Ivan T. Bowman, Saheem Siddiqi, and Meyer C. Tanuan.
87 URL: http://plg.uwaterloo.ca/~itbowman/papers/CS746G-a2.html 87 URL: http://plg.uwaterloo.ca/~itbowman/papers/CS746G-a2.html
88 Keywords: concrete arquitecture, extracted design, reverse 88 Keywords: concrete architecture, extracted design, reverse
89 engineering, system structure, dependencies. 89 engineering, system structure, dependencies.
90 Description: Concrete arquitecture of the Linux kernel, 90 Description: Concrete architecture of the Linux kernel,
91 automatically extracted from the source code. Very detailed. Good 91 automatically extracted from the source code. Very detailed. Good
92 figures. Gives good overall kernel understanding. This papers 92 figures. Gives good overall kernel understanding. This papers
93 focus on lower details than its predecessor (files, variables...). 93 focus on lower details than its predecessor (files, variables...).
94 94
95 * Title: "Linux as a Case Study: Its Extracted Software 95 * Title: "Linux as a Case Study: Its Extracted Software
96 Architecture" 96 Architecture"
97 Author: Ivan T. Bowman, Richard C. Holt and Neil V. Brewster. 97 Author: Ivan T. Bowman, Richard C. Holt and Neil V. Brewster.
@@ -101,7 +101,7 @@
101 Description: Paper appeared at ICSE'99, Los Angeles, May 16-22, 101 Description: Paper appeared at ICSE'99, Los Angeles, May 16-22,
102 1999. A mixture of the previous two documents from the same 102 1999. A mixture of the previous two documents from the same
103 author. 103 author.
104 104
105 * Title: "Overview of the Virtual File System" 105 * Title: "Overview of the Virtual File System"
106 Author: Richard Gooch. 106 Author: Richard Gooch.
107 URL: http://www.atnf.csiro.au/~rgooch/linux/vfs.txt 107 URL: http://www.atnf.csiro.au/~rgooch/linux/vfs.txt
@@ -111,20 +111,20 @@
111 What is it, how it works, operations taken when opening a file or 111 What is it, how it works, operations taken when opening a file or
112 mounting a file system and description of important data 112 mounting a file system and description of important data
113 structures explaining the purpose of each of their entries. 113 structures explaining the purpose of each of their entries.
114 114
115 * Title: "The Linux RAID-1, 4, 5 Code" 115 * Title: "The Linux RAID-1, 4, 5 Code"
116 Author: Ingo Molnar, Gadi Oxman and Miguel de Icaza. 116 Author: Ingo Molnar, Gadi Oxman and Miguel de Icaza.
117 URL: http://www2.linuxjournal.com/lj-issues/issue44/2391.html 117 URL: http://www.linuxjournal.com/article.php?sid=2391
118 Keywords: RAID, MD driver. 118 Keywords: RAID, MD driver.
119 Description: Linux Journal Kernel Korner article. Here is it's 119 Description: Linux Journal Kernel Korner article. Here is it's
120 abstract: "A description of the implementation of the RAID-1, 120 abstract: "A description of the implementation of the RAID-1,
121 RAID-4 and RAID-5 personalities of the MD device driver in the 121 RAID-4 and RAID-5 personalities of the MD device driver in the
122 Linux kernel, providing users with high performance and reliable, 122 Linux kernel, providing users with high performance and reliable,
123 secondary-storage capability using software". 123 secondary-storage capability using software".
124 124
125 * Title: "Dynamic Kernels: Modularized Device Drivers" 125 * Title: "Dynamic Kernels: Modularized Device Drivers"
126 Author: Alessandro Rubini. 126 Author: Alessandro Rubini.
127 URL: http://www2.linuxjournal.com/lj-issues/issue23/1219.html 127 URL: http://www.linuxjournal.com/article.php?sid=1219
128 Keywords: device driver, module, loading/unloading modules, 128 Keywords: device driver, module, loading/unloading modules,
129 allocating resources. 129 allocating resources.
130 Description: Linux Journal Kernel Korner article. Here is it's 130 Description: Linux Journal Kernel Korner article. Here is it's
@@ -134,10 +134,10 @@
134 loadable modules. This installment presents an introduction to the 134 loadable modules. This installment presents an introduction to the
135 topic, preparing the reader to understand next month's 135 topic, preparing the reader to understand next month's
136 installment". 136 installment".
137 137
138 * Title: "Dynamic Kernels: Discovery" 138 * Title: "Dynamic Kernels: Discovery"
139 Author: Alessandro Rubini. 139 Author: Alessandro Rubini.
140 URL: http://www2.linuxjournal.com/lj-issues/issue24/1220.html 140 URL: http://www.linuxjournal.com/article.php?sid=1220
141 Keywords: character driver, init_module, clean_up module, 141 Keywords: character driver, init_module, clean_up module,
142 autodetection, mayor number, minor number, file operations, 142 autodetection, mayor number, minor number, file operations,
143 open(), close(). 143 open(), close().
@@ -146,20 +146,20 @@
146 the actual code to create custom module implementing a character 146 the actual code to create custom module implementing a character
147 device driver. It describes the code for module initialization and 147 device driver. It describes the code for module initialization and
148 cleanup, as well as the open() and close() system calls". 148 cleanup, as well as the open() and close() system calls".
149 149
150 * Title: "The Devil's in the Details" 150 * Title: "The Devil's in the Details"
151 Author: Georg v. Zezschwitz and Alessandro Rubini. 151 Author: Georg v. Zezschwitz and Alessandro Rubini.
152 URL: http://www2.linuxjournal.com/lj-issues/issue25/1221.html 152 URL: http://www.linuxjournal.com/article.php?sid=1221
153 Keywords: read(), write(), select(), ioctl(), blocking/non 153 Keywords: read(), write(), select(), ioctl(), blocking/non
154 blocking mode, interrupt handler. 154 blocking mode, interrupt handler.
155 Description: Linux Journal Kernel Korner article. Here is it's 155 Description: Linux Journal Kernel Korner article. Here is it's
156 abstract: "This article, the third of four on writing character 156 abstract: "This article, the third of four on writing character
157 device drivers, introduces concepts of reading, writing, and using 157 device drivers, introduces concepts of reading, writing, and using
158 ioctl-calls". 158 ioctl-calls".
159 159
160 * Title: "Dissecting Interrupts and Browsing DMA" 160 * Title: "Dissecting Interrupts and Browsing DMA"
161 Author: Alessandro Rubini and Georg v. Zezschwitz. 161 Author: Alessandro Rubini and Georg v. Zezschwitz.
162 URL: http://www2.linuxjournal.com/lj-issues/issue26/1222.html 162 URL: http://www.linuxjournal.com/article.php?sid=1222
163 Keywords: interrupts, irqs, DMA, bottom halves, task queues. 163 Keywords: interrupts, irqs, DMA, bottom halves, task queues.
164 Description: Linux Journal Kernel Korner article. Here is it's 164 Description: Linux Journal Kernel Korner article. Here is it's
165 abstract: "This is the fourth in a series of articles about 165 abstract: "This is the fourth in a series of articles about
@@ -170,10 +170,10 @@
170 writing, and several different facilities have been provided for 170 writing, and several different facilities have been provided for
171 different situations. We also investigate the complex topic of 171 different situations. We also investigate the complex topic of
172 DMA". 172 DMA".
173 173
174 * Title: "Device Drivers Concluded" 174 * Title: "Device Drivers Concluded"
175 Author: Georg v. Zezschwitz. 175 Author: Georg v. Zezschwitz.
176 URL: http://www2.linuxjournal.com/lj-issues/issue28/1287.html 176 URL: http://www.linuxjournal.com/article.php?sid=1287
177 Keywords: address spaces, pages, pagination, page management, 177 Keywords: address spaces, pages, pagination, page management,
178 demand loading, swapping, memory protection, memory mapping, mmap, 178 demand loading, swapping, memory protection, memory mapping, mmap,
179 virtual memory areas (VMAs), vremap, PCI. 179 virtual memory areas (VMAs), vremap, PCI.
@@ -182,10 +182,10 @@
182 five articles about character device drivers. In this final 182 five articles about character device drivers. In this final
183 section, Georg deals with memory mapping devices, beginning with 183 section, Georg deals with memory mapping devices, beginning with
184 an overall description of the Linux memory management concepts". 184 an overall description of the Linux memory management concepts".
185 185
186 * Title: "Network Buffers And Memory Management" 186 * Title: "Network Buffers And Memory Management"
187 Author: Alan Cox. 187 Author: Alan Cox.
188 URL: http://www2.linuxjournal.com/lj-issues/issue30/1312.html 188 URL: http://www.linuxjournal.com/article.php?sid=1312
189 Keywords: sk_buffs, network devices, protocol/link layer 189 Keywords: sk_buffs, network devices, protocol/link layer
190 variables, network devices flags, transmit, receive, 190 variables, network devices flags, transmit, receive,
191 configuration, multicast. 191 configuration, multicast.
@@ -214,28 +214,26 @@
214 of the Coda filesystem. This version document is meant to describe 214 of the Coda filesystem. This version document is meant to describe
215 the current interface (version 1.0) as well as improvements we 215 the current interface (version 1.0) as well as improvements we
216 envisage". 216 envisage".
217 217
218 * Title: "Programming PCI-Devices under Linux" 218 * Title: "Programming PCI-Devices under Linux"
219 Author: Claus Schroeter. 219 Author: Claus Schroeter.
220 URL: 220 URL:
221 ftp://ftp.llp.fu-berlin.de/pub/linux/LINUX-LAB/whitepapers/pcip.ps 221 ftp://ftp.llp.fu-berlin.de/pub/linux/LINUX-LAB/whitepapers/pcip.ps.gz
222 .gz
223 Keywords: PCI, device, busmastering. 222 Keywords: PCI, device, busmastering.
224 Description: 6 pages tutorial on PCI programming under Linux. 223 Description: 6 pages tutorial on PCI programming under Linux.
225 Gives the basic concepts on the architecture of the PCI subsystem, 224 Gives the basic concepts on the architecture of the PCI subsystem,
226 as long as basic functions and macros to read/write the devices 225 as long as basic functions and macros to read/write the devices
227 and perform busmastering. 226 and perform busmastering.
228 227
229 * Title: "Writing Character Device Driver for Linux" 228 * Title: "Writing Character Device Driver for Linux"
230 Author: R. Baruch and C. Schroeter. 229 Author: R. Baruch and C. Schroeter.
231 URL: 230 URL:
232 ftp://ftp.llp.fu-berlin.de/pub/linux/LINUX-LAB/whitepapers/drivers 231 ftp://ftp.llp.fu-berlin.de/pub/linux/LINUX-LAB/whitepapers/drivers.ps.gz
233 .ps.gz
234 Keywords: character device drivers, I/O, signals, DMA, accessing 232 Keywords: character device drivers, I/O, signals, DMA, accessing
235 ports in user space, kernel environment. 233 ports in user space, kernel environment.
236 Description: 68 pages paper on writing character drivers. A little 234 Description: 68 pages paper on writing character drivers. A little
237 bit old (1.993, 1.994) although still useful. 235 bit old (1.993, 1.994) although still useful.
238 236
239 * Title: "Design and Implementation of the Second Extended 237 * Title: "Design and Implementation of the Second Extended
240 Filesystem" 238 Filesystem"
241 Author: Rémy Card, Theodore Ts'o, Stephen Tweedie. 239 Author: Rémy Card, Theodore Ts'o, Stephen Tweedie.
@@ -249,14 +247,14 @@
249 e2fsck's passes description... A must read! 247 e2fsck's passes description... A must read!
250 Notes: This paper was first published in the Proceedings of the 248 Notes: This paper was first published in the Proceedings of the
251 First Dutch International Symposium on Linux, ISBN 90-367-0385-9. 249 First Dutch International Symposium on Linux, ISBN 90-367-0385-9.
252 250
253 * Title: "Analysis of the Ext2fs structure" 251 * Title: "Analysis of the Ext2fs structure"
254 Author: Louis-Dominique Dubeau. 252 Author: Louis-Dominique Dubeau.
255 URL: http://step.polymtl.ca/~ldd/ext2fs/ext2fs_toc.html 253 URL: http://www.nondot.org/sabre/os/files/FileSystems/ext2fs/
256 Keywords: ext2, filesystem, ext2fs. 254 Keywords: ext2, filesystem, ext2fs.
257 Description: Description of ext2's blocks, directories, inodes, 255 Description: Description of ext2's blocks, directories, inodes,
258 bitmaps, invariants... 256 bitmaps, invariants...
259 257
260 * Title: "Journaling the Linux ext2fs Filesystem" 258 * Title: "Journaling the Linux ext2fs Filesystem"
261 Author: Stephen C. Tweedie. 259 Author: Stephen C. Tweedie.
262 URL: 260 URL:
@@ -265,7 +263,7 @@
265 Description: Excellent 8-pages paper explaining the journaling 263 Description: Excellent 8-pages paper explaining the journaling
266 capabilities added to ext2 by the author, showing different 264 capabilities added to ext2 by the author, showing different
267 problems faced and the alternatives chosen. 265 problems faced and the alternatives chosen.
268 266
269 * Title: "Kernel API changes from 2.0 to 2.2" 267 * Title: "Kernel API changes from 2.0 to 2.2"
270 Author: Richard Gooch. 268 Author: Richard Gooch.
271 URL: 269 URL:
@@ -273,7 +271,7 @@
273 Keywords: 2.2, changes. 271 Keywords: 2.2, changes.
274 Description: Kernel functions/structures/variables which changed 272 Description: Kernel functions/structures/variables which changed
275 from 2.0.x to 2.2.x. 273 from 2.0.x to 2.2.x.
276 274
277 * Title: "Kernel API changes from 2.2 to 2.4" 275 * Title: "Kernel API changes from 2.2 to 2.4"
278 Author: Richard Gooch. 276 Author: Richard Gooch.
279 URL: 277 URL:
@@ -345,17 +343,7 @@
345 Notes: Beware: the main page states: "This document may not be 343 Notes: Beware: the main page states: "This document may not be
346 published, printed or used in excerpts without explicit permission 344 published, printed or used in excerpts without explicit permission
347 of the author". Fortunately, it may still be read... 345 of the author". Fortunately, it may still be read...
348 346
349 * Title: "Tour Of the Linux Kernel Source"
350 Author: Vijo Cherian.
351 URL: http://www.geocities.com/vijoc/tolks/tolks.html
352 Keywords: .
353 Description: A classic of this page! Was lost for a while and is
354 back again. Thanks Vijo! TOLKS: the name says it all. A tour of
355 the sources, describing directories, files, variables, data
356 structures... It covers general stuff, device drivers,
357 filesystems, IPC and Networking Code.
358
359 * Title: "Linux Kernel Mailing List Glossary" 347 * Title: "Linux Kernel Mailing List Glossary"
360 Author: various 348 Author: various
361 URL: http://kernelnewbies.org/glossary/ 349 URL: http://kernelnewbies.org/glossary/
@@ -377,7 +365,17 @@
377 kernels, but most of it applies to 2.2 too; 2.0 is slightly 365 kernels, but most of it applies to 2.2 too; 2.0 is slightly
378 different". Freely redistributable under the conditions of the GNU 366 different". Freely redistributable under the conditions of the GNU
379 General Public License. 367 General Public License.
380 368
369 * Title: "Global spinlock list and usage"
370 Author: Rick Lindsley.
371 URL: http://lse.sourceforge.net/lockhier/global-spin-lock
372 Keywords: spinlock.
373 Description: This is an attempt to document both the existence and
374 usage of the spinlocks in the Linux 2.4.5 kernel. Comprehensive
375 list of spinlocks showing when they are used, which functions
376 access them, how each lock is acquired, under what conditions it
377 is held, whether interrupts can occur or not while it is held...
378
381 * Title: "Porting Linux 2.0 Drivers To Linux 2.2: Changes and New 379 * Title: "Porting Linux 2.0 Drivers To Linux 2.2: Changes and New
382 Features " 380 Features "
383 Author: Alan Cox. 381 Author: Alan Cox.
@@ -385,70 +383,70 @@
385 Keywords: ports, porting. 383 Keywords: ports, porting.
386 Description: Article from Linux Magazine on porting from 2.0 to 384 Description: Article from Linux Magazine on porting from 2.0 to
387 2.2 kernels. 385 2.2 kernels.
388 386
389 * Title: "Porting Device Drivers To Linux 2.2: part II" 387 * Title: "Porting Device Drivers To Linux 2.2: part II"
390 Author: Alan Cox. 388 Author: Alan Cox.
391 URL: http://www.linux-mag.com/1999-06/gear_01.html 389 URL: http://www.linux-mag.com/1999-06/gear_01.html
392 Keywords: ports, porting. 390 Keywords: ports, porting.
393 Description: Second part on porting from 2.0 to 2.2 kernels. 391 Description: Second part on porting from 2.0 to 2.2 kernels.
394 392
395 * Title: "How To Make Sure Your Driver Will Work On The Power 393 * Title: "How To Make Sure Your Driver Will Work On The Power
396 Macintosh" 394 Macintosh"
397 Author: Paul Mackerras. 395 Author: Paul Mackerras.
398 URL: http://www.linux-mag.com/1999-07/gear_01.html 396 URL: http://www.linux-mag.com/1999-07/gear_01.html
399 Keywords: Mac, Power Macintosh, porting, drivers, compatibility. 397 Keywords: Mac, Power Macintosh, porting, drivers, compatibility.
400 Description: The title says it all. 398 Description: The title says it all.
401 399
402 * Title: "An Introduction to SCSI Drivers" 400 * Title: "An Introduction to SCSI Drivers"
403 Author: Alan Cox. 401 Author: Alan Cox.
404 URL: http://www.linux-mag.com/1999-08/gear_01.html 402 URL: http://www.linux-mag.com/1999-08/gear_01.html
405 Keywords: SCSI, device, driver. 403 Keywords: SCSI, device, driver.
406 Description: The title says it all. 404 Description: The title says it all.
407 405
408 * Title: "Advanced SCSI Drivers And Other Tales" 406 * Title: "Advanced SCSI Drivers And Other Tales"
409 Author: Alan Cox. 407 Author: Alan Cox.
410 URL: http://www.linux-mag.com/1999-09/gear_01.html 408 URL: http://www.linux-mag.com/1999-09/gear_01.html
411 Keywords: SCSI, device, driver, advanced. 409 Keywords: SCSI, device, driver, advanced.
412 Description: The title says it all. 410 Description: The title says it all.
413 411
414 * Title: "Writing Linux Mouse Drivers" 412 * Title: "Writing Linux Mouse Drivers"
415 Author: Alan Cox. 413 Author: Alan Cox.
416 URL: http://www.linux-mag.com/1999-10/gear_01.html 414 URL: http://www.linux-mag.com/1999-10/gear_01.html
417 Keywords: mouse, driver, gpm. 415 Keywords: mouse, driver, gpm.
418 Description: The title says it all. 416 Description: The title says it all.
419 417
420 * Title: "More on Mouse Drivers" 418 * Title: "More on Mouse Drivers"
421 Author: Alan Cox. 419 Author: Alan Cox.
422 URL: http://www.linux-mag.com/1999-11/gear_01.html 420 URL: http://www.linux-mag.com/1999-11/gear_01.html
423 Keywords: mouse, driver, gpm, races, asynchronous I/O. 421 Keywords: mouse, driver, gpm, races, asynchronous I/O.
424 Description: The title still says it all. 422 Description: The title still says it all.
425 423
426 * Title: "Writing Video4linux Radio Driver" 424 * Title: "Writing Video4linux Radio Driver"
427 Author: Alan Cox. 425 Author: Alan Cox.
428 URL: http://www.linux-mag.com/1999-12/gear_01.html 426 URL: http://www.linux-mag.com/1999-12/gear_01.html
429 Keywords: video4linux, driver, radio, radio devices. 427 Keywords: video4linux, driver, radio, radio devices.
430 Description: The title says it all. 428 Description: The title says it all.
431 429
432 * Title: "Video4linux Drivers, Part 1: Video-Capture Device" 430 * Title: "Video4linux Drivers, Part 1: Video-Capture Device"
433 Author: Alan Cox. 431 Author: Alan Cox.
434 URL: http://www.linux-mag.com/2000-01/gear_01.html 432 URL: http://www.linux-mag.com/2000-01/gear_01.html
435 Keywords: video4linux, driver, video capture, capture devices, 433 Keywords: video4linux, driver, video capture, capture devices,
436 camera driver. 434 camera driver.
437 Description: The title says it all. 435 Description: The title says it all.
438 436
439 * Title: "Video4linux Drivers, Part 2: Video-capture Devices" 437 * Title: "Video4linux Drivers, Part 2: Video-capture Devices"
440 Author: Alan Cox. 438 Author: Alan Cox.
441 URL: http://www.linux-mag.com/2000-02/gear_01.html 439 URL: http://www.linux-mag.com/2000-02/gear_01.html
442 Keywords: video4linux, driver, video capture, capture devices, 440 Keywords: video4linux, driver, video capture, capture devices,
443 camera driver, control, query capabilities, capability, facility. 441 camera driver, control, query capabilities, capability, facility.
444 Description: The title says it all. 442 Description: The title says it all.
445 443
446 * Title: "PCI Management in Linux 2.2" 444 * Title: "PCI Management in Linux 2.2"
447 Author: Alan Cox. 445 Author: Alan Cox.
448 URL: http://www.linux-mag.com/2000-03/gear_01.html 446 URL: http://www.linux-mag.com/2000-03/gear_01.html
449 Keywords: PCI, bus, bus-mastering. 447 Keywords: PCI, bus, bus-mastering.
450 Description: The title says it all. 448 Description: The title says it all.
451 449
452 * Title: "Linux 2.4 Kernel Internals" 450 * Title: "Linux 2.4 Kernel Internals"
453 Author: Tigran Aivazian and Christoph Hellwig. 451 Author: Tigran Aivazian and Christoph Hellwig.
454 URL: http://www.moses.uklinux.net/patches/lki.html 452 URL: http://www.moses.uklinux.net/patches/lki.html
@@ -456,13 +454,11 @@
456 Description: A little book used for a short training course. 454 Description: A little book used for a short training course.
457 Covers building the kernel image, booting (including SMP bootup), 455 Covers building the kernel image, booting (including SMP bootup),
458 process management, VFS and more. 456 process management, VFS and more.
459 457
460 * Title: "Linux IP Networking. A Guide to the Implementation and 458 * Title: "Linux IP Networking. A Guide to the Implementation and
461 Modification of the Linux Protocol Stack." 459 Modification of the Linux Protocol Stack."
462 Author: Glenn Herrin. 460 Author: Glenn Herrin.
463 URL: 461 URL: http://www.cs.unh.edu/cnrg/gherrin
464 http://kernelnewbies.org/documents/ipnetworking/linuxipnetworking.
465 html
466 Keywords: network, networking, protocol, IP, UDP, TCP, connection, 462 Keywords: network, networking, protocol, IP, UDP, TCP, connection,
467 socket, receiving, transmitting, forwarding, routing, packets, 463 socket, receiving, transmitting, forwarding, routing, packets,
468 modules, /proc, sk_buff, FIB, tags. 464 modules, /proc, sk_buff, FIB, tags.
@@ -495,7 +491,7 @@
495 drivers for the Linux PCMCIA Card Services interface. It also 491 drivers for the Linux PCMCIA Card Services interface. It also
496 describes how to write user-mode utilities for communicating with 492 describes how to write user-mode utilities for communicating with
497 Card Services. 493 Card Services.
498 494
499 * Title: "The Linux Kernel NFSD Implementation" 495 * Title: "The Linux Kernel NFSD Implementation"
500 Author: Neil Brown. 496 Author: Neil Brown.
501 URL: 497 URL:
@@ -591,47 +587,22 @@
591 Pages: 520. 587 Pages: 520.
592 ISBN: 2-212-08932-5 588 ISBN: 2-212-08932-5
593 Notes: French. 589 Notes: French.
594 590
595 * Title: "The Linux Kernel Book"
596 Author: Remy Card, Eric Dumas, Franck Mevel.
597 Publisher: John Wiley & Sons.
598 Date: 1998.
599 ISBN: 0-471-98141-9
600 Notes: English translation.
601
602 * Title: "Linux 2.0"
603 Author: Remy Card, Eric Dumas, Franck Mevel.
604 Publisher: Gestión 2000.
605 Date: 1997.
606 Pages: 501.
607 ISBN: 8-480-88208-5
608 Notes: Spanish translation.
609
610 * Title: "Unix internals -- the new frontiers" 591 * Title: "Unix internals -- the new frontiers"
611 Author: Uresh Vahalia. 592 Author: Uresh Vahalia.
612 Publisher: Prentice Hall. 593 Publisher: Prentice Hall.
613 Date: 1996. 594 Date: 1996.
614 Pages: 600. 595 Pages: 600.
615 ISBN: 0-13-101908-2 596 ISBN: 0-13-101908-2
616 597
617 * Title: "Linux Core Kernel Commentary. Guide to Insider's Knowledge 598 * Title: "The Design and Implementation of the 4.4 BSD UNIX
618 on the Core Kernel of the Linux Code" 599 Operating System"
619 Author: Scott Maxwell. 600 Author: Marshall Kirk McKusick, Keith Bostic, Michael J. Karels,
620 Publisher: Coriolis. 601 John S. Quarterman.
621 Date: 1999. 602 Publisher: Addison-Wesley.
622 Pages: 592. 603 Date: 1996.
623 ISBN: 1-57610-469-9 604 ISBN: 0-201-54979-4
624 Notes: CD-ROM included. Line by line commentary of the kernel 605
625 code.
626
627 * Title: "Linux IP Stacks Commentary"
628 Author: Stephen Satchell and HBJ Clifford.
629 Publisher: Coriolis.
630 Date: 2000.
631 Pages: ???.
632 ISBN: 1-57610-470-2
633 Notes: Line by line source code commentary book.
634
635 * Title: "Programming for the real world - POSIX.4" 606 * Title: "Programming for the real world - POSIX.4"
636 Author: Bill O. Gallmeister. 607 Author: Bill O. Gallmeister.
637 Publisher: O'Reilly & Associates, Inc.. 608 Publisher: O'Reilly & Associates, Inc..
@@ -640,18 +611,32 @@
640 ISBN: I-56592-074-0 611 ISBN: I-56592-074-0
641 Notes: Though not being directly about Linux, Linux aims to be 612 Notes: Though not being directly about Linux, Linux aims to be
642 POSIX. Good reference. 613 POSIX. Good reference.
643 614
644 * Title: "Understanding the Linux Kernel" 615 * Title: "UNIX Systems for Modern Architectures: Symmetric
645 Author: Daniel P. Bovet and Marco Cesati. 616 Multiprocesssing and Caching for Kernel Programmers"
646 Publisher: O'Reilly & Associates, Inc.. 617 Author: Curt Schimmel.
647 Date: 2000. 618 Publisher: Addison Wesley.
648 Pages: 702. 619 Date: June, 1994.
649 ISBN: 0-596-00002-2 620 Pages: 432.
650 Notes: Further information in 621 ISBN: 0-201-63338-8
651 http://www.oreilly.com/catalog/linuxkernel/ 622
652 623 * Title: "The Design and Implementation of the 4.3 BSD UNIX
624 Operating System"
625 Author: Samuel J. Leffler, Marshall Kirk McKusick, Michael J.
626 Karels, John S. Quarterman.
627 Publisher: Addison-Wesley.
628 Date: 1989 (reprinted with corrections on October, 1990).
629 ISBN: 0-201-06196-1
630
631 * Title: "The Design of the UNIX Operating System"
632 Author: Maurice J. Bach.
633 Publisher: Prentice Hall.
634 Date: 1986.
635 Pages: 471.
636 ISBN: 0-13-201757-1
637
653 MISCELLANEOUS: 638 MISCELLANEOUS:
654 639
655 * Name: linux/Documentation 640 * Name: linux/Documentation
656 Author: Many. 641 Author: Many.
657 URL: Just look inside your kernel sources. 642 URL: Just look inside your kernel sources.
@@ -660,7 +645,7 @@
660 inside the Documentation directory. Some pages from this document 645 inside the Documentation directory. Some pages from this document
661 (including this document itself) have been moved there, and might 646 (including this document itself) have been moved there, and might
662 be more up to date than the web version. 647 be more up to date than the web version.
663 648
664 * Name: "Linux Source Driver" 649 * Name: "Linux Source Driver"
665 URL: http://lsd.linux.cz 650 URL: http://lsd.linux.cz
666 Keywords: Browsing source code. 651 Keywords: Browsing source code.
@@ -671,7 +656,7 @@
671 you can search Linux kernel (fulltext, macros, types, functions 656 you can search Linux kernel (fulltext, macros, types, functions
672 and variables) and LSD can generate patches for you on the fly 657 and variables) and LSD can generate patches for you on the fly
673 (files, directories or kernel)". 658 (files, directories or kernel)".
674 659
675 * Name: "Linux Kernel Source Reference" 660 * Name: "Linux Kernel Source Reference"
676 Author: Thomas Graichen. 661 Author: Thomas Graichen.
677 URL: http://innominate.org/~graichen/projects/lksr/ 662 URL: http://innominate.org/~graichen/projects/lksr/
@@ -681,27 +666,27 @@
681 sources of any version starting from 1.0 up to the (daily updated) 666 sources of any version starting from 1.0 up to the (daily updated)
682 current version available. Also you can check the differences 667 current version available. Also you can check the differences
683 between two versions of a file". 668 between two versions of a file".
684 669
685 * Name: "Cross-Referencing Linux" 670 * Name: "Cross-Referencing Linux"
686 URL: http://lxr.linux.no/source/ 671 URL: http://lxr.linux.no/source/
687 Keywords: Browsing source code. 672 Keywords: Browsing source code.
688 Description: Another web-based Linux kernel source code browser. 673 Description: Another web-based Linux kernel source code browser.
689 Lots of cross references to variables and functions. You can see 674 Lots of cross references to variables and functions. You can see
690 where they are defined and where they are used. 675 where they are defined and where they are used.
691 676
692 * Name: "Linux Weekly News" 677 * Name: "Linux Weekly News"
693 URL: http://lwn.net 678 URL: http://lwn.net
694 Keywords: latest kernel news. 679 Keywords: latest kernel news.
695 Description: The title says it all. There's a fixed kernel section 680 Description: The title says it all. There's a fixed kernel section
696 summarizing developers' work, bug fixes, new features and versions 681 summarizing developers' work, bug fixes, new features and versions
697 produced during the week. Published every Thursday. 682 produced during the week. Published every Thursday.
698 683
699 * Name: "Kernel Traffic" 684 * Name: "Kernel Traffic"
700 URL: http://www.kerneltraffic.org/kernel-traffic/ 685 URL: http://kt.zork.net/kernel-traffic/
701 Keywords: linux-kernel mailing list, weekly kernel news. 686 Keywords: linux-kernel mailing list, weekly kernel news.
702 Description: Weekly newsletter covering the most relevant 687 Description: Weekly newsletter covering the most relevant
703 discussions of the linux-kernel mailing list. 688 discussions of the linux-kernel mailing list.
704 689
705 * Name: "CuTTiNG.eDGe.LiNuX" 690 * Name: "CuTTiNG.eDGe.LiNuX"
706 URL: http://edge.kernelnotes.org 691 URL: http://edge.kernelnotes.org
707 Keywords: changelist. 692 Keywords: changelist.
@@ -709,7 +694,7 @@
709 release. What's new, what's better, what's changed. Myrdraal reads 694 release. What's new, what's better, what's changed. Myrdraal reads
710 the patches and describes them. Pointers to the patches are there, 695 the patches and describes them. Pointers to the patches are there,
711 too. 696 too.
712 697
713 * Name: "New linux-kernel Mailing List FAQ" 698 * Name: "New linux-kernel Mailing List FAQ"
714 URL: http://www.tux.org/lkml/ 699 URL: http://www.tux.org/lkml/
715 Keywords: linux-kernel mailing list FAQ. 700 Keywords: linux-kernel mailing list FAQ.
@@ -719,7 +704,7 @@
719 it. Read it to see how to join the mailing list. Dozens of 704 it. Read it to see how to join the mailing list. Dozens of
720 interesting questions regarding the list, Linux, developers (who 705 interesting questions regarding the list, Linux, developers (who
721 is ...?), terms (what is...?) are answered here too. Just read it. 706 is ...?), terms (what is...?) are answered here too. Just read it.
722 707
723 * Name: "Linux Virtual File System" 708 * Name: "Linux Virtual File System"
724 Author: Peter J. Braam. 709 Author: Peter J. Braam.
725 URL: http://www.coda.cs.cmu.edu/doc/talks/linuxvfs/ 710 URL: http://www.coda.cs.cmu.edu/doc/talks/linuxvfs/
@@ -727,10 +712,10 @@
727 Description: Set of slides, presumably from a presentation on the 712 Description: Set of slides, presumably from a presentation on the
728 Linux VFS layer. Covers version 2.1.x, with dentries and the 713 Linux VFS layer. Covers version 2.1.x, with dentries and the
729 dcache. 714 dcache.
730 715
731 * Name: "Gary's Encyclopedia - The Linux Kernel" 716 * Name: "Gary's Encyclopedia - The Linux Kernel"
732 Author: Gary (I suppose...). 717 Author: Gary (I suppose...).
733 URL: http://members.aa.net/~swear/pedia/kernel.html 718 URL: http://www.lisoleg.net/cgi-bin/lisoleg.pl?view=kernel.htm
734 Keywords: links, not found here?. 719 Keywords: links, not found here?.
735 Description: Gary's Encyclopedia exists to allow the rapid finding 720 Description: Gary's Encyclopedia exists to allow the rapid finding
736 of documentation and other information of interest to GNU/Linux 721 of documentation and other information of interest to GNU/Linux
@@ -738,7 +723,7 @@
738 categories. This link is for kernel-specific links, documents, 723 categories. This link is for kernel-specific links, documents,
739 sites... Look there if you could not find here what you were 724 sites... Look there if you could not find here what you were
740 looking for. 725 looking for.
741 726
742 * Name: "The home page of Linux-MM" 727 * Name: "The home page of Linux-MM"
743 Author: The Linux-MM team. 728 Author: The Linux-MM team.
744 URL: http://linux-mm.org/ 729 URL: http://linux-mm.org/
@@ -747,7 +732,7 @@
747 Description: Site devoted to Linux Memory Management development. 732 Description: Site devoted to Linux Memory Management development.
748 Memory related patches, HOWTOs, links, mm developers... Don't miss 733 Memory related patches, HOWTOs, links, mm developers... Don't miss
749 it if you are interested in memory management development! 734 it if you are interested in memory management development!
750 735
751 * Name: "Kernel Newbies IRC Channel" 736 * Name: "Kernel Newbies IRC Channel"
752 URL: http://www.kernelnewbies.org 737 URL: http://www.kernelnewbies.org
753 Keywords: IRC, newbies, channel, asking doubts. 738 Keywords: IRC, newbies, channel, asking doubts.
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index 35470de14a95..c479d30eeaa3 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -864,7 +864,14 @@ and is between 256 and 4096 characters. It is defined in the file
864 Format: <1-256> 864 Format: <1-256>
865 865
866 maxcpus= [SMP] Maximum number of processors that an SMP kernel 866 maxcpus= [SMP] Maximum number of processors that an SMP kernel
867 should make use of 867 should make use of.
868 Using "nosmp" or "maxcpus=0" will disable SMP
869 entirely (the MPS table probe still happens, though).
870 A command-line option of "maxcpus=<NUM>", where <NUM>
871 is an integer greater than 0, limits the maximum number
872 of CPUs activated in SMP mode to <NUM>.
873 Using "maxcpus=1" on an SMP kernel is the trivial
874 case of an SMP kernel with only one CPU.
868 875
869 max_addr=[KMG] [KNL,BOOT,ia64] All physical memory greater than or 876 max_addr=[KMG] [KNL,BOOT,ia64] All physical memory greater than or
870 equal to this physical address is ignored. 877 equal to this physical address is ignored.
diff --git a/Documentation/sh/new-machine.txt b/Documentation/sh/new-machine.txt
index 73988e0d112b..5482bf5d005b 100644
--- a/Documentation/sh/new-machine.txt
+++ b/Documentation/sh/new-machine.txt
@@ -17,7 +17,7 @@ of the board-specific code (with the exception of stboards) ended up
17in arch/sh/kernel/ directly, with board-specific headers ending up in 17in arch/sh/kernel/ directly, with board-specific headers ending up in
18include/asm-sh/. For the new kernel, things are broken out by board type, 18include/asm-sh/. For the new kernel, things are broken out by board type,
19companion chip type, and CPU type. Looking at a tree view of this directory 19companion chip type, and CPU type. Looking at a tree view of this directory
20heirarchy looks like the following: 20hierarchy looks like the following:
21 21
22Board-specific code: 22Board-specific code:
23 23
@@ -108,7 +108,7 @@ overloading), and you can feel free to name the directory after the family
108member itself. 108member itself.
109 109
110There are a few things that each board is required to have, both in the 110There are a few things that each board is required to have, both in the
111arch/sh/boards and the include/asm-sh/ heirarchy. In order to better 111arch/sh/boards and the include/asm-sh/ hierarchy. In order to better
112explain this, we use some examples for adding an imaginary board. For 112explain this, we use some examples for adding an imaginary board. For
113setup code, we're required at the very least to provide definitions for 113setup code, we're required at the very least to provide definitions for
114get_system_type() and platform_setup(). For our imaginary board, this 114get_system_type() and platform_setup(). For our imaginary board, this
diff --git a/Documentation/video4linux/bttv/Insmod-options b/Documentation/video4linux/bttv/Insmod-options
index bb7c2cac7917..5ef75787f83a 100644
--- a/Documentation/video4linux/bttv/Insmod-options
+++ b/Documentation/video4linux/bttv/Insmod-options
@@ -57,7 +57,7 @@ bttv.o
57 i2c_udelay= Allow reduce I2C speed. Default is 5 usecs 57 i2c_udelay= Allow reduce I2C speed. Default is 5 usecs
58 (meaning 66,67 Kbps). The default is the 58 (meaning 66,67 Kbps). The default is the
59 maximum supported speed by kernel bitbang 59 maximum supported speed by kernel bitbang
60 algoritm. You may use lower numbers, if I2C 60 algorithm. You may use lower numbers, if I2C
61 messages are lost (16 is known to work on 61 messages are lost (16 is known to work on
62 all supported cards). 62 all supported cards).
63 63
diff --git a/README b/README
index 46a66c6e76df..159912cf5155 100644
--- a/README
+++ b/README
@@ -24,7 +24,7 @@ ON WHAT HARDWARE DOES IT RUN?
24 today Linux also runs on (at least) the Compaq Alpha AXP, Sun SPARC and 24 today Linux also runs on (at least) the Compaq Alpha AXP, Sun SPARC and
25 UltraSPARC, Motorola 68000, PowerPC, PowerPC64, ARM, Hitachi SuperH, Cell, 25 UltraSPARC, Motorola 68000, PowerPC, PowerPC64, ARM, Hitachi SuperH, Cell,
26 IBM S/390, MIPS, HP PA-RISC, Intel IA-64, DEC VAX, AMD x86-64, AXIS CRIS, 26 IBM S/390, MIPS, HP PA-RISC, Intel IA-64, DEC VAX, AMD x86-64, AXIS CRIS,
27 Cris, Xtensa, AVR32 and Renesas M32R architectures. 27 Xtensa, AVR32 and Renesas M32R architectures.
28 28
29 Linux is easily portable to most general-purpose 32- or 64-bit architectures 29 Linux is easily portable to most general-purpose 32- or 64-bit architectures
30 as long as they have a paged memory management unit (PMMU) and a port of the 30 as long as they have a paged memory management unit (PMMU) and a port of the
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 8bf97e0eacdb..4409561ea32c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -427,7 +427,7 @@ source arch/arm/mm/Kconfig
427 427
428config IWMMXT 428config IWMMXT
429 bool "Enable iWMMXt support" 429 bool "Enable iWMMXt support"
430 depends CPU_XSCALE || CPU_XSC3 430 depends on CPU_XSCALE || CPU_XSC3
431 default y if PXA27x 431 default y if PXA27x
432 help 432 help
433 Enable support for iWMMXt context switching at run time if 433 Enable support for iWMMXt context switching at run time if
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
index 4b277199d0e8..e684e9b38216 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -525,7 +525,7 @@ config CPU_BIG_ENDIAN
525 of your chipset/board/processor. 525 of your chipset/board/processor.
526 526
527config CPU_HIGH_VECTOR 527config CPU_HIGH_VECTOR
528 depends !MMU && CPU_CP15 && !CPU_ARM740T 528 depends on !MMU && CPU_CP15 && !CPU_ARM740T
529 bool "Select the High exception vector" 529 bool "Select the High exception vector"
530 default n 530 default n
531 help 531 help
diff --git a/arch/cris/arch-v10/drivers/pcf8563.c b/arch/cris/arch-v10/drivers/pcf8563.c
index 107796e50149..d47cfbf98d6e 100644
--- a/arch/cris/arch-v10/drivers/pcf8563.c
+++ b/arch/cris/arch-v10/drivers/pcf8563.c
@@ -311,7 +311,7 @@ pcf8563_register(void)
311{ 311{
312 pcf8563_init(); 312 pcf8563_init();
313 if (register_chrdev(PCF8563_MAJOR, DEVICE_NAME, &pcf8563_fops) < 0) { 313 if (register_chrdev(PCF8563_MAJOR, DEVICE_NAME, &pcf8563_fops) < 0) {
314 printk(KERN_INFO "%s: Unable to get major numer %d for RTC device.\n", 314 printk(KERN_INFO "%s: Unable to get major number %d for RTC device.\n",
315 PCF8563_NAME, PCF8563_MAJOR); 315 PCF8563_NAME, PCF8563_MAJOR);
316 return -1; 316 return -1;
317 } 317 }
diff --git a/arch/cris/arch-v32/drivers/pcf8563.c b/arch/cris/arch-v32/drivers/pcf8563.c
index 544ab0179411..24b919b3821a 100644
--- a/arch/cris/arch-v32/drivers/pcf8563.c
+++ b/arch/cris/arch-v32/drivers/pcf8563.c
@@ -171,7 +171,7 @@ pcf8563_init(void)
171 goto err; 171 goto err;
172 172
173 if (register_chrdev(PCF8563_MAJOR, DEVICE_NAME, &pcf8563_fops) < 0) { 173 if (register_chrdev(PCF8563_MAJOR, DEVICE_NAME, &pcf8563_fops) < 0) {
174 printk(KERN_INFO "%s: Unable to get major numer %d for RTC device.\n", 174 printk(KERN_INFO "%s: Unable to get major number %d for RTC device.\n",
175 PCF8563_NAME, PCF8563_MAJOR); 175 PCF8563_NAME, PCF8563_MAJOR);
176 return -1; 176 return -1;
177 } 177 }
diff --git a/arch/i386/boot/compressed/relocs.c b/arch/i386/boot/compressed/relocs.c
index 881951ca03e1..ce4fda261aaf 100644
--- a/arch/i386/boot/compressed/relocs.c
+++ b/arch/i386/boot/compressed/relocs.c
@@ -11,6 +11,7 @@
11#include <endian.h> 11#include <endian.h>
12 12
13#define MAX_SHDRS 100 13#define MAX_SHDRS 100
14#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
14static Elf32_Ehdr ehdr; 15static Elf32_Ehdr ehdr;
15static Elf32_Shdr shdr[MAX_SHDRS]; 16static Elf32_Shdr shdr[MAX_SHDRS];
16static Elf32_Sym *symtab[MAX_SHDRS]; 17static Elf32_Sym *symtab[MAX_SHDRS];
@@ -71,7 +72,7 @@ static const char *sym_type(unsigned type)
71#undef SYM_TYPE 72#undef SYM_TYPE
72 }; 73 };
73 const char *name = "unknown sym type name"; 74 const char *name = "unknown sym type name";
74 if (type < sizeof(type_name)/sizeof(type_name[0])) { 75 if (type < ARRAY_SIZE(type_name)) {
75 name = type_name[type]; 76 name = type_name[type];
76 } 77 }
77 return name; 78 return name;
@@ -87,7 +88,7 @@ static const char *sym_bind(unsigned bind)
87#undef SYM_BIND 88#undef SYM_BIND
88 }; 89 };
89 const char *name = "unknown sym bind name"; 90 const char *name = "unknown sym bind name";
90 if (bind < sizeof(bind_name)/sizeof(bind_name[0])) { 91 if (bind < ARRAY_SIZE(bind_name)) {
91 name = bind_name[bind]; 92 name = bind_name[bind];
92 } 93 }
93 return name; 94 return name;
@@ -104,7 +105,7 @@ static const char *sym_visibility(unsigned visibility)
104#undef SYM_VISIBILITY 105#undef SYM_VISIBILITY
105 }; 106 };
106 const char *name = "unknown sym visibility name"; 107 const char *name = "unknown sym visibility name";
107 if (visibility < sizeof(visibility_name)/sizeof(visibility_name[0])) { 108 if (visibility < ARRAY_SIZE(visibility_name)) {
108 name = visibility_name[visibility]; 109 name = visibility_name[visibility];
109 } 110 }
110 return name; 111 return name;
@@ -128,7 +129,7 @@ static const char *rel_type(unsigned type)
128#undef REL_TYPE 129#undef REL_TYPE
129 }; 130 };
130 const char *name = "unknown type rel type name"; 131 const char *name = "unknown type rel type name";
131 if (type < sizeof(type_name)/sizeof(type_name[0])) { 132 if (type < ARRAY_SIZE(type_name)) {
132 name = type_name[type]; 133 name = type_name[type];
133 } 134 }
134 return name; 135 return name;
diff --git a/arch/i386/kernel/topology.c b/arch/i386/kernel/topology.c
index 79cf608e14ca..45782356a618 100644
--- a/arch/i386/kernel/topology.c
+++ b/arch/i386/kernel/topology.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * arch/i386/kernel/topology.c - Populate driverfs with topology information 2 * arch/i386/kernel/topology.c - Populate sysfs with topology information
3 * 3 *
4 * Written by: Matthew Dobson, IBM Corporation 4 * Written by: Matthew Dobson, IBM Corporation
5 * Original Code: Paul Dorwin, IBM Corporation, Patrick Mochel, OSDL 5 * Original Code: Paul Dorwin, IBM Corporation, Patrick Mochel, OSDL
diff --git a/arch/i386/oprofile/nmi_int.c b/arch/i386/oprofile/nmi_int.c
index 3700eef78743..8fda7be9dd4d 100644
--- a/arch/i386/oprofile/nmi_int.c
+++ b/arch/i386/oprofile/nmi_int.c
@@ -63,7 +63,7 @@ static struct sys_device device_oprofile = {
63}; 63};
64 64
65 65
66static int __init init_driverfs(void) 66static int __init init_sysfs(void)
67{ 67{
68 int error; 68 int error;
69 if (!(error = sysdev_class_register(&oprofile_sysclass))) 69 if (!(error = sysdev_class_register(&oprofile_sysclass)))
@@ -72,15 +72,15 @@ static int __init init_driverfs(void)
72} 72}
73 73
74 74
75static void exit_driverfs(void) 75static void exit_sysfs(void)
76{ 76{
77 sysdev_unregister(&device_oprofile); 77 sysdev_unregister(&device_oprofile);
78 sysdev_class_unregister(&oprofile_sysclass); 78 sysdev_class_unregister(&oprofile_sysclass);
79} 79}
80 80
81#else 81#else
82#define init_driverfs() do { } while (0) 82#define init_sysfs() do { } while (0)
83#define exit_driverfs() do { } while (0) 83#define exit_sysfs() do { } while (0)
84#endif /* CONFIG_PM */ 84#endif /* CONFIG_PM */
85 85
86static int profile_exceptions_notify(struct notifier_block *self, 86static int profile_exceptions_notify(struct notifier_block *self,
@@ -385,7 +385,7 @@ static int __init ppro_init(char ** cpu_type)
385 return 1; 385 return 1;
386} 386}
387 387
388/* in order to get driverfs right */ 388/* in order to get sysfs right */
389static int using_nmi; 389static int using_nmi;
390 390
391int __init op_nmi_init(struct oprofile_operations *ops) 391int __init op_nmi_init(struct oprofile_operations *ops)
@@ -440,7 +440,7 @@ int __init op_nmi_init(struct oprofile_operations *ops)
440 return -ENODEV; 440 return -ENODEV;
441 } 441 }
442 442
443 init_driverfs(); 443 init_sysfs();
444 using_nmi = 1; 444 using_nmi = 1;
445 ops->create_files = nmi_create_files; 445 ops->create_files = nmi_create_files;
446 ops->setup = nmi_setup; 446 ops->setup = nmi_setup;
@@ -456,5 +456,5 @@ int __init op_nmi_init(struct oprofile_operations *ops)
456void op_nmi_exit(void) 456void op_nmi_exit(void)
457{ 457{
458 if (using_nmi) 458 if (using_nmi)
459 exit_driverfs(); 459 exit_sysfs();
460} 460}
diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c
index 2ecb20b551e1..9ddf896a137a 100644
--- a/arch/ia64/kernel/perfmon.c
+++ b/arch/ia64/kernel/perfmon.c
@@ -147,7 +147,7 @@
147 * in UP: 147 * in UP:
148 * - we need to protect against PMU overflow interrupts (local_irq_disable) 148 * - we need to protect against PMU overflow interrupts (local_irq_disable)
149 * 149 *
150 * spin_lock_irqsave()/spin_lock_irqrestore(): 150 * spin_lock_irqsave()/spin_unlock_irqrestore():
151 * in SMP: local_irq_disable + spin_lock 151 * in SMP: local_irq_disable + spin_lock
152 * in UP : local_irq_disable 152 * in UP : local_irq_disable
153 * 153 *
diff --git a/arch/m32r/lib/usercopy.c b/arch/m32r/lib/usercopy.c
index 896cef1aca5f..82abd159dbef 100644
--- a/arch/m32r/lib/usercopy.c
+++ b/arch/m32r/lib/usercopy.c
@@ -293,7 +293,7 @@ long strnlen_user(const char __user *s, long n)
293 : "0" (n), "1" (s), "r" (n & 3), "r" (mask), "r"(0x01010101) 293 : "0" (n), "1" (s), "r" (n & 3), "r" (mask), "r"(0x01010101)
294 : "r0", "r1", "cbit"); 294 : "r0", "r1", "cbit");
295 295
296 /* NOTE: strnlen_user() algorism: 296 /* NOTE: strnlen_user() algorithm:
297 * { 297 * {
298 * char *p; 298 * char *p;
299 * for (p = s; n-- && *p != '\0'; ++p) 299 * for (p = s; n-- && *p != '\0'; ++p)
@@ -369,7 +369,7 @@ long strnlen_user(const char __user *s, long n)
369 : "0" (n), "1" (s), "r" (n & 3), "r" (mask), "r"(0x01010101) 369 : "0" (n), "1" (s), "r" (n & 3), "r" (mask), "r"(0x01010101)
370 : "r0", "r1", "r2", "r3", "cbit"); 370 : "r0", "r1", "r2", "r3", "cbit");
371 371
372 /* NOTE: strnlen_user() algorism: 372 /* NOTE: strnlen_user() algorithm:
373 * { 373 * {
374 * char *p; 374 * char *p;
375 * for (p = s; n-- && *p != '\0'; ++p) 375 * for (p = s; n-- && *p != '\0'; ++p)
diff --git a/arch/m68knommu/platform/5307/timers.c b/arch/m68knommu/platform/5307/timers.c
index 87b112b363a6..92e58070b016 100644
--- a/arch/m68knommu/platform/5307/timers.c
+++ b/arch/m68knommu/platform/5307/timers.c
@@ -104,7 +104,7 @@ unsigned long coldfire_timer_offset(void)
104 104
105/* 105/*
106 * Choose a reasonably fast profile timer. Make it an odd value to 106 * Choose a reasonably fast profile timer. Make it an odd value to
107 * try and get good coverage of kernal operations. 107 * try and get good coverage of kernel operations.
108 */ 108 */
109#define PROFILEHZ 1013 109#define PROFILEHZ 1013
110 110
diff --git a/arch/mips/kernel/machine_kexec.c b/arch/mips/kernel/machine_kexec.c
index e0ad754c7edd..8f42fa85ac9e 100644
--- a/arch/mips/kernel/machine_kexec.c
+++ b/arch/mips/kernel/machine_kexec.c
@@ -13,8 +13,8 @@
13#include <asm/cacheflush.h> 13#include <asm/cacheflush.h>
14#include <asm/page.h> 14#include <asm/page.h>
15 15
16const extern unsigned char relocate_new_kernel[]; 16extern const unsigned char relocate_new_kernel[];
17const extern unsigned int relocate_new_kernel_size; 17extern const unsigned int relocate_new_kernel_size;
18 18
19extern unsigned long kexec_start_address; 19extern unsigned long kexec_start_address;
20extern unsigned long kexec_indirection_page; 20extern unsigned long kexec_indirection_page;
diff --git a/arch/parisc/kernel/topology.c b/arch/parisc/kernel/topology.c
index 068b20d822e7..d71cb018a21e 100644
--- a/arch/parisc/kernel/topology.c
+++ b/arch/parisc/kernel/topology.c
@@ -1,5 +1,5 @@
1/* 1/*
2 * arch/parisc/kernel/topology.c - Populate driverfs with topology information 2 * arch/parisc/kernel/topology.c - Populate sysfs with topology information
3 * 3 *
4 * This program is free software; you can redistribute it and/or modify 4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by 5 * it under the terms of the GNU General Public License as published by
diff --git a/arch/powerpc/kernel/rtas.c b/arch/powerpc/kernel/rtas.c
index 76b5d7ebdcc6..9d0735a54564 100644
--- a/arch/powerpc/kernel/rtas.c
+++ b/arch/powerpc/kernel/rtas.c
@@ -182,7 +182,7 @@ void rtas_progress(char *s, unsigned short hex)
182 char *os; 182 char *os;
183 static int display_character, set_indicator; 183 static int display_character, set_indicator;
184 static int display_width, display_lines, form_feed; 184 static int display_width, display_lines, form_feed;
185 const static int *row_width; 185 static const int *row_width;
186 static DEFINE_SPINLOCK(progress_lock); 186 static DEFINE_SPINLOCK(progress_lock);
187 static int current_line; 187 static int current_line;
188 static int pending_newline = 0; /* did last write end with unprinted newline? */ 188 static int pending_newline = 0; /* did last write end with unprinted newline? */
diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c
index 262790910ff2..e86c37c82cfd 100644
--- a/arch/powerpc/mm/numa.c
+++ b/arch/powerpc/mm/numa.c
@@ -154,7 +154,7 @@ EXPORT_SYMBOL_GPL(of_node_to_nid);
154 * characteristics relative to its multiple connections. We ignore 154 * characteristics relative to its multiple connections. We ignore
155 * this for now. We also assume that all cpu and memory sets have 155 * this for now. We also assume that all cpu and memory sets have
156 * their distances represented at a common level. This won't be 156 * their distances represented at a common level. This won't be
157 * true for heirarchical NUMA. 157 * true for hierarchical NUMA.
158 * 158 *
159 * In any case the ibm,associativity-reference-points should give 159 * In any case the ibm,associativity-reference-points should give
160 * the correct depth for a normal NUMA system. 160 * the correct depth for a normal NUMA system.
diff --git a/arch/sh/kernel/cpu/sh2/clock-sh7619.c b/arch/sh/kernel/cpu/sh2/clock-sh7619.c
index d0440b269702..d2c157917999 100644
--- a/arch/sh/kernel/cpu/sh2/clock-sh7619.c
+++ b/arch/sh/kernel/cpu/sh2/clock-sh7619.c
@@ -18,8 +18,8 @@
18#include <asm/freq.h> 18#include <asm/freq.h>
19#include <asm/io.h> 19#include <asm/io.h>
20 20
21const static int pll1rate[]={1,2}; 21static const int pll1rate[] = {1,2};
22const static int pfc_divisors[]={1,2,0,4}; 22static const int pfc_divisors[] = {1,2,0,4};
23 23
24#if (CONFIG_SH_CLK_MD == 1) || (CONFIG_SH_CLK_MD == 2) 24#if (CONFIG_SH_CLK_MD == 1) || (CONFIG_SH_CLK_MD == 2)
25#define PLL2 (4) 25#define PLL2 (4)
diff --git a/arch/sh/kernel/cpu/sh2a/clock-sh7206.c b/arch/sh/kernel/cpu/sh2a/clock-sh7206.c
index a9ad309c6a33..82d7f991ef6b 100644
--- a/arch/sh/kernel/cpu/sh2a/clock-sh7206.c
+++ b/arch/sh/kernel/cpu/sh2a/clock-sh7206.c
@@ -18,8 +18,8 @@
18#include <asm/freq.h> 18#include <asm/freq.h>
19#include <asm/io.h> 19#include <asm/io.h>
20 20
21const static int pll1rate[]={1,2,3,4,6,8}; 21static const int pll1rate[]={1,2,3,4,6,8};
22const static int pfc_divisors[]={1,2,3,4,6,8,12}; 22static const int pfc_divisors[]={1,2,3,4,6,8,12};
23#define ifc_divisors pfc_divisors 23#define ifc_divisors pfc_divisors
24 24
25#if (CONFIG_SH_CLK_MD == 2) 25#if (CONFIG_SH_CLK_MD == 2)
diff --git a/arch/v850/Kconfig b/arch/v850/Kconfig
index dbfab8fc9b49..50ccc7f57cd0 100644
--- a/arch/v850/Kconfig
+++ b/arch/v850/Kconfig
@@ -217,7 +217,7 @@ menu "Processor type and features"
217 # Some platforms pre-zero memory, in which case the kernel doesn't need to 217 # Some platforms pre-zero memory, in which case the kernel doesn't need to
218 config ZERO_BSS 218 config ZERO_BSS
219 bool 219 bool
220 depends !V850E2_SIM85E2C 220 depends on !V850E2_SIM85E2C
221 default y 221 default y
222 222
223 # The crappy-ass zone allocator requires that the start of allocatable 223 # The crappy-ass zone allocator requires that the start of allocatable
diff --git a/arch/x86_64/kernel/time.c b/arch/x86_64/kernel/time.c
index a87c51705620..c9addcfb96dc 100644
--- a/arch/x86_64/kernel/time.c
+++ b/arch/x86_64/kernel/time.c
@@ -418,7 +418,7 @@ static struct sysdev_class timer_sysclass = {
418 set_kset_name("timer"), 418 set_kset_name("timer"),
419}; 419};
420 420
421/* XXX this driverfs stuff should probably go elsewhere later -john */ 421/* XXX this sysfs stuff should probably go elsewhere later -john */
422static struct sys_device device_timer = { 422static struct sys_device device_timer = {
423 .id = 0, 423 .id = 0,
424 .cls = &timer_sysclass, 424 .cls = &timer_sysclass,
diff --git a/block/Kconfig.iosched b/block/Kconfig.iosched
index 903f0d3b6852..7e803fc88770 100644
--- a/block/Kconfig.iosched
+++ b/block/Kconfig.iosched
@@ -16,10 +16,10 @@ config IOSCHED_AS
16 tristate "Anticipatory I/O scheduler" 16 tristate "Anticipatory I/O scheduler"
17 default y 17 default y
18 ---help--- 18 ---help---
19 The anticipatory I/O scheduler is the default disk scheduler. It is 19 The anticipatory I/O scheduler is generally a good choice for most
20 generally a good choice for most environments, but is quite large and 20 environments, but is quite large and complex when compared to the
21 complex when compared to the deadline I/O scheduler, it can also be 21 deadline I/O scheduler, it can also be slower in some cases
22 slower in some cases especially some database loads. 22 especially some database loads.
23 23
24config IOSCHED_DEADLINE 24config IOSCHED_DEADLINE
25 tristate "Deadline I/O scheduler" 25 tristate "Deadline I/O scheduler"
@@ -38,6 +38,7 @@ config IOSCHED_CFQ
38 The CFQ I/O scheduler tries to distribute bandwidth equally 38 The CFQ I/O scheduler tries to distribute bandwidth equally
39 among all processes in the system. It should provide a fair 39 among all processes in the system. It should provide a fair
40 working environment, suitable for desktop systems. 40 working environment, suitable for desktop systems.
41 This is the default I/O scheduler.
41 42
42choice 43choice
43 prompt "Default I/O scheduler" 44 prompt "Default I/O scheduler"
diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
index 7fd095efaebd..fe7ef3394144 100644
--- a/drivers/base/cpu.c
+++ b/drivers/base/cpu.c
@@ -103,7 +103,7 @@ static SYSDEV_ATTR(crash_notes, 0400, show_crash_notes, NULL);
103#endif 103#endif
104 104
105/* 105/*
106 * register_cpu - Setup a driverfs device for a CPU. 106 * register_cpu - Setup a sysfs device for a CPU.
107 * @cpu - cpu->hotpluggable field set to 1 will generate a control file in 107 * @cpu - cpu->hotpluggable field set to 1 will generate a control file in
108 * sysfs for this CPU. 108 * sysfs for this CPU.
109 * @num - CPU number to use when creating the device. 109 * @num - CPU number to use when creating the device.
diff --git a/drivers/base/node.c b/drivers/base/node.c
index 475e33f76e0d..cae346ef1b20 100644
--- a/drivers/base/node.c
+++ b/drivers/base/node.c
@@ -133,7 +133,7 @@ static SYSDEV_ATTR(distance, S_IRUGO, node_read_distance, NULL);
133 133
134 134
135/* 135/*
136 * register_node - Setup a driverfs device for a node. 136 * register_node - Setup a sysfs device for a node.
137 * @num - Node number to use when creating the device. 137 * @num - Node number to use when creating the device.
138 * 138 *
139 * Initialize and register the node device. 139 * Initialize and register the node device.
diff --git a/drivers/char/rio/rio_linux.c b/drivers/char/rio/rio_linux.c
index 85c161845260..294e9cb0c449 100644
--- a/drivers/char/rio/rio_linux.c
+++ b/drivers/char/rio/rio_linux.c
@@ -1146,7 +1146,7 @@ static int __init rio_init(void)
1146 rio_dprintk(RIO_DEBUG_INIT, "Enabling interrupts on rio card.\n"); 1146 rio_dprintk(RIO_DEBUG_INIT, "Enabling interrupts on rio card.\n");
1147 hp->Mode |= RIO_PCI_INT_ENABLE; 1147 hp->Mode |= RIO_PCI_INT_ENABLE;
1148 } else 1148 } else
1149 hp->Mode &= !RIO_PCI_INT_ENABLE; 1149 hp->Mode &= ~RIO_PCI_INT_ENABLE;
1150 rio_dprintk(RIO_DEBUG_INIT, "New Mode: %x\n", hp->Mode); 1150 rio_dprintk(RIO_DEBUG_INIT, "New Mode: %x\n", hp->Mode);
1151 rio_start_card_running(hp); 1151 rio_start_card_running(hp);
1152 } 1152 }
diff --git a/drivers/i2c/busses/i2c-ali1535.c b/drivers/i2c/busses/i2c-ali1535.c
index 6fd8ad7faa06..1e277ba5a9f3 100644
--- a/drivers/i2c/busses/i2c-ali1535.c
+++ b/drivers/i2c/busses/i2c-ali1535.c
@@ -494,7 +494,7 @@ static int __devinit ali1535_probe(struct pci_dev *dev, const struct pci_device_
494 return -ENODEV; 494 return -ENODEV;
495 } 495 }
496 496
497 /* set up the driverfs linkage to our parent device */ 497 /* set up the sysfs linkage to our parent device */
498 ali1535_adapter.dev.parent = &dev->dev; 498 ali1535_adapter.dev.parent = &dev->dev;
499 499
500 snprintf(ali1535_adapter.name, I2C_NAME_SIZE, 500 snprintf(ali1535_adapter.name, I2C_NAME_SIZE,
diff --git a/drivers/i2c/busses/i2c-ali15x3.c b/drivers/i2c/busses/i2c-ali15x3.c
index e4e0df106812..e47fe01bf42a 100644
--- a/drivers/i2c/busses/i2c-ali15x3.c
+++ b/drivers/i2c/busses/i2c-ali15x3.c
@@ -489,7 +489,7 @@ static int __devinit ali15x3_probe(struct pci_dev *dev, const struct pci_device_
489 return -ENODEV; 489 return -ENODEV;
490 } 490 }
491 491
492 /* set up the driverfs linkage to our parent device */ 492 /* set up the sysfs linkage to our parent device */
493 ali15x3_adapter.dev.parent = &dev->dev; 493 ali15x3_adapter.dev.parent = &dev->dev;
494 494
495 snprintf(ali15x3_adapter.name, I2C_NAME_SIZE, 495 snprintf(ali15x3_adapter.name, I2C_NAME_SIZE,
diff --git a/drivers/i2c/busses/i2c-amd756.c b/drivers/i2c/busses/i2c-amd756.c
index fa6155a54cc3..7490dc1771ae 100644
--- a/drivers/i2c/busses/i2c-amd756.c
+++ b/drivers/i2c/busses/i2c-amd756.c
@@ -374,7 +374,7 @@ static int __devinit amd756_probe(struct pci_dev *pdev,
374 dev_dbg(&pdev->dev, "SMBREV = 0x%X\n", temp); 374 dev_dbg(&pdev->dev, "SMBREV = 0x%X\n", temp);
375 dev_dbg(&pdev->dev, "AMD756_smba = 0x%X\n", amd756_ioport); 375 dev_dbg(&pdev->dev, "AMD756_smba = 0x%X\n", amd756_ioport);
376 376
377 /* set up the driverfs linkage to our parent device */ 377 /* set up the sysfs linkage to our parent device */
378 amd756_smbus.dev.parent = &pdev->dev; 378 amd756_smbus.dev.parent = &pdev->dev;
379 379
380 sprintf(amd756_smbus.name, "SMBus %s adapter at %04x", 380 sprintf(amd756_smbus.name, "SMBus %s adapter at %04x",
diff --git a/drivers/i2c/busses/i2c-amd8111.c b/drivers/i2c/busses/i2c-amd8111.c
index 5bba3fb50d71..e15f9e37716a 100644
--- a/drivers/i2c/busses/i2c-amd8111.c
+++ b/drivers/i2c/busses/i2c-amd8111.c
@@ -371,7 +371,7 @@ static int __devinit amd8111_probe(struct pci_dev *dev,
371 smbus->adapter.algo = &smbus_algorithm; 371 smbus->adapter.algo = &smbus_algorithm;
372 smbus->adapter.algo_data = smbus; 372 smbus->adapter.algo_data = smbus;
373 373
374 /* set up the driverfs linkage to our parent device */ 374 /* set up the sysfs linkage to our parent device */
375 smbus->adapter.dev.parent = &dev->dev; 375 smbus->adapter.dev.parent = &dev->dev;
376 376
377 pci_write_config_dword(smbus->dev, AMD_PCI_MISC, 0); 377 pci_write_config_dword(smbus->dev, AMD_PCI_MISC, 0);
diff --git a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c
index 21f2671f7220..6569a36985bd 100644
--- a/drivers/i2c/busses/i2c-i801.c
+++ b/drivers/i2c/busses/i2c-i801.c
@@ -522,7 +522,7 @@ static int __devinit i801_probe(struct pci_dev *dev, const struct pci_device_id
522 else 522 else
523 dev_dbg(&dev->dev, "SMBus using PCI Interrupt\n"); 523 dev_dbg(&dev->dev, "SMBus using PCI Interrupt\n");
524 524
525 /* set up the driverfs linkage to our parent device */ 525 /* set up the sysfs linkage to our parent device */
526 i801_adapter.dev.parent = &dev->dev; 526 i801_adapter.dev.parent = &dev->dev;
527 527
528 snprintf(i801_adapter.name, I2C_NAME_SIZE, 528 snprintf(i801_adapter.name, I2C_NAME_SIZE,
diff --git a/drivers/i2c/busses/i2c-piix4.c b/drivers/i2c/busses/i2c-piix4.c
index d888293c1a9c..21b180904085 100644
--- a/drivers/i2c/busses/i2c-piix4.c
+++ b/drivers/i2c/busses/i2c-piix4.c
@@ -425,7 +425,7 @@ static int __devinit piix4_probe(struct pci_dev *dev,
425 if (retval) 425 if (retval)
426 return retval; 426 return retval;
427 427
428 /* set up the driverfs linkage to our parent device */ 428 /* set up the sysfs linkage to our parent device */
429 piix4_adapter.dev.parent = &dev->dev; 429 piix4_adapter.dev.parent = &dev->dev;
430 430
431 snprintf(piix4_adapter.name, I2C_NAME_SIZE, 431 snprintf(piix4_adapter.name, I2C_NAME_SIZE,
diff --git a/drivers/i2c/busses/i2c-sis5595.c b/drivers/i2c/busses/i2c-sis5595.c
index d333babe4ad3..a6feed449dbe 100644
--- a/drivers/i2c/busses/i2c-sis5595.c
+++ b/drivers/i2c/busses/i2c-sis5595.c
@@ -384,7 +384,7 @@ static int __devinit sis5595_probe(struct pci_dev *dev, const struct pci_device_
384 return -ENODEV; 384 return -ENODEV;
385 } 385 }
386 386
387 /* set up the driverfs linkage to our parent device */ 387 /* set up the sysfs linkage to our parent device */
388 sis5595_adapter.dev.parent = &dev->dev; 388 sis5595_adapter.dev.parent = &dev->dev;
389 389
390 sprintf(sis5595_adapter.name, "SMBus SIS5595 adapter at %04x", 390 sprintf(sis5595_adapter.name, "SMBus SIS5595 adapter at %04x",
diff --git a/drivers/i2c/busses/i2c-sis630.c b/drivers/i2c/busses/i2c-sis630.c
index 172bacf932a6..5fd734f99ee9 100644
--- a/drivers/i2c/busses/i2c-sis630.c
+++ b/drivers/i2c/busses/i2c-sis630.c
@@ -477,7 +477,7 @@ static int __devinit sis630_probe(struct pci_dev *dev, const struct pci_device_i
477 return -ENODEV; 477 return -ENODEV;
478 } 478 }
479 479
480 /* set up the driverfs linkage to our parent device */ 480 /* set up the sysfs linkage to our parent device */
481 sis630_adapter.dev.parent = &dev->dev; 481 sis630_adapter.dev.parent = &dev->dev;
482 482
483 sprintf(sis630_adapter.name, "SMBus SIS630 adapter at %04x", 483 sprintf(sis630_adapter.name, "SMBus SIS630 adapter at %04x",
diff --git a/drivers/i2c/busses/i2c-sis96x.c b/drivers/i2c/busses/i2c-sis96x.c
index 73dae449fb23..4157b0cd604c 100644
--- a/drivers/i2c/busses/i2c-sis96x.c
+++ b/drivers/i2c/busses/i2c-sis96x.c
@@ -297,7 +297,7 @@ static int __devinit sis96x_probe(struct pci_dev *dev,
297 return -EINVAL; 297 return -EINVAL;
298 } 298 }
299 299
300 /* set up the driverfs linkage to our parent device */ 300 /* set up the sysfs linkage to our parent device */
301 sis96x_adapter.dev.parent = &dev->dev; 301 sis96x_adapter.dev.parent = &dev->dev;
302 302
303 snprintf(sis96x_adapter.name, I2C_NAME_SIZE, 303 snprintf(sis96x_adapter.name, I2C_NAME_SIZE,
diff --git a/drivers/i2c/busses/i2c-via.c b/drivers/i2c/busses/i2c-via.c
index bbcc62151f7c..81520868797b 100644
--- a/drivers/i2c/busses/i2c-via.c
+++ b/drivers/i2c/busses/i2c-via.c
@@ -138,7 +138,7 @@ static int __devinit vt586b_probe(struct pci_dev *dev, const struct pci_device_i
138 outb(inb(I2C_DIR) & ~(I2C_SDA | I2C_SCL), I2C_DIR); 138 outb(inb(I2C_DIR) & ~(I2C_SDA | I2C_SCL), I2C_DIR);
139 outb(inb(I2C_OUT) & ~(I2C_SDA | I2C_SCL), I2C_OUT); 139 outb(inb(I2C_OUT) & ~(I2C_SDA | I2C_SCL), I2C_OUT);
140 140
141 /* set up the driverfs linkage to our parent device */ 141 /* set up the sysfs linkage to our parent device */
142 vt586b_adapter.dev.parent = &dev->dev; 142 vt586b_adapter.dev.parent = &dev->dev;
143 143
144 res = i2c_bit_add_bus(&vt586b_adapter); 144 res = i2c_bit_add_bus(&vt586b_adapter);
diff --git a/drivers/ide/Kconfig b/drivers/ide/Kconfig
index 350764ece7fe..49234e32fd16 100644
--- a/drivers/ide/Kconfig
+++ b/drivers/ide/Kconfig
@@ -383,6 +383,9 @@ config BLK_DEV_OFFBOARD
383config BLK_DEV_GENERIC 383config BLK_DEV_GENERIC
384 tristate "Generic PCI IDE Chipset Support" 384 tristate "Generic PCI IDE Chipset Support"
385 depends on BLK_DEV_IDEPCI 385 depends on BLK_DEV_IDEPCI
386 help
387 This option provides generic support for various PCI IDE Chipsets
388 which otherwise might not be supported.
386 389
387config BLK_DEV_OPTI621 390config BLK_DEV_OPTI621
388 tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)" 391 tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)"
diff --git a/drivers/ieee1394/ohci1394.c b/drivers/ieee1394/ohci1394.c
index e982d60ac4b7..06fac0d21264 100644
--- a/drivers/ieee1394/ohci1394.c
+++ b/drivers/ieee1394/ohci1394.c
@@ -180,7 +180,7 @@ static int alloc_dma_trm_ctx(struct ti_ohci *ohci, struct dma_trm_ctx *d,
180static void ohci1394_pci_remove(struct pci_dev *pdev); 180static void ohci1394_pci_remove(struct pci_dev *pdev);
181 181
182#ifndef __LITTLE_ENDIAN 182#ifndef __LITTLE_ENDIAN
183const static size_t hdr_sizes[] = { 183static const size_t hdr_sizes[] = {
184 3, /* TCODE_WRITEQ */ 184 3, /* TCODE_WRITEQ */
185 4, /* TCODE_WRITEB */ 185 4, /* TCODE_WRITEB */
186 3, /* TCODE_WRITE_RESPONSE */ 186 3, /* TCODE_WRITE_RESPONSE */
diff --git a/drivers/infiniband/hw/ipath/ipath_iba6110.c b/drivers/infiniband/hw/ipath/ipath_iba6110.c
index 7468477ba837..993482545021 100644
--- a/drivers/infiniband/hw/ipath/ipath_iba6110.c
+++ b/drivers/infiniband/hw/ipath/ipath_iba6110.c
@@ -1534,7 +1534,7 @@ static int ipath_ht_early_init(struct ipath_devdata *dd)
1534 * @kbase: ipath_base_info pointer 1534 * @kbase: ipath_base_info pointer
1535 * 1535 *
1536 * We set the PCIE flag because the lower bandwidth on PCIe vs 1536 * We set the PCIE flag because the lower bandwidth on PCIe vs
1537 * HyperTransport can affect some user packet algorithims. 1537 * HyperTransport can affect some user packet algorithms.
1538 */ 1538 */
1539static int ipath_ht_get_base_info(struct ipath_portdata *pd, void *kbase) 1539static int ipath_ht_get_base_info(struct ipath_portdata *pd, void *kbase)
1540{ 1540{
diff --git a/drivers/infiniband/hw/ipath/ipath_iba6120.c b/drivers/infiniband/hw/ipath/ipath_iba6120.c
index ae8bf9950c6d..05918e1e7c36 100644
--- a/drivers/infiniband/hw/ipath/ipath_iba6120.c
+++ b/drivers/infiniband/hw/ipath/ipath_iba6120.c
@@ -1293,7 +1293,7 @@ int __attribute__((weak)) ipath_unordered_wc(void)
1293 * @kbase: ipath_base_info pointer 1293 * @kbase: ipath_base_info pointer
1294 * 1294 *
1295 * We set the PCIE flag because the lower bandwidth on PCIe vs 1295 * We set the PCIE flag because the lower bandwidth on PCIe vs
1296 * HyperTransport can affect some user packet algorithims. 1296 * HyperTransport can affect some user packet algorithms.
1297 */ 1297 */
1298static int ipath_pe_get_base_info(struct ipath_portdata *pd, void *kbase) 1298static int ipath_pe_get_base_info(struct ipath_portdata *pd, void *kbase)
1299{ 1299{
diff --git a/drivers/input/serio/libps2.c b/drivers/input/serio/libps2.c
index b3e84d3bb7f7..10d9d74ae43a 100644
--- a/drivers/input/serio/libps2.c
+++ b/drivers/input/serio/libps2.c
@@ -97,7 +97,7 @@ EXPORT_SYMBOL(ps2_drain);
97 97
98int ps2_is_keyboard_id(char id_byte) 98int ps2_is_keyboard_id(char id_byte)
99{ 99{
100 const static char keyboard_ids[] = { 100 static const char keyboard_ids[] = {
101 0xab, /* Regular keyboards */ 101 0xab, /* Regular keyboards */
102 0xac, /* NCD Sun keyboard */ 102 0xac, /* NCD Sun keyboard */
103 0x2b, /* Trust keyboard, translated */ 103 0x2b, /* Trust keyboard, translated */
diff --git a/drivers/isdn/i4l/isdn_ppp.c b/drivers/isdn/i4l/isdn_ppp.c
index 4e3f127e4003..1b2df80c3bce 100644
--- a/drivers/isdn/i4l/isdn_ppp.c
+++ b/drivers/isdn/i4l/isdn_ppp.c
@@ -1680,7 +1680,7 @@ static void isdn_ppp_mp_receive(isdn_net_dev * net_dev, isdn_net_local * lp,
1680 * - we hit a gap in the sequence, so no reassembly/processing is 1680 * - we hit a gap in the sequence, so no reassembly/processing is
1681 * possible ('start' would be set to NULL) 1681 * possible ('start' would be set to NULL)
1682 * 1682 *
1683 * algorightm for this code is derived from code in the book 1683 * algorithm for this code is derived from code in the book
1684 * 'PPP Design And Debugging' by James Carlson (Addison-Wesley) 1684 * 'PPP Design And Debugging' by James Carlson (Addison-Wesley)
1685 */ 1685 */
1686 while (start != NULL || newfrag != NULL) { 1686 while (start != NULL || newfrag != NULL) {
diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c
index e85972222ab4..7c42d53a1cc7 100644
--- a/drivers/media/dvb/dvb-core/dvb_frontend.c
+++ b/drivers/media/dvb/dvb-core/dvb_frontend.c
@@ -915,7 +915,7 @@ static int dvb_frontend_ioctl(struct inode *inode, struct file *file,
915 fetunesettings.parameters.inversion = INVERSION_AUTO; 915 fetunesettings.parameters.inversion = INVERSION_AUTO;
916 } 916 }
917 if (fe->ops.info.type == FE_OFDM) { 917 if (fe->ops.info.type == FE_OFDM) {
918 /* without hierachical coding code_rate_LP is irrelevant, 918 /* without hierarchical coding code_rate_LP is irrelevant,
919 * so we tolerate the otherwise invalid FEC_NONE setting */ 919 * so we tolerate the otherwise invalid FEC_NONE setting */
920 if (fepriv->parameters.u.ofdm.hierarchy_information == HIERARCHY_NONE && 920 if (fepriv->parameters.u.ofdm.hierarchy_information == HIERARCHY_NONE &&
921 fepriv->parameters.u.ofdm.code_rate_LP == FEC_NONE) 921 fepriv->parameters.u.ofdm.code_rate_LP == FEC_NONE)
diff --git a/drivers/media/dvb/frontends/dib3000mb.c b/drivers/media/dvb/frontends/dib3000mb.c
index adbabfdb04a9..b6adea5ffeb8 100644
--- a/drivers/media/dvb/frontends/dib3000mb.c
+++ b/drivers/media/dvb/frontends/dib3000mb.c
@@ -239,7 +239,7 @@ static int dib3000mb_set_frontend(struct dvb_frontend* fe,
239 default: 239 default:
240 return -EINVAL; 240 return -EINVAL;
241 } 241 }
242 deb_setf("hierachy: "); 242 deb_setf("hierarchy: ");
243 switch (ofdm->hierarchy_information) { 243 switch (ofdm->hierarchy_information) {
244 case HIERARCHY_NONE: 244 case HIERARCHY_NONE:
245 deb_setf("none "); 245 deb_setf("none ");
diff --git a/drivers/media/video/pvrusb2/pvrusb2-audio.c b/drivers/media/video/pvrusb2/pvrusb2-audio.c
index 9846c464ec80..122496f36845 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-audio.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-audio.c
@@ -158,7 +158,7 @@ static unsigned int pvr2_msp3400_describe(struct pvr2_msp3400_handler *ctxt,
158} 158}
159 159
160 160
161const static struct pvr2_i2c_handler_functions msp3400_funcs = { 161static const struct pvr2_i2c_handler_functions msp3400_funcs = {
162 .detach = (void (*)(void *))pvr2_msp3400_detach, 162 .detach = (void (*)(void *))pvr2_msp3400_detach,
163 .check = (int (*)(void *))msp3400_check, 163 .check = (int (*)(void *))msp3400_check,
164 .update = (void (*)(void *))msp3400_update, 164 .update = (void (*)(void *))msp3400_update,
diff --git a/drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c b/drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c
index 848fb233d808..8df969c4874c 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c
@@ -226,7 +226,7 @@ static void decoder_reset(struct pvr2_v4l_cx2584x *ctxt)
226} 226}
227 227
228 228
229const static struct pvr2_i2c_handler_functions hfuncs = { 229static const struct pvr2_i2c_handler_functions hfuncs = {
230 .detach = (void (*)(void *))decoder_detach, 230 .detach = (void (*)(void *))decoder_detach,
231 .check = (int (*)(void *))decoder_check, 231 .check = (int (*)(void *))decoder_check,
232 .update = (void (*)(void *))decoder_update, 232 .update = (void (*)(void *))decoder_update,
diff --git a/drivers/media/video/pvrusb2/pvrusb2-std.c b/drivers/media/video/pvrusb2/pvrusb2-std.c
index f95c598ff627..c08925557ed4 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-std.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-std.c
@@ -78,14 +78,14 @@ struct std_name {
78#define CSTD_ALL (CSTD_PAL|CSTD_NTSC|CSTD_SECAM) 78#define CSTD_ALL (CSTD_PAL|CSTD_NTSC|CSTD_SECAM)
79 79
80/* Mapping of standard bits to color system */ 80/* Mapping of standard bits to color system */
81const static struct std_name std_groups[] = { 81static const struct std_name std_groups[] = {
82 {"PAL",CSTD_PAL}, 82 {"PAL",CSTD_PAL},
83 {"NTSC",CSTD_NTSC}, 83 {"NTSC",CSTD_NTSC},
84 {"SECAM",CSTD_SECAM}, 84 {"SECAM",CSTD_SECAM},
85}; 85};
86 86
87/* Mapping of standard bits to modulation system */ 87/* Mapping of standard bits to modulation system */
88const static struct std_name std_items[] = { 88static const struct std_name std_items[] = {
89 {"B",TSTD_B}, 89 {"B",TSTD_B},
90 {"B1",TSTD_B1}, 90 {"B1",TSTD_B1},
91 {"D",TSTD_D}, 91 {"D",TSTD_D},
diff --git a/drivers/media/video/pvrusb2/pvrusb2-tuner.c b/drivers/media/video/pvrusb2/pvrusb2-tuner.c
index af9f246f8d3f..bb17db3f6434 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-tuner.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-tuner.c
@@ -80,7 +80,7 @@ static unsigned int pvr2_tuner_describe(struct pvr2_tuner_handler *ctxt,char *bu
80} 80}
81 81
82 82
83const static struct pvr2_i2c_handler_functions tuner_funcs = { 83static const struct pvr2_i2c_handler_functions tuner_funcs = {
84 .detach = (void (*)(void *))pvr2_tuner_detach, 84 .detach = (void (*)(void *))pvr2_tuner_detach,
85 .check = (int (*)(void *))tuner_check, 85 .check = (int (*)(void *))tuner_check,
86 .update = (void (*)(void *))tuner_update, 86 .update = (void (*)(void *))tuner_update,
diff --git a/drivers/media/video/pvrusb2/pvrusb2-video-v4l.c b/drivers/media/video/pvrusb2/pvrusb2-video-v4l.c
index 05f2cddeb47b..2a826464911a 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-video-v4l.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-video-v4l.c
@@ -201,7 +201,7 @@ static unsigned int decoder_describe(struct pvr2_v4l_decoder *ctxt,char *buf,uns
201} 201}
202 202
203 203
204const static struct pvr2_i2c_handler_functions hfuncs = { 204static const struct pvr2_i2c_handler_functions hfuncs = {
205 .detach = (void (*)(void *))decoder_detach, 205 .detach = (void (*)(void *))decoder_detach,
206 .check = (int (*)(void *))decoder_check, 206 .check = (int (*)(void *))decoder_check,
207 .update = (void (*)(void *))decoder_update, 207 .update = (void (*)(void *))decoder_update,
diff --git a/drivers/media/video/pvrusb2/pvrusb2-wm8775.c b/drivers/media/video/pvrusb2/pvrusb2-wm8775.c
index 2413e5198e16..7794c34c355e 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-wm8775.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-wm8775.c
@@ -126,7 +126,7 @@ static void wm8775_update(struct pvr2_v4l_wm8775 *ctxt)
126} 126}
127 127
128 128
129const static struct pvr2_i2c_handler_functions hfuncs = { 129static const struct pvr2_i2c_handler_functions hfuncs = {
130 .detach = (void (*)(void *))wm8775_detach, 130 .detach = (void (*)(void *))wm8775_detach,
131 .check = (int (*)(void *))wm8775_check, 131 .check = (int (*)(void *))wm8775_check,
132 .update = (void (*)(void *))wm8775_update, 132 .update = (void (*)(void *))wm8775_update,
diff --git a/drivers/net/e1000/e1000_hw.h b/drivers/net/e1000/e1000_hw.h
index d67105883341..bd000b802ee7 100644
--- a/drivers/net/e1000/e1000_hw.h
+++ b/drivers/net/e1000/e1000_hw.h
@@ -3253,7 +3253,7 @@ struct e1000_host_command_info {
3253#define IFE_PMC_AUTO_MDIX 0x0080 /* 1=enable MDI/MDI-X feature, default 0=disabled */ 3253#define IFE_PMC_AUTO_MDIX 0x0080 /* 1=enable MDI/MDI-X feature, default 0=disabled */
3254#define IFE_PMC_FORCE_MDIX 0x0040 /* 1=force MDIX-X, 0=force MDI */ 3254#define IFE_PMC_FORCE_MDIX 0x0040 /* 1=force MDIX-X, 0=force MDI */
3255#define IFE_PMC_MDIX_STATUS 0x0020 /* 1=MDI-X, 0=MDI */ 3255#define IFE_PMC_MDIX_STATUS 0x0020 /* 1=MDI-X, 0=MDI */
3256#define IFE_PMC_AUTO_MDIX_COMPLETE 0x0010 /* Resolution algorthm is completed */ 3256#define IFE_PMC_AUTO_MDIX_COMPLETE 0x0010 /* Resolution algorithm is completed */
3257#define IFE_PMC_MDIX_MODE_SHIFT 6 3257#define IFE_PMC_MDIX_MODE_SHIFT 6
3258#define IFE_PHC_MDIX_RESET_ALL_MASK 0x0000 /* Disable auto MDI-X */ 3258#define IFE_PHC_MDIX_RESET_ALL_MASK 0x0000 /* Disable auto MDI-X */
3259 3259
diff --git a/drivers/net/eexpress.c b/drivers/net/eexpress.c
index 4a50fcb5ad6b..3868b8031266 100644
--- a/drivers/net/eexpress.c
+++ b/drivers/net/eexpress.c
@@ -714,13 +714,6 @@ static int eexp_xmit(struct sk_buff *buf, struct net_device *dev)
714 * check to make sure we've not become wedged. 714 * check to make sure we've not become wedged.
715 */ 715 */
716 716
717/*
718 * Handle an EtherExpress interrupt
719 * If we've finished initializing, start the RU and CU up.
720 * If we've already started, reap tx buffers, handle any received packets,
721 * check to make sure we've not become wedged.
722 */
723
724static unsigned short eexp_start_irq(struct net_device *dev, 717static unsigned short eexp_start_irq(struct net_device *dev,
725 unsigned short status) 718 unsigned short status)
726{ 719{
diff --git a/drivers/net/hamradio/Kconfig b/drivers/net/hamradio/Kconfig
index feb0ada7a025..6e90619b3b41 100644
--- a/drivers/net/hamradio/Kconfig
+++ b/drivers/net/hamradio/Kconfig
@@ -138,7 +138,7 @@ config BAYCOM_SER_HDX
138 ---help--- 138 ---help---
139 This is one of two drivers for Baycom style simple amateur radio 139 This is one of two drivers for Baycom style simple amateur radio
140 modems that connect to a serial interface. The driver supports the 140 modems that connect to a serial interface. The driver supports the
141 ser12 design in full-duplex mode. This is the old driver. It is 141 ser12 design in half-duplex mode. This is the old driver. It is
142 still provided in case your serial interface chip does not work with 142 still provided in case your serial interface chip does not work with
143 the full-duplex driver. This driver is depreciated. To configure 143 the full-duplex driver. This driver is depreciated. To configure
144 the driver, use the sethdlc utility available in the standard ax25 144 the driver, use the sethdlc utility available in the standard ax25
@@ -190,3 +190,4 @@ config YAM
190 To compile this driver as a module, choose M here: the module 190 To compile this driver as a module, choose M here: the module
191 will be called yam. 191 will be called yam.
192 192
193
diff --git a/drivers/net/wireless/wavelan_cs.c b/drivers/net/wireless/wavelan_cs.c
index 5eb81638e846..b04239792f63 100644
--- a/drivers/net/wireless/wavelan_cs.c
+++ b/drivers/net/wireless/wavelan_cs.c
@@ -1168,7 +1168,7 @@ wv_mmc_show(struct net_device * dev)
1168 m.mmr_unused0[6], 1168 m.mmr_unused0[6],
1169 m.mmr_unused0[7]); 1169 m.mmr_unused0[7]);
1170#endif /* DEBUG_SHOW_UNUSED */ 1170#endif /* DEBUG_SHOW_UNUSED */
1171 printk(KERN_DEBUG "Encryption algorythm: %02X - Status: %02X\n", 1171 printk(KERN_DEBUG "Encryption algorithm: %02X - Status: %02X\n",
1172 m.mmr_des_avail, m.mmr_des_status); 1172 m.mmr_des_avail, m.mmr_des_status);
1173#ifdef DEBUG_SHOW_UNUSED 1173#ifdef DEBUG_SHOW_UNUSED
1174 printk(KERN_DEBUG "mmc_unused1[]: %02X:%02X:%02X:%02X:%02X\n", 1174 printk(KERN_DEBUG "mmc_unused1[]: %02X:%02X:%02X:%02X:%02X\n",
@@ -3590,9 +3590,9 @@ wv_82593_config(struct net_device * dev)
3590 cfblk.acloc = TRUE; /* Disable source addr insertion by i82593 */ 3590 cfblk.acloc = TRUE; /* Disable source addr insertion by i82593 */
3591 cfblk.preamb_len = 0; /* 2 bytes preamble (SFD) */ 3591 cfblk.preamb_len = 0; /* 2 bytes preamble (SFD) */
3592 cfblk.loopback = FALSE; 3592 cfblk.loopback = FALSE;
3593 cfblk.lin_prio = 0; /* conform to 802.3 backoff algoritm */ 3593 cfblk.lin_prio = 0; /* conform to 802.3 backoff algorithm */
3594 cfblk.exp_prio = 5; /* conform to 802.3 backoff algoritm */ 3594 cfblk.exp_prio = 5; /* conform to 802.3 backoff algorithm */
3595 cfblk.bof_met = 1; /* conform to 802.3 backoff algoritm */ 3595 cfblk.bof_met = 1; /* conform to 802.3 backoff algorithm */
3596 cfblk.ifrm_spc = 0x20 >> 4; /* 32 bit times interframe spacing */ 3596 cfblk.ifrm_spc = 0x20 >> 4; /* 32 bit times interframe spacing */
3597 cfblk.slottim_low = 0x20 >> 5; /* 32 bit times slot time */ 3597 cfblk.slottim_low = 0x20 >> 5; /* 32 bit times slot time */
3598 cfblk.slottim_hi = 0x0; 3598 cfblk.slottim_hi = 0x0;
diff --git a/drivers/pci/pcie/aer/aerdrv.h b/drivers/pci/pcie/aer/aerdrv.h
index 3c0a58f64dd8..bf655dbaf8e2 100644
--- a/drivers/pci/pcie/aer/aerdrv.h
+++ b/drivers/pci/pcie/aer/aerdrv.h
@@ -85,7 +85,7 @@ struct aer_rpc {
85 struct mutex rpc_mutex; /* 85 struct mutex rpc_mutex; /*
86 * only one thread could do 86 * only one thread could do
87 * recovery on the same 87 * recovery on the same
88 * root port hierachy 88 * root port hierarchy
89 */ 89 */
90 wait_queue_head_t wait_release; 90 wait_queue_head_t wait_release;
91}; 91};
diff --git a/drivers/pcmcia/cardbus.c b/drivers/pcmcia/cardbus.c
index 2d7effe7990d..a1bd763b4e33 100644
--- a/drivers/pcmcia/cardbus.c
+++ b/drivers/pcmcia/cardbus.c
@@ -40,8 +40,6 @@
40 40
41/*====================================================================*/ 41/*====================================================================*/
42 42
43#define FIND_FIRST_BIT(n) ((n) - ((n) & ((n)-1)))
44
45/* Offsets in the Expansion ROM Image Header */ 43/* Offsets in the Expansion ROM Image Header */
46#define ROM_SIGNATURE 0x0000 /* 2 bytes */ 44#define ROM_SIGNATURE 0x0000 /* 2 bytes */
47#define ROM_DATA_PTR 0x0018 /* 2 bytes */ 45#define ROM_DATA_PTR 0x0018 /* 2 bytes */
diff --git a/drivers/sbus/char/vfc_i2c.c b/drivers/sbus/char/vfc_i2c.c
index ceec30648f4f..9efed771f6c0 100644
--- a/drivers/sbus/char/vfc_i2c.c
+++ b/drivers/sbus/char/vfc_i2c.c
@@ -14,7 +14,7 @@
14/* NOTE: It seems to me that the documentation regarding the 14/* NOTE: It seems to me that the documentation regarding the
15pcd8584t/pcf8584 does not show the correct way to address the i2c bus. 15pcd8584t/pcf8584 does not show the correct way to address the i2c bus.
16Based on the information on the I2C bus itself and the remainder of 16Based on the information on the I2C bus itself and the remainder of
17the Phillips docs the following algorithims apper to be correct. I am 17the Phillips docs the following algorithms appear to be correct. I am
18fairly certain that the flowcharts in the phillips docs are wrong. */ 18fairly certain that the flowcharts in the phillips docs are wrong. */
19 19
20 20
diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index 5bf3f07870ba..4cd280e86966 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -230,6 +230,7 @@ config SCSI_SCAN_ASYNC
230 The SCSI subsystem can probe for devices while the rest of the 230 The SCSI subsystem can probe for devices while the rest of the
231 system continues booting, and even probe devices on different 231 system continues booting, and even probe devices on different
232 busses in parallel, leading to a significant speed-up. 232 busses in parallel, leading to a significant speed-up.
233
233 If you have built SCSI as modules, enabling this option can 234 If you have built SCSI as modules, enabling this option can
234 be a problem as the devices may not have been found by the 235 be a problem as the devices may not have been found by the
235 time your system expects them to have been. You can load the 236 time your system expects them to have been. You can load the
@@ -237,8 +238,8 @@ config SCSI_SCAN_ASYNC
237 If you build your SCSI drivers into the kernel, then everything 238 If you build your SCSI drivers into the kernel, then everything
238 will work fine if you say Y here. 239 will work fine if you say Y here.
239 240
240 You can override this choice by specifying scsi_mod.scan="sync" 241 You can override this choice by specifying "scsi_mod.scan=sync"
241 or "async" on the kernel's command line. 242 or async on the kernel's command line.
242 243
243menu "SCSI Transports" 244menu "SCSI Transports"
244 depends on SCSI 245 depends on SCSI
diff --git a/drivers/scsi/a100u2w.c b/drivers/scsi/a100u2w.c
index 2650a5d0a161..7f4241bfb9c4 100644
--- a/drivers/scsi/a100u2w.c
+++ b/drivers/scsi/a100u2w.c
@@ -1067,7 +1067,7 @@ static int __devinit inia100_probe_one(struct pci_dev *pdev,
1067 goto out_disable_device; 1067 goto out_disable_device;
1068 } 1068 }
1069 1069
1070 /* <02> read from base address + 0x50 offset to get the bios balue. */ 1070 /* <02> read from base address + 0x50 offset to get the bios value. */
1071 bios = ORC_RDWORD(port, 0x50); 1071 bios = ORC_RDWORD(port, 0x50);
1072 1072
1073 1073
diff --git a/drivers/scsi/arm/eesox.c b/drivers/scsi/arm/eesox.c
index 4677152142d9..d4136524fc46 100644
--- a/drivers/scsi/arm/eesox.c
+++ b/drivers/scsi/arm/eesox.c
@@ -196,7 +196,7 @@ static void eesoxscsi_buffer_in(void *buf, int length, void __iomem *base)
196 const void __iomem *reg_fas = base + EESOX_FAS216_OFFSET; 196 const void __iomem *reg_fas = base + EESOX_FAS216_OFFSET;
197 const void __iomem *reg_dmastat = base + EESOX_DMASTAT; 197 const void __iomem *reg_dmastat = base + EESOX_DMASTAT;
198 const void __iomem *reg_dmadata = base + EESOX_DMADATA; 198 const void __iomem *reg_dmadata = base + EESOX_DMADATA;
199 const register unsigned long mask = 0xffff; 199 register const unsigned long mask = 0xffff;
200 200
201 do { 201 do {
202 unsigned int status; 202 unsigned int status;
diff --git a/drivers/scsi/osst.c b/drivers/scsi/osst.c
index 9668b73872c7..a967fadb7439 100644
--- a/drivers/scsi/osst.c
+++ b/drivers/scsi/osst.c
@@ -5574,14 +5574,14 @@ static ssize_t osst_version_show(struct device_driver *ddd, char *buf)
5574 5574
5575static DRIVER_ATTR(version, S_IRUGO, osst_version_show, NULL); 5575static DRIVER_ATTR(version, S_IRUGO, osst_version_show, NULL);
5576 5576
5577static int osst_create_driverfs_files(struct device_driver *driverfs) 5577static int osst_create_sysfs_files(struct device_driver *sysfs)
5578{ 5578{
5579 return driver_create_file(driverfs, &driver_attr_version); 5579 return driver_create_file(sysfs, &driver_attr_version);
5580} 5580}
5581 5581
5582static void osst_remove_driverfs_files(struct device_driver *driverfs) 5582static void osst_remove_sysfs_files(struct device_driver *sysfs)
5583{ 5583{
5584 driver_remove_file(driverfs, &driver_attr_version); 5584 driver_remove_file(sysfs, &driver_attr_version);
5585} 5585}
5586 5586
5587/* 5587/*
@@ -5953,7 +5953,7 @@ static int __init init_osst(void)
5953 if (err) 5953 if (err)
5954 goto err_out_chrdev; 5954 goto err_out_chrdev;
5955 5955
5956 err = osst_create_driverfs_files(&osst_template.gendrv); 5956 err = osst_create_sysfs_files(&osst_template.gendrv);
5957 if (err) 5957 if (err)
5958 goto err_out_scsidrv; 5958 goto err_out_scsidrv;
5959 5959
@@ -5973,7 +5973,7 @@ static void __exit exit_osst (void)
5973 int i; 5973 int i;
5974 struct osst_tape * STp; 5974 struct osst_tape * STp;
5975 5975
5976 osst_remove_driverfs_files(&osst_template.gendrv); 5976 osst_remove_sysfs_files(&osst_template.gendrv);
5977 scsi_unregister_driver(&osst_template.gendrv); 5977 scsi_unregister_driver(&osst_template.gendrv);
5978 unregister_chrdev(OSST_MAJOR, "osst"); 5978 unregister_chrdev(OSST_MAJOR, "osst");
5979 osst_sysfs_cleanup(); 5979 osst_sysfs_cleanup();
diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c
index a43b9ec3aefd..d6fe756eb371 100644
--- a/drivers/scsi/scsi_scan.c
+++ b/drivers/scsi/scsi_scan.c
@@ -54,7 +54,7 @@
54#define SCSI_TIMEOUT (2*HZ) 54#define SCSI_TIMEOUT (2*HZ)
55 55
56/* 56/*
57 * Prefix values for the SCSI id's (stored in driverfs name field) 57 * Prefix values for the SCSI id's (stored in sysfs name field)
58 */ 58 */
59#define SCSI_UID_SER_NUM 'S' 59#define SCSI_UID_SER_NUM 'S'
60#define SCSI_UID_UNKNOWN 'Z' 60#define SCSI_UID_UNKNOWN 'Z'
diff --git a/drivers/scsi/scsi_transport_fc.c b/drivers/scsi/scsi_transport_fc.c
index 0d3c10f2134c..58afdb401703 100644
--- a/drivers/scsi/scsi_transport_fc.c
+++ b/drivers/scsi/scsi_transport_fc.c
@@ -855,7 +855,7 @@ static FC_CLASS_DEVICE_ATTR(rport, fast_io_fail_tmo, S_IRUGO | S_IWUSR,
855 855
856/* 856/*
857 * Note: in the target show function we recognize when the remote 857 * Note: in the target show function we recognize when the remote
858 * port is in the heirarchy and do not allow the driver to get 858 * port is in the hierarchy and do not allow the driver to get
859 * involved in sysfs functions. The driver only gets involved if 859 * involved in sysfs functions. The driver only gets involved if
860 * it's the "old" style that doesn't use rports. 860 * it's the "old" style that doesn't use rports.
861 */ 861 */
diff --git a/drivers/scsi/scsi_transport_sas.c b/drivers/scsi/scsi_transport_sas.c
index 6d39150e205b..b2ef71a86292 100644
--- a/drivers/scsi/scsi_transport_sas.c
+++ b/drivers/scsi/scsi_transport_sas.c
@@ -500,7 +500,7 @@ struct sas_phy *sas_phy_alloc(struct device *parent, int number)
500EXPORT_SYMBOL(sas_phy_alloc); 500EXPORT_SYMBOL(sas_phy_alloc);
501 501
502/** 502/**
503 * sas_phy_add -- add a SAS PHY to the device hierachy 503 * sas_phy_add -- add a SAS PHY to the device hierarchy
504 * @phy: The PHY to be added 504 * @phy: The PHY to be added
505 * 505 *
506 * Publishes a SAS PHY to the rest of the system. 506 * Publishes a SAS PHY to the rest of the system.
@@ -1265,7 +1265,7 @@ struct sas_rphy *sas_expander_alloc(struct sas_port *parent,
1265EXPORT_SYMBOL(sas_expander_alloc); 1265EXPORT_SYMBOL(sas_expander_alloc);
1266 1266
1267/** 1267/**
1268 * sas_rphy_add -- add a SAS remote PHY to the device hierachy 1268 * sas_rphy_add -- add a SAS remote PHY to the device hierarchy
1269 * @rphy: The remote PHY to be added 1269 * @rphy: The remote PHY to be added
1270 * 1270 *
1271 * Publishes a SAS remote PHY to the rest of the system. 1271 * Publishes a SAS remote PHY to the rest of the system.
diff --git a/drivers/scsi/st.c b/drivers/scsi/st.c
index 3d2e02381e92..98d8411bbccc 100644
--- a/drivers/scsi/st.c
+++ b/drivers/scsi/st.c
@@ -195,8 +195,8 @@ static int sgl_unmap_user_pages(struct scatterlist *, const unsigned int, int);
195static int st_probe(struct device *); 195static int st_probe(struct device *);
196static int st_remove(struct device *); 196static int st_remove(struct device *);
197 197
198static int do_create_driverfs_files(void); 198static int do_create_sysfs_files(void);
199static void do_remove_driverfs_files(void); 199static void do_remove_sysfs_files(void);
200static int do_create_class_files(struct scsi_tape *, int, int); 200static int do_create_class_files(struct scsi_tape *, int, int);
201 201
202static struct scsi_driver st_template = { 202static struct scsi_driver st_template = {
@@ -4193,7 +4193,7 @@ static int __init init_st(void)
4193 if (err) 4193 if (err)
4194 goto err_chrdev; 4194 goto err_chrdev;
4195 4195
4196 err = do_create_driverfs_files(); 4196 err = do_create_sysfs_files();
4197 if (err) 4197 if (err)
4198 goto err_scsidrv; 4198 goto err_scsidrv;
4199 4199
@@ -4211,7 +4211,7 @@ err_class:
4211 4211
4212static void __exit exit_st(void) 4212static void __exit exit_st(void)
4213{ 4213{
4214 do_remove_driverfs_files(); 4214 do_remove_sysfs_files();
4215 scsi_unregister_driver(&st_template.gendrv); 4215 scsi_unregister_driver(&st_template.gendrv);
4216 unregister_chrdev_region(MKDEV(SCSI_TAPE_MAJOR, 0), 4216 unregister_chrdev_region(MKDEV(SCSI_TAPE_MAJOR, 0),
4217 ST_MAX_TAPE_ENTRIES); 4217 ST_MAX_TAPE_ENTRIES);
@@ -4249,43 +4249,43 @@ static ssize_t st_version_show(struct device_driver *ddd, char *buf)
4249} 4249}
4250static DRIVER_ATTR(version, S_IRUGO, st_version_show, NULL); 4250static DRIVER_ATTR(version, S_IRUGO, st_version_show, NULL);
4251 4251
4252static int do_create_driverfs_files(void) 4252static int do_create_sysfs_files(void)
4253{ 4253{
4254 struct device_driver *driverfs = &st_template.gendrv; 4254 struct device_driver *sysfs = &st_template.gendrv;
4255 int err; 4255 int err;
4256 4256
4257 err = driver_create_file(driverfs, &driver_attr_try_direct_io); 4257 err = driver_create_file(sysfs, &driver_attr_try_direct_io);
4258 if (err) 4258 if (err)
4259 return err; 4259 return err;
4260 err = driver_create_file(driverfs, &driver_attr_fixed_buffer_size); 4260 err = driver_create_file(sysfs, &driver_attr_fixed_buffer_size);
4261 if (err) 4261 if (err)
4262 goto err_try_direct_io; 4262 goto err_try_direct_io;
4263 err = driver_create_file(driverfs, &driver_attr_max_sg_segs); 4263 err = driver_create_file(sysfs, &driver_attr_max_sg_segs);
4264 if (err) 4264 if (err)
4265 goto err_attr_fixed_buf; 4265 goto err_attr_fixed_buf;
4266 err = driver_create_file(driverfs, &driver_attr_version); 4266 err = driver_create_file(sysfs, &driver_attr_version);
4267 if (err) 4267 if (err)
4268 goto err_attr_max_sg; 4268 goto err_attr_max_sg;
4269 4269
4270 return 0; 4270 return 0;
4271 4271
4272err_attr_max_sg: 4272err_attr_max_sg:
4273 driver_remove_file(driverfs, &driver_attr_max_sg_segs); 4273 driver_remove_file(sysfs, &driver_attr_max_sg_segs);
4274err_attr_fixed_buf: 4274err_attr_fixed_buf:
4275 driver_remove_file(driverfs, &driver_attr_fixed_buffer_size); 4275 driver_remove_file(sysfs, &driver_attr_fixed_buffer_size);
4276err_try_direct_io: 4276err_try_direct_io:
4277 driver_remove_file(driverfs, &driver_attr_try_direct_io); 4277 driver_remove_file(sysfs, &driver_attr_try_direct_io);
4278 return err; 4278 return err;
4279} 4279}
4280 4280
4281static void do_remove_driverfs_files(void) 4281static void do_remove_sysfs_files(void)
4282{ 4282{
4283 struct device_driver *driverfs = &st_template.gendrv; 4283 struct device_driver *sysfs = &st_template.gendrv;
4284 4284
4285 driver_remove_file(driverfs, &driver_attr_version); 4285 driver_remove_file(sysfs, &driver_attr_version);
4286 driver_remove_file(driverfs, &driver_attr_max_sg_segs); 4286 driver_remove_file(sysfs, &driver_attr_max_sg_segs);
4287 driver_remove_file(driverfs, &driver_attr_fixed_buffer_size); 4287 driver_remove_file(sysfs, &driver_attr_fixed_buffer_size);
4288 driver_remove_file(driverfs, &driver_attr_try_direct_io); 4288 driver_remove_file(sysfs, &driver_attr_try_direct_io);
4289} 4289}
4290 4290
4291 4291
diff --git a/drivers/scsi/sym53c8xx_2/sym_fw1.h b/drivers/scsi/sym53c8xx_2/sym_fw1.h
index 7b39f4a35e98..7b08d6caaa99 100644
--- a/drivers/scsi/sym53c8xx_2/sym_fw1.h
+++ b/drivers/scsi/sym53c8xx_2/sym_fw1.h
@@ -1020,7 +1020,7 @@ static struct SYM_FWA_SCR SYM_FWA_SCR = {
1020 * It shall be a tagged command. 1020 * It shall be a tagged command.
1021 * Read SIMPLE+TAG. 1021 * Read SIMPLE+TAG.
1022 * The C code will deal with errors. 1022 * The C code will deal with errors.
1023 * Agressive optimization, is'nt it? :) 1023 * Aggressive optimization, isn't it? :)
1024 */ 1024 */
1025 SCR_MOVE_ABS (2) ^ SCR_MSG_IN, 1025 SCR_MOVE_ABS (2) ^ SCR_MSG_IN,
1026 HADDR_1 (msgin), 1026 HADDR_1 (msgin),
@@ -1044,7 +1044,7 @@ static struct SYM_FWA_SCR SYM_FWA_SCR = {
1044 RADDR_1 (dsa), 1044 RADDR_1 (dsa),
1045 /* 1045 /*
1046 * The SIDL still contains the TAG value. 1046 * The SIDL still contains the TAG value.
1047 * Agressive optimization, isn't it? :):) 1047 * Aggressive optimization, isn't it? :):)
1048 */ 1048 */
1049 SCR_REG_SFBR (sidl, SCR_SHL, 0), 1049 SCR_REG_SFBR (sidl, SCR_SHL, 0),
1050 0, 1050 0,
diff --git a/drivers/scsi/sym53c8xx_2/sym_fw2.h b/drivers/scsi/sym53c8xx_2/sym_fw2.h
index 851f2706f220..6e5b952312e3 100644
--- a/drivers/scsi/sym53c8xx_2/sym_fw2.h
+++ b/drivers/scsi/sym53c8xx_2/sym_fw2.h
@@ -956,7 +956,7 @@ static struct SYM_FWA_SCR SYM_FWA_SCR = {
956 * It shall be a tagged command. 956 * It shall be a tagged command.
957 * Read SIMPLE+TAG. 957 * Read SIMPLE+TAG.
958 * The C code will deal with errors. 958 * The C code will deal with errors.
959 * Agressive optimization, is'nt it? :) 959 * Aggressive optimization, isn't it? :)
960 */ 960 */
961 SCR_MOVE_ABS (2) ^ SCR_MSG_IN, 961 SCR_MOVE_ABS (2) ^ SCR_MSG_IN,
962 HADDR_1 (msgin), 962 HADDR_1 (msgin),
@@ -968,7 +968,7 @@ static struct SYM_FWA_SCR SYM_FWA_SCR = {
968 offsetof(struct sym_lcb, head.itlq_tbl_sa), 968 offsetof(struct sym_lcb, head.itlq_tbl_sa),
969 /* 969 /*
970 * The SIDL still contains the TAG value. 970 * The SIDL still contains the TAG value.
971 * Agressive optimization, isn't it? :):) 971 * Aggressive optimization, isn't it? :):)
972 */ 972 */
973 SCR_REG_SFBR (sidl, SCR_SHL, 0), 973 SCR_REG_SFBR (sidl, SCR_SHL, 0),
974 0, 974 0,
diff --git a/drivers/usb/host/ehci-dbg.c b/drivers/usb/host/ehci-dbg.c
index 246afea9e83b..43eddaecc3dd 100644
--- a/drivers/usb/host/ehci-dbg.c
+++ b/drivers/usb/host/ehci-dbg.c
@@ -322,7 +322,7 @@ static inline void remove_debug_files (struct ehci_hcd *bus) { }
322 322
323#else 323#else
324 324
325/* troubleshooting help: expose state in driverfs */ 325/* troubleshooting help: expose state in sysfs */
326 326
327#define speed_char(info1) ({ char tmp; \ 327#define speed_char(info1) ({ char tmp; \
328 switch (info1 & (3 << 12)) { \ 328 switch (info1 & (3 << 12)) { \
diff --git a/fs/cifs/README b/fs/cifs/README
index 432e515431c4..080c5eba112b 100644
--- a/fs/cifs/README
+++ b/fs/cifs/README
@@ -1,5 +1,5 @@
1The CIFS VFS support for Linux supports many advanced network filesystem 1The CIFS VFS support for Linux supports many advanced network filesystem
2features such as heirarchical dfs like namespace, hardlinks, locking and more. 2features such as hierarchical dfs like namespace, hardlinks, locking and more.
3It was designed to comply with the SNIA CIFS Technical Reference (which 3It was designed to comply with the SNIA CIFS Technical Reference (which
4supersedes the 1992 X/Open SMB Standard) as well as to perform best practice 4supersedes the 1992 X/Open SMB Standard) as well as to perform best practice
5practical interoperability with Windows 2000, Windows XP, Samba and equivalent 5practical interoperability with Windows 2000, Windows XP, Samba and equivalent
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c
index b8e91470c27f..24364106b8f9 100644
--- a/fs/cifs/cifssmb.c
+++ b/fs/cifs/cifssmb.c
@@ -2824,10 +2824,10 @@ GetExtAttrOut:
2824 2824
2825 2825
2826/* security id for everyone */ 2826/* security id for everyone */
2827const static struct cifs_sid sid_everyone = 2827static const struct cifs_sid sid_everyone =
2828 {1, 1, {0, 0, 0, 0, 0, 0}, {0, 0, 0, 0}}; 2828 {1, 1, {0, 0, 0, 0, 0, 0}, {0, 0, 0, 0}};
2829/* group users */ 2829/* group users */
2830const static struct cifs_sid sid_user = 2830static const struct cifs_sid sid_user =
2831 {1, 2 , {0, 0, 0, 0, 0, 5}, {32, 545, 0, 0}}; 2831 {1, 2 , {0, 0, 0, 0, 0, 5}, {32, 545, 0, 0}};
2832 2832
2833/* Convert CIFS ACL to POSIX form */ 2833/* Convert CIFS ACL to POSIX form */
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index dc2724fa7622..7916b50f9a13 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -222,7 +222,7 @@ static int ext4_ext_space_block(struct inode *inode)
222 222
223 size = (inode->i_sb->s_blocksize - sizeof(struct ext4_extent_header)) 223 size = (inode->i_sb->s_blocksize - sizeof(struct ext4_extent_header))
224 / sizeof(struct ext4_extent); 224 / sizeof(struct ext4_extent);
225#ifdef AGRESSIVE_TEST 225#ifdef AGGRESSIVE_TEST
226 if (size > 6) 226 if (size > 6)
227 size = 6; 227 size = 6;
228#endif 228#endif
@@ -235,7 +235,7 @@ static int ext4_ext_space_block_idx(struct inode *inode)
235 235
236 size = (inode->i_sb->s_blocksize - sizeof(struct ext4_extent_header)) 236 size = (inode->i_sb->s_blocksize - sizeof(struct ext4_extent_header))
237 / sizeof(struct ext4_extent_idx); 237 / sizeof(struct ext4_extent_idx);
238#ifdef AGRESSIVE_TEST 238#ifdef AGGRESSIVE_TEST
239 if (size > 5) 239 if (size > 5)
240 size = 5; 240 size = 5;
241#endif 241#endif
@@ -249,7 +249,7 @@ static int ext4_ext_space_root(struct inode *inode)
249 size = sizeof(EXT4_I(inode)->i_data); 249 size = sizeof(EXT4_I(inode)->i_data);
250 size -= sizeof(struct ext4_extent_header); 250 size -= sizeof(struct ext4_extent_header);
251 size /= sizeof(struct ext4_extent); 251 size /= sizeof(struct ext4_extent);
252#ifdef AGRESSIVE_TEST 252#ifdef AGGRESSIVE_TEST
253 if (size > 3) 253 if (size > 3)
254 size = 3; 254 size = 3;
255#endif 255#endif
@@ -263,7 +263,7 @@ static int ext4_ext_space_root_idx(struct inode *inode)
263 size = sizeof(EXT4_I(inode)->i_data); 263 size = sizeof(EXT4_I(inode)->i_data);
264 size -= sizeof(struct ext4_extent_header); 264 size -= sizeof(struct ext4_extent_header);
265 size /= sizeof(struct ext4_extent_idx); 265 size /= sizeof(struct ext4_extent_idx);
266#ifdef AGRESSIVE_TEST 266#ifdef AGGRESSIVE_TEST
267 if (size > 4) 267 if (size > 4)
268 size = 4; 268 size = 4;
269#endif 269#endif
@@ -1118,7 +1118,7 @@ ext4_can_extents_be_merged(struct inode *inode, struct ext4_extent *ex1,
1118 */ 1118 */
1119 if (le16_to_cpu(ex1->ee_len) + le16_to_cpu(ex2->ee_len) > EXT_MAX_LEN) 1119 if (le16_to_cpu(ex1->ee_len) + le16_to_cpu(ex2->ee_len) > EXT_MAX_LEN)
1120 return 0; 1120 return 0;
1121#ifdef AGRESSIVE_TEST 1121#ifdef AGGRESSIVE_TEST
1122 if (le16_to_cpu(ex1->ee_len) >= 4) 1122 if (le16_to_cpu(ex1->ee_len) >= 4)
1123 return 0; 1123 return 0;
1124#endif 1124#endif
@@ -1891,8 +1891,8 @@ void ext4_ext_init(struct super_block *sb)
1891 1891
1892 if (test_opt(sb, EXTENTS)) { 1892 if (test_opt(sb, EXTENTS)) {
1893 printk("EXT4-fs: file extents enabled"); 1893 printk("EXT4-fs: file extents enabled");
1894#ifdef AGRESSIVE_TEST 1894#ifdef AGGRESSIVE_TEST
1895 printk(", agressive tests"); 1895 printk(", aggressive tests");
1896#endif 1896#endif
1897#ifdef CHECK_BINSEARCH 1897#ifdef CHECK_BINSEARCH
1898 printk(", check binsearch"); 1898 printk(", check binsearch");
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c
index 50cb8daba4e5..126b1bf02c0e 100644
--- a/fs/lockd/svc.c
+++ b/fs/lockd/svc.c
@@ -440,7 +440,7 @@ static ctl_table nlm_sysctl_root[] = {
440}; 440};
441 441
442/* 442/*
443 * Module (and driverfs) parameters. 443 * Module (and sysfs) parameters.
444 */ 444 */
445 445
446#define param_set_min_max(name, type, which_strtol, min, max) \ 446#define param_set_min_max(name, type, which_strtol, min, max) \
diff --git a/fs/ocfs2/namei.c b/fs/ocfs2/namei.c
index f7fa52bb3f6b..28dd757ff67d 100644
--- a/fs/ocfs2/namei.c
+++ b/fs/ocfs2/namei.c
@@ -1098,7 +1098,7 @@ static int ocfs2_rename(struct inode *old_dir,
1098 BUG(); 1098 BUG();
1099 } 1099 }
1100 1100
1101 /* Assume a directory heirarchy thusly: 1101 /* Assume a directory hierarchy thusly:
1102 * a/b/c 1102 * a/b/c
1103 * a/d 1103 * a/d
1104 * a,b,c, and d are all directories. 1104 * a,b,c, and d are all directories.
diff --git a/include/asm-arm/uaccess.h b/include/asm-arm/uaccess.h
index c92df958802e..4c1a3fa9f259 100644
--- a/include/asm-arm/uaccess.h
+++ b/include/asm-arm/uaccess.h
@@ -109,7 +109,7 @@ extern int __get_user_4(void *);
109 109
110#define get_user(x,p) \ 110#define get_user(x,p) \
111 ({ \ 111 ({ \
112 const register typeof(*(p)) __user *__p asm("r0") = (p);\ 112 register const typeof(*(p)) __user *__p asm("r0") = (p);\
113 register unsigned long __r2 asm("r2"); \ 113 register unsigned long __r2 asm("r2"); \
114 register int __e asm("r0"); \ 114 register int __e asm("r0"); \
115 switch (sizeof(*(__p))) { \ 115 switch (sizeof(*(__p))) { \
@@ -143,8 +143,8 @@ extern int __put_user_8(void *, unsigned long long);
143 143
144#define put_user(x,p) \ 144#define put_user(x,p) \
145 ({ \ 145 ({ \
146 const register typeof(*(p)) __r2 asm("r2") = (x); \ 146 register const typeof(*(p)) __r2 asm("r2") = (x); \
147 const register typeof(*(p)) __user *__p asm("r0") = (p);\ 147 register const typeof(*(p)) __user *__p asm("r0") = (p);\
148 register int __e asm("r0"); \ 148 register int __e asm("r0"); \
149 switch (sizeof(*(__p))) { \ 149 switch (sizeof(*(__p))) { \
150 case 1: \ 150 case 1: \
diff --git a/include/asm-arm26/uaccess.h b/include/asm-arm26/uaccess.h
index 3f2dd1093e58..d64ed84cb2d3 100644
--- a/include/asm-arm26/uaccess.h
+++ b/include/asm-arm26/uaccess.h
@@ -74,7 +74,7 @@ extern int __get_user_bad(void);
74 74
75#define get_user(x,p) \ 75#define get_user(x,p) \
76 ({ \ 76 ({ \
77 const register typeof(*(p)) *__p asm("r0") = (p); \ 77 register const typeof(*(p)) *__p asm("r0") = (p); \
78 register typeof(*(p)) __r1 asm("r1"); \ 78 register typeof(*(p)) __r1 asm("r1"); \
79 register int __e asm("r0"); \ 79 register int __e asm("r0"); \
80 switch (sizeof(*(p))) { \ 80 switch (sizeof(*(p))) { \
@@ -139,8 +139,8 @@ extern int __put_user_bad(void);
139 139
140#define put_user(x,p) \ 140#define put_user(x,p) \
141 ({ \ 141 ({ \
142 const register typeof(*(p)) __r1 asm("r1") = (x); \ 142 register const typeof(*(p)) __r1 asm("r1") = (x); \
143 const register typeof(*(p)) *__p asm("r0") = (p); \ 143 register const typeof(*(p)) *__p asm("r0") = (p); \
144 register int __e asm("r0"); \ 144 register int __e asm("r0"); \
145 switch (sizeof(*(__p))) { \ 145 switch (sizeof(*(__p))) { \
146 case 1: \ 146 case 1: \
@@ -170,8 +170,8 @@ extern int __put_user_bad(void);
170 170
171#define put_user(x,p) \ 171#define put_user(x,p) \
172 ({ \ 172 ({ \
173 const register typeof(*(p)) __r1 asm("r1") = (x); \ 173 register const typeof(*(p)) __r1 asm("r1") = (x); \
174 const register typeof(*(p)) *__p asm("r0") = (p); \ 174 register const typeof(*(p)) *__p asm("r0") = (p); \
175 register int __e asm("r0"); \ 175 register int __e asm("r0"); \
176 switch (sizeof(*(p))) { \ 176 switch (sizeof(*(p))) { \
177 case 1: \ 177 case 1: \
diff --git a/include/asm-ia64/kexec.h b/include/asm-ia64/kexec.h
index 01c36b004747..f2ad469a6ddf 100644
--- a/include/asm-ia64/kexec.h
+++ b/include/asm-ia64/kexec.h
@@ -23,7 +23,7 @@
23 23
24extern struct kimage *ia64_kimage; 24extern struct kimage *ia64_kimage;
25DECLARE_PER_CPU(u64, ia64_mca_pal_base); 25DECLARE_PER_CPU(u64, ia64_mca_pal_base);
26const extern unsigned int relocate_new_kernel_size; 26extern const unsigned int relocate_new_kernel_size;
27extern void relocate_new_kernel(unsigned long, unsigned long, 27extern void relocate_new_kernel(unsigned long, unsigned long,
28 struct ia64_boot_param *, unsigned long); 28 struct ia64_boot_param *, unsigned long);
29static inline void 29static inline void
diff --git a/include/asm-ia64/pal.h b/include/asm-ia64/pal.h
index bc768153f3c9..e43021a99a20 100644
--- a/include/asm-ia64/pal.h
+++ b/include/asm-ia64/pal.h
@@ -32,7 +32,7 @@
32#define PAL_CACHE_FLUSH 1 /* flush i/d cache */ 32#define PAL_CACHE_FLUSH 1 /* flush i/d cache */
33#define PAL_CACHE_INFO 2 /* get detailed i/d cache info */ 33#define PAL_CACHE_INFO 2 /* get detailed i/d cache info */
34#define PAL_CACHE_INIT 3 /* initialize i/d cache */ 34#define PAL_CACHE_INIT 3 /* initialize i/d cache */
35#define PAL_CACHE_SUMMARY 4 /* get summary of cache heirarchy */ 35#define PAL_CACHE_SUMMARY 4 /* get summary of cache hierarchy */
36#define PAL_MEM_ATTRIB 5 /* list supported memory attributes */ 36#define PAL_MEM_ATTRIB 5 /* list supported memory attributes */
37#define PAL_PTCE_INFO 6 /* purge TLB info */ 37#define PAL_PTCE_INFO 6 /* purge TLB info */
38#define PAL_VM_INFO 7 /* return supported virtual memory features */ 38#define PAL_VM_INFO 7 /* return supported virtual memory features */
@@ -113,14 +113,14 @@ typedef s64 pal_status_t;
113 */ 113 */
114#define PAL_STATUS_REQUIRES_MEMORY (-9) /* Call requires PAL memory buffer */ 114#define PAL_STATUS_REQUIRES_MEMORY (-9) /* Call requires PAL memory buffer */
115 115
116/* Processor cache level in the heirarchy */ 116/* Processor cache level in the hierarchy */
117typedef u64 pal_cache_level_t; 117typedef u64 pal_cache_level_t;
118#define PAL_CACHE_LEVEL_L0 0 /* L0 */ 118#define PAL_CACHE_LEVEL_L0 0 /* L0 */
119#define PAL_CACHE_LEVEL_L1 1 /* L1 */ 119#define PAL_CACHE_LEVEL_L1 1 /* L1 */
120#define PAL_CACHE_LEVEL_L2 2 /* L2 */ 120#define PAL_CACHE_LEVEL_L2 2 /* L2 */
121 121
122 122
123/* Processor cache type at a particular level in the heirarchy */ 123/* Processor cache type at a particular level in the hierarchy */
124 124
125typedef u64 pal_cache_type_t; 125typedef u64 pal_cache_type_t;
126#define PAL_CACHE_TYPE_INSTRUCTION 1 /* Instruction cache */ 126#define PAL_CACHE_TYPE_INSTRUCTION 1 /* Instruction cache */
@@ -272,14 +272,14 @@ typedef struct pal_cache_protection_info_s {
272#define PAL_CACHE_PROT_METHOD_ECC 3 /* ECC protection */ 272#define PAL_CACHE_PROT_METHOD_ECC 3 /* ECC protection */
273 273
274 274
275/* Processor cache line identification in the heirarchy */ 275/* Processor cache line identification in the hierarchy */
276typedef union pal_cache_line_id_u { 276typedef union pal_cache_line_id_u {
277 u64 pclid_data; 277 u64 pclid_data;
278 struct { 278 struct {
279 u64 cache_type : 8, /* 7-0 cache type */ 279 u64 cache_type : 8, /* 7-0 cache type */
280 level : 8, /* 15-8 level of the 280 level : 8, /* 15-8 level of the
281 * cache in the 281 * cache in the
282 * heirarchy. 282 * hierarchy.
283 */ 283 */
284 way : 8, /* 23-16 way in the set 284 way : 8, /* 23-16 way in the set
285 */ 285 */
@@ -292,7 +292,7 @@ typedef union pal_cache_line_id_u {
292 u64 cache_type : 8, /* 7-0 cache type */ 292 u64 cache_type : 8, /* 7-0 cache type */
293 level : 8, /* 15-8 level of the 293 level : 8, /* 15-8 level of the
294 * cache in the 294 * cache in the
295 * heirarchy. 295 * hierarchy.
296 */ 296 */
297 way : 8, /* 23-16 way in the set 297 way : 8, /* 23-16 way in the set
298 */ 298 */
@@ -978,7 +978,7 @@ ia64_pal_cache_read (pal_cache_line_id_u_t line_id, u64 physical_addr)
978 return iprv.status; 978 return iprv.status;
979} 979}
980 980
981/* Return summary information about the heirarchy of caches controlled by the processor */ 981/* Return summary information about the hierarchy of caches controlled by the processor */
982static inline s64 982static inline s64
983ia64_pal_cache_summary (u64 *cache_levels, u64 *unique_caches) 983ia64_pal_cache_summary (u64 *cache_levels, u64 *unique_caches)
984{ 984{
diff --git a/include/linux/device.h b/include/linux/device.h
index d5b1b7b3558e..d1a3a27c3988 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -102,7 +102,7 @@ extern int bus_unregister_notifier(struct bus_type *bus,
102#define BUS_NOTIFY_UNBIND_DRIVER 0x00000004 /* driver about to be 102#define BUS_NOTIFY_UNBIND_DRIVER 0x00000004 /* driver about to be
103 unbound */ 103 unbound */
104 104
105/* driverfs interface for exporting bus attributes */ 105/* sysfs interface for exporting bus attributes */
106 106
107struct bus_attribute { 107struct bus_attribute {
108 struct attribute attr; 108 struct attribute attr;
@@ -147,7 +147,7 @@ extern void put_driver(struct device_driver * drv);
147extern struct device_driver *driver_find(const char *name, struct bus_type *bus); 147extern struct device_driver *driver_find(const char *name, struct bus_type *bus);
148extern int driver_probe_done(void); 148extern int driver_probe_done(void);
149 149
150/* driverfs interface for exporting driver attributes */ 150/* sysfs interface for exporting driver attributes */
151 151
152struct driver_attribute { 152struct driver_attribute {
153 struct attribute attr; 153 struct attribute attr;
diff --git a/include/linux/ext4_fs_extents.h b/include/linux/ext4_fs_extents.h
index a41cc24568ca..7eb1d73fc5d1 100644
--- a/include/linux/ext4_fs_extents.h
+++ b/include/linux/ext4_fs_extents.h
@@ -22,12 +22,12 @@
22#include <linux/ext4_fs.h> 22#include <linux/ext4_fs.h>
23 23
24/* 24/*
25 * With AGRESSIVE_TEST defined, the capacity of index/leaf blocks 25 * With AGGRESSIVE_TEST defined, the capacity of index/leaf blocks
26 * becomes very small, so index split, in-depth growing and 26 * becomes very small, so index split, in-depth growing and
27 * other hard changes happen much more often. 27 * other hard changes happen much more often.
28 * This is for debug purposes only. 28 * This is for debug purposes only.
29 */ 29 */
30#define AGRESSIVE_TEST_ 30#define AGGRESSIVE_TEST_
31 31
32/* 32/*
33 * With EXTENTS_STATS defined, the number of blocks and extents 33 * With EXTENTS_STATS defined, the number of blocks and extents
diff --git a/include/linux/log2.h b/include/linux/log2.h
index 99922bedfcc9..57e641e19a81 100644
--- a/include/linux/log2.h
+++ b/include/linux/log2.h
@@ -152,7 +152,7 @@ unsigned long __roundup_pow_of_two(unsigned long n)
152 * roundup_pow_of_two - round the given value up to nearest power of two 152 * roundup_pow_of_two - round the given value up to nearest power of two
153 * @n - parameter 153 * @n - parameter
154 * 154 *
155 * round the given balue up to the nearest power of two 155 * round the given value up to the nearest power of two
156 * - the result is undefined when n == 0 156 * - the result is undefined when n == 0
157 * - this can be used to initialise global variables from constant data 157 * - this can be used to initialise global variables from constant data
158 */ 158 */
diff --git a/include/linux/moduleparam.h b/include/linux/moduleparam.h
index b26b2e5fedc7..c83588c8d08b 100644
--- a/include/linux/moduleparam.h
+++ b/include/linux/moduleparam.h
@@ -59,7 +59,7 @@ struct kparam_array
59}; 59};
60 60
61/* This is the fundamental function for registering boot/module 61/* This is the fundamental function for registering boot/module
62 parameters. perm sets the visibility in driverfs: 000 means it's 62 parameters. perm sets the visibility in sysfs: 000 means it's
63 not there, read bits mean it's readable, write bits mean it's 63 not there, read bits mean it's readable, write bits mean it's
64 writable. */ 64 writable. */
65#define __module_param_call(prefix, name, set, get, arg, perm) \ 65#define __module_param_call(prefix, name, set, get, arg, perm) \
diff --git a/include/linux/seqlock.h b/include/linux/seqlock.h
index 6b0648cfdffc..52c9eb9b6df2 100644
--- a/include/linux/seqlock.h
+++ b/include/linux/seqlock.h
@@ -2,7 +2,7 @@
2#define __LINUX_SEQLOCK_H 2#define __LINUX_SEQLOCK_H
3/* 3/*
4 * Reader/writer consistent mechanism without starving writers. This type of 4 * Reader/writer consistent mechanism without starving writers. This type of
5 * lock for data where the reader wants a consitent set of information 5 * lock for data where the reader wants a consistent set of information
6 * and is willing to retry if the information changes. Readers never 6 * and is willing to retry if the information changes. Readers never
7 * block but they may have to retry if a writer is in 7 * block but they may have to retry if a writer is in
8 * progress. Writers do not wait for readers. 8 * progress. Writers do not wait for readers.
diff --git a/kernel/printk.c b/kernel/printk.c
index 0c151877ff71..4b47e59248df 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -54,7 +54,7 @@ int console_printk[4] = {
54}; 54};
55 55
56/* 56/*
57 * Low lever drivers may need that to know if they can schedule in 57 * Low level drivers may need that to know if they can schedule in
58 * their unblank() callback or not. So let's export it. 58 * their unblank() callback or not. So let's export it.
59 */ 59 */
60int oops_in_progress; 60int oops_in_progress;
diff --git a/lib/textsearch.c b/lib/textsearch.c
index 9e2a002c5b54..88c98a2ec8d9 100644
--- a/lib/textsearch.c
+++ b/lib/textsearch.c
@@ -40,7 +40,7 @@
40 * configuration according to the specified parameters. 40 * configuration according to the specified parameters.
41 * (3) User starts the search(es) by calling _find() or _next() to 41 * (3) User starts the search(es) by calling _find() or _next() to
42 * fetch subsequent occurrences. A state variable is provided 42 * fetch subsequent occurrences. A state variable is provided
43 * to the algorihtm to store persistent variables. 43 * to the algorithm to store persistent variables.
44 * (4) Core eventually resets the search offset and forwards the find() 44 * (4) Core eventually resets the search offset and forwards the find()
45 * request to the algorithm. 45 * request to the algorithm.
46 * (5) Algorithm calls get_next_block() provided by the user continously 46 * (5) Algorithm calls get_next_block() provided by the user continously
diff --git a/net/ipv4/Kconfig b/net/ipv4/Kconfig
index 503e7059e312..91f3a5cdbcf8 100644
--- a/net/ipv4/Kconfig
+++ b/net/ipv4/Kconfig
@@ -9,7 +9,7 @@ config IP_MULTICAST
9 intend to participate in the MBONE, a high bandwidth network on top 9 intend to participate in the MBONE, a high bandwidth network on top
10 of the Internet which carries audio and video broadcasts. More 10 of the Internet which carries audio and video broadcasts. More
11 information about the MBONE is on the WWW at 11 information about the MBONE is on the WWW at
12 <http://www-itg.lbl.gov/mbone/>. Information about the multicast 12 <http://www.savetz.com/mbone/>. Information about the multicast
13 capabilities of the various network cards is contained in 13 capabilities of the various network cards is contained in
14 <file:Documentation/networking/multicast.txt>. For most people, it's 14 <file:Documentation/networking/multicast.txt>. For most people, it's
15 safe to say N. 15 safe to say N.
diff --git a/net/ipv4/tcp_cong.c b/net/ipv4/tcp_cong.c
index c1b34f1edb32..5c8caf4a1244 100644
--- a/net/ipv4/tcp_cong.c
+++ b/net/ipv4/tcp_cong.c
@@ -29,7 +29,7 @@ static struct tcp_congestion_ops *tcp_ca_find(const char *name)
29} 29}
30 30
31/* 31/*
32 * Attach new congestion control algorthim to the list 32 * Attach new congestion control algorithm to the list
33 * of available options. 33 * of available options.
34 */ 34 */
35int tcp_register_congestion_control(struct tcp_congestion_ops *ca) 35int tcp_register_congestion_control(struct tcp_congestion_ops *ca)