aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/DocBook/kernel-api.tmpl186
-rw-r--r--drivers/video/fbmem.c5
-rw-r--r--fs/proc/base.c10
-rw-r--r--include/linux/fs.h12
-rw-r--r--include/linux/net.h38
-rw-r--r--include/linux/skbuff.h2
-rw-r--r--include/net/sock.h134
-rw-r--r--kernel/exit.c2
-rw-r--r--kernel/power/swsusp.c2
-rw-r--r--mm/page_alloc.c3
-rw-r--r--mm/vmalloc.c8
-rw-r--r--net/core/datagram.c28
-rw-r--r--net/core/sock.c12
-rw-r--r--net/core/stream.c12
-rw-r--r--net/sunrpc/xdr.c12
-rwxr-xr-xscripts/kernel-doc2
16 files changed, 320 insertions, 148 deletions
diff --git a/Documentation/DocBook/kernel-api.tmpl b/Documentation/DocBook/kernel-api.tmpl
index 1bd20c860285..757cef8f8491 100644
--- a/Documentation/DocBook/kernel-api.tmpl
+++ b/Documentation/DocBook/kernel-api.tmpl
@@ -49,13 +49,33 @@
49!Iinclude/asm-i386/unaligned.h 49!Iinclude/asm-i386/unaligned.h
50 </sect1> 50 </sect1>
51 51
52<!-- FIXME:
53 kernel/sched.c has no docs, which stuffs up the sgml. Comment
54 out until somebody adds docs. KAO
55 <sect1><title>Delaying, scheduling, and timer routines</title> 52 <sect1><title>Delaying, scheduling, and timer routines</title>
56X!Ekernel/sched.c 53!Iinclude/linux/sched.h
54!Ekernel/sched.c
55!Ekernel/timer.c
57 </sect1> 56 </sect1>
58KAO --> 57 <sect1><title>Internal Functions</title>
58!Ikernel/exit.c
59!Ikernel/signal.c
60 </sect1>
61
62 <sect1><title>Kernel objects manipulation</title>
63<!--
64X!Iinclude/linux/kobject.h
65-->
66!Elib/kobject.c
67 </sect1>
68
69 <sect1><title>Kernel utility functions</title>
70!Iinclude/linux/kernel.h
71<!-- This needs to clean up to make kernel-doc happy
72X!Ekernel/printk.c
73 -->
74!Ekernel/panic.c
75!Ekernel/sys.c
76!Ekernel/rcupdate.c
77 </sect1>
78
59 </chapter> 79 </chapter>
60 80
61 <chapter id="adt"> 81 <chapter id="adt">
@@ -81,7 +101,9 @@ KAO -->
81!Elib/vsprintf.c 101!Elib/vsprintf.c
82 </sect1> 102 </sect1>
83 <sect1><title>String Manipulation</title> 103 <sect1><title>String Manipulation</title>
84!Ilib/string.c 104<!-- All functions are exported at now
105X!Ilib/string.c
106 -->
85!Elib/string.c 107!Elib/string.c
86 </sect1> 108 </sect1>
87 <sect1><title>Bit Operations</title> 109 <sect1><title>Bit Operations</title>
@@ -98,6 +120,25 @@ KAO -->
98!Iinclude/asm-i386/uaccess.h 120!Iinclude/asm-i386/uaccess.h
99!Iarch/i386/lib/usercopy.c 121!Iarch/i386/lib/usercopy.c
100 </sect1> 122 </sect1>
123 <sect1><title>More Memory Management Functions</title>
124!Iinclude/linux/rmap.h
125!Emm/readahead.c
126!Emm/filemap.c
127!Emm/memory.c
128!Emm/vmalloc.c
129!Emm/mempool.c
130!Emm/page-writeback.c
131!Emm/truncate.c
132 </sect1>
133 </chapter>
134
135
136 <chapter id="ipc">
137 <title>Kernel IPC facilities</title>
138
139 <sect1><title>IPC utilities</title>
140!Iipc/util.c
141 </sect1>
101 </chapter> 142 </chapter>
102 143
103 <chapter id="kfifo"> 144 <chapter id="kfifo">
@@ -114,6 +155,10 @@ KAO -->
114 <sect1><title>sysctl interface</title> 155 <sect1><title>sysctl interface</title>
115!Ekernel/sysctl.c 156!Ekernel/sysctl.c
116 </sect1> 157 </sect1>
158
159 <sect1><title>proc filesystem interface</title>
160!Ifs/proc/base.c
161 </sect1>
117 </chapter> 162 </chapter>
118 163
119 <chapter id="debugfs"> 164 <chapter id="debugfs">
@@ -127,6 +172,10 @@ KAO -->
127 172
128 <chapter id="vfs"> 173 <chapter id="vfs">
129 <title>The Linux VFS</title> 174 <title>The Linux VFS</title>
175 <sect1><title>The Filesystem types</title>
176!Iinclude/linux/fs.h
177!Einclude/linux/fs.h
178 </sect1>
130 <sect1><title>The Directory Cache</title> 179 <sect1><title>The Directory Cache</title>
131!Efs/dcache.c 180!Efs/dcache.c
132!Iinclude/linux/dcache.h 181!Iinclude/linux/dcache.h
@@ -142,13 +191,31 @@ KAO -->
142!Efs/locks.c 191!Efs/locks.c
143!Ifs/locks.c 192!Ifs/locks.c
144 </sect1> 193 </sect1>
194 <sect1><title>Other Functions</title>
195!Efs/mpage.c
196!Efs/namei.c
197!Efs/buffer.c
198!Efs/bio.c
199!Efs/seq_file.c
200!Efs/filesystems.c
201!Efs/fs-writeback.c
202!Efs/block_dev.c
203 </sect1>
145 </chapter> 204 </chapter>
146 205
147 <chapter id="netcore"> 206 <chapter id="netcore">
148 <title>Linux Networking</title> 207 <title>Linux Networking</title>
208 <sect1><title>Networking Base Types</title>
209!Iinclude/linux/net.h
210 </sect1>
149 <sect1><title>Socket Buffer Functions</title> 211 <sect1><title>Socket Buffer Functions</title>
150!Iinclude/linux/skbuff.h 212!Iinclude/linux/skbuff.h
213!Iinclude/net/sock.h
214!Enet/socket.c
151!Enet/core/skbuff.c 215!Enet/core/skbuff.c
216!Enet/core/sock.c
217!Enet/core/datagram.c
218!Enet/core/stream.c
152 </sect1> 219 </sect1>
153 <sect1><title>Socket Filter</title> 220 <sect1><title>Socket Filter</title>
154!Enet/core/filter.c 221!Enet/core/filter.c
@@ -158,6 +225,14 @@ KAO -->
158!Enet/core/gen_stats.c 225!Enet/core/gen_stats.c
159!Enet/core/gen_estimator.c 226!Enet/core/gen_estimator.c
160 </sect1> 227 </sect1>
228 <sect1><title>SUN RPC subsystem</title>
229<!-- The !D functionality is not perfect, garbage has to be protected by comments
230!Dnet/sunrpc/sunrpc_syms.c
231-->
232!Enet/sunrpc/xdr.c
233!Enet/sunrpc/svcsock.c
234!Enet/sunrpc/sched.c
235 </sect1>
161 </chapter> 236 </chapter>
162 237
163 <chapter id="netdev"> 238 <chapter id="netdev">
@@ -194,11 +269,26 @@ X!Ekernel/module.c
194!Iarch/i386/kernel/irq.c 269!Iarch/i386/kernel/irq.c
195 </sect1> 270 </sect1>
196 271
272 <sect1><title>Resources Management</title>
273!Ekernel/resource.c
274 </sect1>
275
197 <sect1><title>MTRR Handling</title> 276 <sect1><title>MTRR Handling</title>
198!Earch/i386/kernel/cpu/mtrr/main.c 277!Earch/i386/kernel/cpu/mtrr/main.c
199 </sect1> 278 </sect1>
200 <sect1><title>PCI Support Library</title> 279 <sect1><title>PCI Support Library</title>
201!Edrivers/pci/pci.c 280!Edrivers/pci/pci.c
281!Edrivers/pci/pci-driver.c
282!Edrivers/pci/remove.c
283!Edrivers/pci/pci-acpi.c
284<!-- kerneldoc does not understand to __devinit
285X!Edrivers/pci/search.c
286 -->
287!Edrivers/pci/msi.c
288!Edrivers/pci/bus.c
289!Edrivers/pci/hotplug.c
290!Edrivers/pci/probe.c
291!Edrivers/pci/rom.c
202 </sect1> 292 </sect1>
203 <sect1><title>PCI Hotplug Support Library</title> 293 <sect1><title>PCI Hotplug Support Library</title>
204!Edrivers/pci/hotplug/pci_hotplug_core.c 294!Edrivers/pci/hotplug/pci_hotplug_core.c
@@ -223,6 +313,14 @@ X!Earch/i386/kernel/mca.c
223!Efs/devfs/base.c 313!Efs/devfs/base.c
224 </chapter> 314 </chapter>
225 315
316 <chapter id="sysfs">
317 <title>The Filesystem for Exporting Kernel Objects</title>
318!Efs/sysfs/file.c
319!Efs/sysfs/dir.c
320!Efs/sysfs/symlink.c
321!Efs/sysfs/bin.c
322 </chapter>
323
226 <chapter id="security"> 324 <chapter id="security">
227 <title>Security Framework</title> 325 <title>Security Framework</title>
228!Esecurity/security.c 326!Esecurity/security.c
@@ -233,6 +331,61 @@ X!Earch/i386/kernel/mca.c
233!Ekernel/power/pm.c 331!Ekernel/power/pm.c
234 </chapter> 332 </chapter>
235 333
334 <chapter id="devdrivers">
335 <title>Device drivers infrastructure</title>
336 <sect1><title>Device Drivers Base</title>
337<!--
338X!Iinclude/linux/device.h
339-->
340!Edrivers/base/driver.c
341!Edrivers/base/class_simple.c
342!Edrivers/base/core.c
343!Edrivers/base/firmware_class.c
344!Edrivers/base/transport_class.c
345!Edrivers/base/dmapool.c
346<!-- Cannot be included, because
347 attribute_container_add_class_device_adapter
348 and attribute_container_classdev_to_container
349 exceed allowed 44 characters maximum
350X!Edrivers/base/attribute_container.c
351-->
352!Edrivers/base/sys.c
353<!--
354X!Edrivers/base/interface.c
355-->
356!Edrivers/base/platform.c
357!Edrivers/base/bus.c
358 </sect1>
359 <sect1><title>Device Drivers Power Management</title>
360!Edrivers/base/power/main.c
361!Edrivers/base/power/resume.c
362!Edrivers/base/power/suspend.c
363 </sect1>
364 <sect1><title>Device Drivers ACPI Support</title>
365<!-- Internal functions only
366X!Edrivers/acpi/sleep/main.c
367X!Edrivers/acpi/sleep/wakeup.c
368X!Edrivers/acpi/motherboard.c
369X!Edrivers/acpi/bus.c
370-->
371!Edrivers/acpi/scan.c
372<!-- No correct structured comments
373X!Edrivers/acpi/pci_bind.c
374-->
375 </sect1>
376 <sect1><title>Device drivers PnP support</title>
377!Edrivers/pnp/core.c
378<!-- No correct structured comments
379X!Edrivers/pnp/system.c
380 -->
381!Edrivers/pnp/card.c
382!Edrivers/pnp/driver.c
383!Edrivers/pnp/manager.c
384!Edrivers/pnp/support.c
385 </sect1>
386 </chapter>
387
388
236 <chapter id="blkdev"> 389 <chapter id="blkdev">
237 <title>Block Devices</title> 390 <title>Block Devices</title>
238!Edrivers/block/ll_rw_blk.c 391!Edrivers/block/ll_rw_blk.c
@@ -250,7 +403,23 @@ X!Earch/i386/kernel/mca.c
250 403
251 <chapter id="snddev"> 404 <chapter id="snddev">
252 <title>Sound Devices</title> 405 <title>Sound Devices</title>
406!Iinclude/sound/core.h
253!Esound/sound_core.c 407!Esound/sound_core.c
408!Iinclude/sound/pcm.h
409!Esound/core/pcm.c
410!Esound/core/device.c
411!Esound/core/info.c
412!Esound/core/rawmidi.c
413!Esound/core/sound.c
414!Esound/core/memory.c
415!Esound/core/pcm_memory.c
416!Esound/core/init.c
417!Esound/core/isadma.c
418!Esound/core/control.c
419!Esound/core/pcm_lib.c
420!Esound/core/hwdep.c
421!Esound/core/pcm_native.c
422!Esound/core/memalloc.c
254<!-- FIXME: Removed for now since no structured comments in source 423<!-- FIXME: Removed for now since no structured comments in source
255X!Isound/sound_firmware.c 424X!Isound/sound_firmware.c
256--> 425-->
@@ -258,6 +427,7 @@ X!Isound/sound_firmware.c
258 427
259 <chapter id="uart16x50"> 428 <chapter id="uart16x50">
260 <title>16x50 UART Driver</title> 429 <title>16x50 UART Driver</title>
430!Iinclude/linux/serial_core.h
261!Edrivers/serial/serial_core.c 431!Edrivers/serial/serial_core.c
262!Edrivers/serial/8250.c 432!Edrivers/serial/8250.c
263 </chapter> 433 </chapter>
@@ -310,9 +480,11 @@ X!Isound/sound_firmware.c
310 <sect1><title>Frame Buffer Memory</title> 480 <sect1><title>Frame Buffer Memory</title>
311!Edrivers/video/fbmem.c 481!Edrivers/video/fbmem.c
312 </sect1> 482 </sect1>
483<!--
313 <sect1><title>Frame Buffer Console</title> 484 <sect1><title>Frame Buffer Console</title>
314!Edrivers/video/console/fbcon.c 485X!Edrivers/video/console/fbcon.c
315 </sect1> 486 </sect1>
487-->
316 <sect1><title>Frame Buffer Colormap</title> 488 <sect1><title>Frame Buffer Colormap</title>
317!Edrivers/video/fbcmap.c 489!Edrivers/video/fbcmap.c
318 </sect1> 490 </sect1>
diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c
index 25f460ca0daf..208a68ceb63b 100644
--- a/drivers/video/fbmem.c
+++ b/drivers/video/fbmem.c
@@ -1257,6 +1257,8 @@ int fb_new_modelist(struct fb_info *info)
1257static char *video_options[FB_MAX]; 1257static char *video_options[FB_MAX];
1258static int ofonly; 1258static int ofonly;
1259 1259
1260extern const char *global_mode_option;
1261
1260/** 1262/**
1261 * fb_get_options - get kernel boot parameters 1263 * fb_get_options - get kernel boot parameters
1262 * @name: framebuffer name as it would appear in 1264 * @name: framebuffer name as it would appear in
@@ -1297,9 +1299,6 @@ int fb_get_options(char *name, char **option)
1297 return retval; 1299 return retval;
1298} 1300}
1299 1301
1300
1301extern const char *global_mode_option;
1302
1303/** 1302/**
1304 * video_setup - process command line options 1303 * video_setup - process command line options
1305 * @options: string of options 1304 * @options: string of options
diff --git a/fs/proc/base.c b/fs/proc/base.c
index 2eac86d46c51..2b8cd045111c 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -1703,13 +1703,13 @@ static struct inode_operations proc_self_inode_operations = {
1703}; 1703};
1704 1704
1705/** 1705/**
1706 * proc_pid_unhash - Unhash /proc/<pid> entry from the dcache. 1706 * proc_pid_unhash - Unhash /proc/@pid entry from the dcache.
1707 * @p: task that should be flushed. 1707 * @p: task that should be flushed.
1708 * 1708 *
1709 * Drops the /proc/<pid> dcache entry from the hash chains. 1709 * Drops the /proc/@pid dcache entry from the hash chains.
1710 * 1710 *
1711 * Dropping /proc/<pid> entries and detach_pid must be synchroneous, 1711 * Dropping /proc/@pid entries and detach_pid must be synchroneous,
1712 * otherwise e.g. /proc/<pid>/exe might point to the wrong executable, 1712 * otherwise e.g. /proc/@pid/exe might point to the wrong executable,
1713 * if the pid value is immediately reused. This is enforced by 1713 * if the pid value is immediately reused. This is enforced by
1714 * - caller must acquire spin_lock(p->proc_lock) 1714 * - caller must acquire spin_lock(p->proc_lock)
1715 * - must be called before detach_pid() 1715 * - must be called before detach_pid()
@@ -1741,7 +1741,7 @@ struct dentry *proc_pid_unhash(struct task_struct *p)
1741} 1741}
1742 1742
1743/** 1743/**
1744 * proc_pid_flush - recover memory used by stale /proc/<pid>/x entries 1744 * proc_pid_flush - recover memory used by stale /proc/@pid/x entries
1745 * @proc_entry: directoy to prune. 1745 * @proc_entry: directoy to prune.
1746 * 1746 *
1747 * Shrink the /proc directory that was used by the just killed thread. 1747 * Shrink the /proc directory that was used by the just killed thread.
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 5df687d940fa..3f825b085c8d 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -1053,12 +1053,12 @@ static inline void file_accessed(struct file *file)
1053int sync_inode(struct inode *inode, struct writeback_control *wbc); 1053int sync_inode(struct inode *inode, struct writeback_control *wbc);
1054 1054
1055/** 1055/**
1056 * &export_operations - for nfsd to communicate with file systems 1056 * struct export_operations - for nfsd to communicate with file systems
1057 * decode_fh: decode a file handle fragment and return a &struct dentry 1057 * @decode_fh: decode a file handle fragment and return a &struct dentry
1058 * encode_fh: encode a file handle fragment from a dentry 1058 * @encode_fh: encode a file handle fragment from a dentry
1059 * get_name: find the name for a given inode in a given directory 1059 * @get_name: find the name for a given inode in a given directory
1060 * get_parent: find the parent of a given directory 1060 * @get_parent: find the parent of a given directory
1061 * get_dentry: find a dentry for the inode given a file handle sub-fragment 1061 * @get_dentry: find a dentry for the inode given a file handle sub-fragment
1062 * 1062 *
1063 * Description: 1063 * Description:
1064 * The export_operations structure provides a means for nfsd to communicate 1064 * The export_operations structure provides a means for nfsd to communicate
diff --git a/include/linux/net.h b/include/linux/net.h
index 7823b3482506..e5914c1f0c4d 100644
--- a/include/linux/net.h
+++ b/include/linux/net.h
@@ -64,19 +64,19 @@ typedef enum {
64#define SOCK_PASSCRED 3 64#define SOCK_PASSCRED 3
65 65
66#ifndef ARCH_HAS_SOCKET_TYPES 66#ifndef ARCH_HAS_SOCKET_TYPES
67/** sock_type - Socket types 67/**
68 * 68 * enum sock_type - Socket types
69 * @SOCK_STREAM: stream (connection) socket
70 * @SOCK_DGRAM: datagram (conn.less) socket
71 * @SOCK_RAW: raw socket
72 * @SOCK_RDM: reliably-delivered message
73 * @SOCK_SEQPACKET: sequential packet socket
74 * @SOCK_PACKET: linux specific way of getting packets at the dev level.
75 * For writing rarp and other similar things on the user level.
76 *
69 * When adding some new socket type please 77 * When adding some new socket type please
70 * grep ARCH_HAS_SOCKET_TYPE include/asm-* /socket.h, at least MIPS 78 * grep ARCH_HAS_SOCKET_TYPE include/asm-* /socket.h, at least MIPS
71 * overrides this enum for binary compat reasons. 79 * overrides this enum for binary compat reasons.
72 *
73 * @SOCK_STREAM - stream (connection) socket
74 * @SOCK_DGRAM - datagram (conn.less) socket
75 * @SOCK_RAW - raw socket
76 * @SOCK_RDM - reliably-delivered message
77 * @SOCK_SEQPACKET - sequential packet socket
78 * @SOCK_PACKET - linux specific way of getting packets at the dev level.
79 * For writing rarp and other similar things on the user level.
80 */ 80 */
81enum sock_type { 81enum sock_type {
82 SOCK_STREAM = 1, 82 SOCK_STREAM = 1,
@@ -93,15 +93,15 @@ enum sock_type {
93 93
94/** 94/**
95 * struct socket - general BSD socket 95 * struct socket - general BSD socket
96 * @state - socket state (%SS_CONNECTED, etc) 96 * @state: socket state (%SS_CONNECTED, etc)
97 * @flags - socket flags (%SOCK_ASYNC_NOSPACE, etc) 97 * @flags: socket flags (%SOCK_ASYNC_NOSPACE, etc)
98 * @ops - protocol specific socket operations 98 * @ops: protocol specific socket operations
99 * @fasync_list - Asynchronous wake up list 99 * @fasync_list: Asynchronous wake up list
100 * @file - File back pointer for gc 100 * @file: File back pointer for gc
101 * @sk - internal networking protocol agnostic socket representation 101 * @sk: internal networking protocol agnostic socket representation
102 * @wait - wait queue for several uses 102 * @wait: wait queue for several uses
103 * @type - socket type (%SOCK_STREAM, etc) 103 * @type: socket type (%SOCK_STREAM, etc)
104 * @passcred - credentials (used only in Unix Sockets (aka PF_LOCAL)) 104 * @passcred: credentials (used only in Unix Sockets (aka PF_LOCAL))
105 */ 105 */
106struct socket { 106struct socket {
107 socket_state state; 107 socket_state state;
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 22b701819619..c77d745cbd3f 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -968,6 +968,7 @@ static inline void __skb_queue_purge(struct sk_buff_head *list)
968 kfree_skb(skb); 968 kfree_skb(skb);
969} 969}
970 970
971#ifndef CONFIG_HAVE_ARCH_DEV_ALLOC_SKB
971/** 972/**
972 * __dev_alloc_skb - allocate an skbuff for sending 973 * __dev_alloc_skb - allocate an skbuff for sending
973 * @length: length to allocate 974 * @length: length to allocate
@@ -980,7 +981,6 @@ static inline void __skb_queue_purge(struct sk_buff_head *list)
980 * 981 *
981 * %NULL is returned in there is no free memory. 982 * %NULL is returned in there is no free memory.
982 */ 983 */
983#ifndef CONFIG_HAVE_ARCH_DEV_ALLOC_SKB
984static inline struct sk_buff *__dev_alloc_skb(unsigned int length, 984static inline struct sk_buff *__dev_alloc_skb(unsigned int length,
985 int gfp_mask) 985 int gfp_mask)
986{ 986{
diff --git a/include/net/sock.h b/include/net/sock.h
index be81cabd0da3..5bc180adfb14 100644
--- a/include/net/sock.h
+++ b/include/net/sock.h
@@ -90,17 +90,17 @@ do { spin_lock_init(&((__sk)->sk_lock.slock)); \
90struct sock; 90struct sock;
91 91
92/** 92/**
93 * struct sock_common - minimal network layer representation of sockets 93 * struct sock_common - minimal network layer representation of sockets
94 * @skc_family - network address family 94 * @skc_family: network address family
95 * @skc_state - Connection state 95 * @skc_state: Connection state
96 * @skc_reuse - %SO_REUSEADDR setting 96 * @skc_reuse: %SO_REUSEADDR setting
97 * @skc_bound_dev_if - bound device index if != 0 97 * @skc_bound_dev_if: bound device index if != 0
98 * @skc_node - main hash linkage for various protocol lookup tables 98 * @skc_node: main hash linkage for various protocol lookup tables
99 * @skc_bind_node - bind hash linkage for various protocol lookup tables 99 * @skc_bind_node: bind hash linkage for various protocol lookup tables
100 * @skc_refcnt - reference count 100 * @skc_refcnt: reference count
101 * 101 *
102 * This is the minimal network layer representation of sockets, the header 102 * This is the minimal network layer representation of sockets, the header
103 * for struct sock and struct tcp_tw_bucket. 103 * for struct sock and struct tcp_tw_bucket.
104 */ 104 */
105struct sock_common { 105struct sock_common {
106 unsigned short skc_family; 106 unsigned short skc_family;
@@ -114,60 +114,60 @@ struct sock_common {
114 114
115/** 115/**
116 * struct sock - network layer representation of sockets 116 * struct sock - network layer representation of sockets
117 * @__sk_common - shared layout with tcp_tw_bucket 117 * @__sk_common: shared layout with tcp_tw_bucket
118 * @sk_shutdown - mask of %SEND_SHUTDOWN and/or %RCV_SHUTDOWN 118 * @sk_shutdown: mask of %SEND_SHUTDOWN and/or %RCV_SHUTDOWN
119 * @sk_userlocks - %SO_SNDBUF and %SO_RCVBUF settings 119 * @sk_userlocks: %SO_SNDBUF and %SO_RCVBUF settings
120 * @sk_lock - synchronizer 120 * @sk_lock: synchronizer
121 * @sk_rcvbuf - size of receive buffer in bytes 121 * @sk_rcvbuf: size of receive buffer in bytes
122 * @sk_sleep - sock wait queue 122 * @sk_sleep: sock wait queue
123 * @sk_dst_cache - destination cache 123 * @sk_dst_cache: destination cache
124 * @sk_dst_lock - destination cache lock 124 * @sk_dst_lock: destination cache lock
125 * @sk_policy - flow policy 125 * @sk_policy: flow policy
126 * @sk_rmem_alloc - receive queue bytes committed 126 * @sk_rmem_alloc: receive queue bytes committed
127 * @sk_receive_queue - incoming packets 127 * @sk_receive_queue: incoming packets
128 * @sk_wmem_alloc - transmit queue bytes committed 128 * @sk_wmem_alloc: transmit queue bytes committed
129 * @sk_write_queue - Packet sending queue 129 * @sk_write_queue: Packet sending queue
130 * @sk_omem_alloc - "o" is "option" or "other" 130 * @sk_omem_alloc: "o" is "option" or "other"
131 * @sk_wmem_queued - persistent queue size 131 * @sk_wmem_queued: persistent queue size
132 * @sk_forward_alloc - space allocated forward 132 * @sk_forward_alloc: space allocated forward
133 * @sk_allocation - allocation mode 133 * @sk_allocation: allocation mode
134 * @sk_sndbuf - size of send buffer in bytes 134 * @sk_sndbuf: size of send buffer in bytes
135 * @sk_flags - %SO_LINGER (l_onoff), %SO_BROADCAST, %SO_KEEPALIVE, %SO_OOBINLINE settings 135 * @sk_flags: %SO_LINGER (l_onoff), %SO_BROADCAST, %SO_KEEPALIVE, %SO_OOBINLINE settings
136 * @sk_no_check - %SO_NO_CHECK setting, wether or not checkup packets 136 * @sk_no_check: %SO_NO_CHECK setting, wether or not checkup packets
137 * @sk_route_caps - route capabilities (e.g. %NETIF_F_TSO) 137 * @sk_route_caps: route capabilities (e.g. %NETIF_F_TSO)
138 * @sk_lingertime - %SO_LINGER l_linger setting 138 * @sk_lingertime: %SO_LINGER l_linger setting
139 * @sk_hashent - hash entry in several tables (e.g. tcp_ehash) 139 * @sk_hashent: hash entry in several tables (e.g. tcp_ehash)
140 * @sk_backlog - always used with the per-socket spinlock held 140 * @sk_backlog: always used with the per-socket spinlock held
141 * @sk_callback_lock - used with the callbacks in the end of this struct 141 * @sk_callback_lock: used with the callbacks in the end of this struct
142 * @sk_error_queue - rarely used 142 * @sk_error_queue: rarely used
143 * @sk_prot - protocol handlers inside a network family 143 * @sk_prot: protocol handlers inside a network family
144 * @sk_err - last error 144 * @sk_err: last error
145 * @sk_err_soft - errors that don't cause failure but are the cause of a persistent failure not just 'timed out' 145 * @sk_err_soft: errors that don't cause failure but are the cause of a persistent failure not just 'timed out'
146 * @sk_ack_backlog - current listen backlog 146 * @sk_ack_backlog: current listen backlog
147 * @sk_max_ack_backlog - listen backlog set in listen() 147 * @sk_max_ack_backlog: listen backlog set in listen()
148 * @sk_priority - %SO_PRIORITY setting 148 * @sk_priority: %SO_PRIORITY setting
149 * @sk_type - socket type (%SOCK_STREAM, etc) 149 * @sk_type: socket type (%SOCK_STREAM, etc)
150 * @sk_protocol - which protocol this socket belongs in this network family 150 * @sk_protocol: which protocol this socket belongs in this network family
151 * @sk_peercred - %SO_PEERCRED setting 151 * @sk_peercred: %SO_PEERCRED setting
152 * @sk_rcvlowat - %SO_RCVLOWAT setting 152 * @sk_rcvlowat: %SO_RCVLOWAT setting
153 * @sk_rcvtimeo - %SO_RCVTIMEO setting 153 * @sk_rcvtimeo: %SO_RCVTIMEO setting
154 * @sk_sndtimeo - %SO_SNDTIMEO setting 154 * @sk_sndtimeo: %SO_SNDTIMEO setting
155 * @sk_filter - socket filtering instructions 155 * @sk_filter: socket filtering instructions
156 * @sk_protinfo - private area, net family specific, when not using slab 156 * @sk_protinfo: private area, net family specific, when not using slab
157 * @sk_timer - sock cleanup timer 157 * @sk_timer: sock cleanup timer
158 * @sk_stamp - time stamp of last packet received 158 * @sk_stamp: time stamp of last packet received
159 * @sk_socket - Identd and reporting IO signals 159 * @sk_socket: Identd and reporting IO signals
160 * @sk_user_data - RPC layer private data 160 * @sk_user_data: RPC layer private data
161 * @sk_sndmsg_page - cached page for sendmsg 161 * @sk_sndmsg_page: cached page for sendmsg
162 * @sk_sndmsg_off - cached offset for sendmsg 162 * @sk_sndmsg_off: cached offset for sendmsg
163 * @sk_send_head - front of stuff to transmit 163 * @sk_send_head: front of stuff to transmit
164 * @sk_write_pending - a write to stream socket waits to start 164 * @sk_write_pending: a write to stream socket waits to start
165 * @sk_state_change - callback to indicate change in the state of the sock 165 * @sk_state_change: callback to indicate change in the state of the sock
166 * @sk_data_ready - callback to indicate there is data to be processed 166 * @sk_data_ready: callback to indicate there is data to be processed
167 * @sk_write_space - callback to indicate there is bf sending space available 167 * @sk_write_space: callback to indicate there is bf sending space available
168 * @sk_error_report - callback to indicate errors (e.g. %MSG_ERRQUEUE) 168 * @sk_error_report: callback to indicate errors (e.g. %MSG_ERRQUEUE)
169 * @sk_backlog_rcv - callback to process the backlog 169 * @sk_backlog_rcv: callback to process the backlog
170 * @sk_destruct - called at sock freeing time, i.e. when all refcnt == 0 170 * @sk_destruct: called at sock freeing time, i.e. when all refcnt == 0
171 */ 171 */
172struct sock { 172struct sock {
173 /* 173 /*
@@ -1223,8 +1223,8 @@ sock_recv_timestamp(struct msghdr *msg, struct sock *sk, struct sk_buff *skb)
1223 1223
1224/** 1224/**
1225 * sk_eat_skb - Release a skb if it is no longer needed 1225 * sk_eat_skb - Release a skb if it is no longer needed
1226 * @sk - socket to eat this skb from 1226 * @sk: socket to eat this skb from
1227 * @skb - socket buffer to eat 1227 * @skb: socket buffer to eat
1228 * 1228 *
1229 * This routine must be called with interrupts disabled or with the socket 1229 * This routine must be called with interrupts disabled or with the socket
1230 * locked so that the sk_buff queue operation is ok. 1230 * locked so that the sk_buff queue operation is ok.
diff --git a/kernel/exit.c b/kernel/exit.c
index eb8da36e13df..419d9d3c4c48 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -210,7 +210,7 @@ static inline int has_stopped_jobs(int pgrp)
210} 210}
211 211
212/** 212/**
213 * reparent_to_init() - Reparent the calling kernel thread to the init task. 213 * reparent_to_init - Reparent the calling kernel thread to the init task.
214 * 214 *
215 * If a kernel thread is launched as a result of a system call, or if 215 * If a kernel thread is launched as a result of a system call, or if
216 * it ever exits, it should generally reparent itself to init so that 216 * it ever exits, it should generally reparent itself to init so that
diff --git a/kernel/power/swsusp.c b/kernel/power/swsusp.c
index ae5bebc3b18f..90b3b68dee3f 100644
--- a/kernel/power/swsusp.c
+++ b/kernel/power/swsusp.c
@@ -1099,7 +1099,7 @@ static struct pbe * swsusp_pagedir_relocate(struct pbe *pblist)
1099 return pblist; 1099 return pblist;
1100} 1100}
1101 1101
1102/** 1102/*
1103 * Using bio to read from swap. 1103 * Using bio to read from swap.
1104 * This code requires a bit more work than just using buffer heads 1104 * This code requires a bit more work than just using buffer heads
1105 * but, it is the recommended way for 2.5/2.6. 1105 * but, it is the recommended way for 2.5/2.6.
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 80ce7f2104df..fc1b1064c505 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1355,8 +1355,7 @@ static int __init build_zonelists_node(pg_data_t *pgdat, struct zonelist *zoneli
1355#define MAX_NODE_LOAD (num_online_nodes()) 1355#define MAX_NODE_LOAD (num_online_nodes())
1356static int __initdata node_load[MAX_NUMNODES]; 1356static int __initdata node_load[MAX_NUMNODES];
1357/** 1357/**
1358 * find_next_best_node - find the next node that should appear in a given 1358 * find_next_best_node - find the next node that should appear in a given node's fallback list
1359 * node's fallback list
1360 * @node: node whose fallback list we're appending 1359 * @node: node whose fallback list we're appending
1361 * @used_node_mask: nodemask_t of already used nodes 1360 * @used_node_mask: nodemask_t of already used nodes
1362 * 1361 *
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index c6182f6f1305..2bd83e5c2bbf 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -475,6 +475,10 @@ void *vmalloc(unsigned long size)
475 475
476EXPORT_SYMBOL(vmalloc); 476EXPORT_SYMBOL(vmalloc);
477 477
478#ifndef PAGE_KERNEL_EXEC
479# define PAGE_KERNEL_EXEC PAGE_KERNEL
480#endif
481
478/** 482/**
479 * vmalloc_exec - allocate virtually contiguous, executable memory 483 * vmalloc_exec - allocate virtually contiguous, executable memory
480 * 484 *
@@ -488,10 +492,6 @@ EXPORT_SYMBOL(vmalloc);
488 * use __vmalloc() instead. 492 * use __vmalloc() instead.
489 */ 493 */
490 494
491#ifndef PAGE_KERNEL_EXEC
492# define PAGE_KERNEL_EXEC PAGE_KERNEL
493#endif
494
495void *vmalloc_exec(unsigned long size) 495void *vmalloc_exec(unsigned long size)
496{ 496{
497 return __vmalloc(size, GFP_KERNEL | __GFP_HIGHMEM, PAGE_KERNEL_EXEC); 497 return __vmalloc(size, GFP_KERNEL | __GFP_HIGHMEM, PAGE_KERNEL_EXEC);
diff --git a/net/core/datagram.c b/net/core/datagram.c
index d1bfd279cc1a..27c5cd942820 100644
--- a/net/core/datagram.c
+++ b/net/core/datagram.c
@@ -115,10 +115,10 @@ out_noerr:
115 115
116/** 116/**
117 * skb_recv_datagram - Receive a datagram skbuff 117 * skb_recv_datagram - Receive a datagram skbuff
118 * @sk - socket 118 * @sk: socket
119 * @flags - MSG_ flags 119 * @flags: MSG_ flags
120 * @noblock - blocking operation? 120 * @noblock: blocking operation?
121 * @err - error code returned 121 * @err: error code returned
122 * 122 *
123 * Get a datagram skbuff, understands the peeking, nonblocking wakeups 123 * Get a datagram skbuff, understands the peeking, nonblocking wakeups
124 * and possible races. This replaces identical code in packet, raw and 124 * and possible races. This replaces identical code in packet, raw and
@@ -201,10 +201,10 @@ void skb_free_datagram(struct sock *sk, struct sk_buff *skb)
201 201
202/** 202/**
203 * skb_copy_datagram_iovec - Copy a datagram to an iovec. 203 * skb_copy_datagram_iovec - Copy a datagram to an iovec.
204 * @skb - buffer to copy 204 * @skb: buffer to copy
205 * @offset - offset in the buffer to start copying from 205 * @offset: offset in the buffer to start copying from
206 * @iovec - io vector to copy to 206 * @iovec: io vector to copy to
207 * @len - amount of data to copy from buffer to iovec 207 * @len: amount of data to copy from buffer to iovec
208 * 208 *
209 * Note: the iovec is modified during the copy. 209 * Note: the iovec is modified during the copy.
210 */ 210 */
@@ -377,9 +377,9 @@ fault:
377 377
378/** 378/**
379 * skb_copy_and_csum_datagram_iovec - Copy and checkum skb to user iovec. 379 * skb_copy_and_csum_datagram_iovec - Copy and checkum skb to user iovec.
380 * @skb - skbuff 380 * @skb: skbuff
381 * @hlen - hardware length 381 * @hlen: hardware length
382 * @iovec - io vector 382 * @iovec: io vector
383 * 383 *
384 * Caller _must_ check that skb will fit to this iovec. 384 * Caller _must_ check that skb will fit to this iovec.
385 * 385 *
@@ -425,9 +425,9 @@ fault:
425 425
426/** 426/**
427 * datagram_poll - generic datagram poll 427 * datagram_poll - generic datagram poll
428 * @file - file struct 428 * @file: file struct
429 * @sock - socket 429 * @sock: socket
430 * @wait - poll table 430 * @wait: poll table
431 * 431 *
432 * Datagram poll: Again totally generic. This also handles 432 * Datagram poll: Again totally generic. This also handles
433 * sequenced packet sockets providing the socket receive queue 433 * sequenced packet sockets providing the socket receive queue
diff --git a/net/core/sock.c b/net/core/sock.c
index 5c2f72fa1013..98171ddd7e7d 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -616,10 +616,10 @@ lenout:
616 616
617/** 617/**
618 * sk_alloc - All socket objects are allocated here 618 * sk_alloc - All socket objects are allocated here
619 * @family - protocol family 619 * @family: protocol family
620 * @priority - for allocation (%GFP_KERNEL, %GFP_ATOMIC, etc) 620 * @priority: for allocation (%GFP_KERNEL, %GFP_ATOMIC, etc)
621 * @prot - struct proto associated with this new sock instance 621 * @prot: struct proto associated with this new sock instance
622 * @zero_it - if we should zero the newly allocated sock 622 * @zero_it: if we should zero the newly allocated sock
623 */ 623 */
624struct sock *sk_alloc(int family, int priority, struct proto *prot, int zero_it) 624struct sock *sk_alloc(int family, int priority, struct proto *prot, int zero_it)
625{ 625{
@@ -970,8 +970,8 @@ static void __release_sock(struct sock *sk)
970 970
971/** 971/**
972 * sk_wait_data - wait for data to arrive at sk_receive_queue 972 * sk_wait_data - wait for data to arrive at sk_receive_queue
973 * sk - sock to wait on 973 * @sk: sock to wait on
974 * timeo - for how long 974 * @timeo: for how long
975 * 975 *
976 * Now socket state including sk->sk_err is changed only under lock, 976 * Now socket state including sk->sk_err is changed only under lock,
977 * hence we may omit checks after joining wait queue. 977 * hence we may omit checks after joining wait queue.
diff --git a/net/core/stream.c b/net/core/stream.c
index 1e27a57b5a97..ac9edfdf8742 100644
--- a/net/core/stream.c
+++ b/net/core/stream.c
@@ -21,7 +21,7 @@
21 21
22/** 22/**
23 * sk_stream_write_space - stream socket write_space callback. 23 * sk_stream_write_space - stream socket write_space callback.
24 * sk - socket 24 * @sk: socket
25 * 25 *
26 * FIXME: write proper description 26 * FIXME: write proper description
27 */ 27 */
@@ -43,8 +43,8 @@ EXPORT_SYMBOL(sk_stream_write_space);
43 43
44/** 44/**
45 * sk_stream_wait_connect - Wait for a socket to get into the connected state 45 * sk_stream_wait_connect - Wait for a socket to get into the connected state
46 * @sk - sock to wait on 46 * @sk: sock to wait on
47 * @timeo_p - for how long to wait 47 * @timeo_p: for how long to wait
48 * 48 *
49 * Must be called with the socket locked. 49 * Must be called with the socket locked.
50 */ 50 */
@@ -79,7 +79,7 @@ EXPORT_SYMBOL(sk_stream_wait_connect);
79 79
80/** 80/**
81 * sk_stream_closing - Return 1 if we still have things to send in our buffers. 81 * sk_stream_closing - Return 1 if we still have things to send in our buffers.
82 * @sk - socket to verify 82 * @sk: socket to verify
83 */ 83 */
84static inline int sk_stream_closing(struct sock *sk) 84static inline int sk_stream_closing(struct sock *sk)
85{ 85{
@@ -107,8 +107,8 @@ EXPORT_SYMBOL(sk_stream_wait_close);
107 107
108/** 108/**
109 * sk_stream_wait_memory - Wait for more memory for a socket 109 * sk_stream_wait_memory - Wait for more memory for a socket
110 * @sk - socket to wait for memory 110 * @sk: socket to wait for memory
111 * @timeo_p - for how long 111 * @timeo_p: for how long
112 */ 112 */
113int sk_stream_wait_memory(struct sock *sk, long *timeo_p) 113int sk_stream_wait_memory(struct sock *sk, long *timeo_p)
114{ 114{
diff --git a/net/sunrpc/xdr.c b/net/sunrpc/xdr.c
index 4484931018eb..67b9f035ba86 100644
--- a/net/sunrpc/xdr.c
+++ b/net/sunrpc/xdr.c
@@ -46,9 +46,9 @@ xdr_decode_netobj(u32 *p, struct xdr_netobj *obj)
46 46
47/** 47/**
48 * xdr_encode_opaque_fixed - Encode fixed length opaque data 48 * xdr_encode_opaque_fixed - Encode fixed length opaque data
49 * @p - pointer to current position in XDR buffer. 49 * @p: pointer to current position in XDR buffer.
50 * @ptr - pointer to data to encode (or NULL) 50 * @ptr: pointer to data to encode (or NULL)
51 * @nbytes - size of data. 51 * @nbytes: size of data.
52 * 52 *
53 * Copy the array of data of length nbytes at ptr to the XDR buffer 53 * Copy the array of data of length nbytes at ptr to the XDR buffer
54 * at position p, then align to the next 32-bit boundary by padding 54 * at position p, then align to the next 32-bit boundary by padding
@@ -76,9 +76,9 @@ EXPORT_SYMBOL(xdr_encode_opaque_fixed);
76 76
77/** 77/**
78 * xdr_encode_opaque - Encode variable length opaque data 78 * xdr_encode_opaque - Encode variable length opaque data
79 * @p - pointer to current position in XDR buffer. 79 * @p: pointer to current position in XDR buffer.
80 * @ptr - pointer to data to encode (or NULL) 80 * @ptr: pointer to data to encode (or NULL)
81 * @nbytes - size of data. 81 * @nbytes: size of data.
82 * 82 *
83 * Returns the updated current XDR buffer position 83 * Returns the updated current XDR buffer position
84 */ 84 */
diff --git a/scripts/kernel-doc b/scripts/kernel-doc
index 8b1dab63f11c..3cc333070e59 100755
--- a/scripts/kernel-doc
+++ b/scripts/kernel-doc
@@ -1465,6 +1465,8 @@ sub dump_function($$) {
1465 1465
1466 $prototype =~ s/^static +//; 1466 $prototype =~ s/^static +//;
1467 $prototype =~ s/^extern +//; 1467 $prototype =~ s/^extern +//;
1468 $prototype =~ s/^fastcall +//;
1469 $prototype =~ s/^asmlinkage +//;
1468 $prototype =~ s/^inline +//; 1470 $prototype =~ s/^inline +//;
1469 $prototype =~ s/^__inline__ +//; 1471 $prototype =~ s/^__inline__ +//;
1470 $prototype =~ s/^#define +//; #ak added 1472 $prototype =~ s/^#define +//; #ak added