diff options
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/00-INDEX | 2 | ||||
-rw-r--r-- | Documentation/DocBook/Makefile | 2 | ||||
-rw-r--r-- | Documentation/DocBook/filesystems.tmpl | 20 | ||||
-rw-r--r-- | Documentation/DocBook/kernel-api.tmpl | 84 | ||||
-rw-r--r-- | Documentation/DocBook/networking.tmpl | 106 | ||||
-rw-r--r-- | Documentation/RCU/NMI-RCU.txt | 2 | ||||
-rw-r--r-- | Documentation/SubmitChecklist | 16 | ||||
-rw-r--r-- | Documentation/cpuidle/core.txt | 23 | ||||
-rw-r--r-- | Documentation/cpuidle/driver.txt | 31 | ||||
-rw-r--r-- | Documentation/cpuidle/governor.txt | 29 | ||||
-rw-r--r-- | Documentation/cpuidle/sysfs.txt | 79 | ||||
-rw-r--r-- | Documentation/kprobes.txt | 11 | ||||
-rw-r--r-- | Documentation/sched-rt-group.txt | 59 | ||||
-rw-r--r-- | Documentation/sysctl/kernel.txt | 2 | ||||
-rw-r--r-- | Documentation/video4linux/CARDLIST.em28xx | 2 | ||||
-rw-r--r-- | Documentation/video4linux/CARDLIST.saa7134 | 6 | ||||
-rw-r--r-- | Documentation/video4linux/zr364xx.txt | 4 |
17 files changed, 370 insertions, 108 deletions
diff --git a/Documentation/00-INDEX b/Documentation/00-INDEX index 8d556707bb68..30b327a116ea 100644 --- a/Documentation/00-INDEX +++ b/Documentation/00-INDEX | |||
@@ -109,6 +109,8 @@ cpu-hotplug.txt | |||
109 | - document describing CPU hotplug support in the Linux kernel. | 109 | - document describing CPU hotplug support in the Linux kernel. |
110 | cpu-load.txt | 110 | cpu-load.txt |
111 | - document describing how CPU load statistics are collected. | 111 | - document describing how CPU load statistics are collected. |
112 | cpuidle/ | ||
113 | - info on CPU_IDLE, CPU idle state management subsystem. | ||
112 | cpusets.txt | 114 | cpusets.txt |
113 | - documents the cpusets feature; assign CPUs and Mem to a set of tasks. | 115 | - documents the cpusets feature; assign CPUs and Mem to a set of tasks. |
114 | cputopology.txt | 116 | cputopology.txt |
diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile index 6a0ad4715e9f..300e1707893f 100644 --- a/Documentation/DocBook/Makefile +++ b/Documentation/DocBook/Makefile | |||
@@ -8,7 +8,7 @@ | |||
8 | 8 | ||
9 | DOCBOOKS := wanbook.xml z8530book.xml mcabook.xml videobook.xml \ | 9 | DOCBOOKS := wanbook.xml z8530book.xml mcabook.xml videobook.xml \ |
10 | kernel-hacking.xml kernel-locking.xml deviceiobook.xml \ | 10 | kernel-hacking.xml kernel-locking.xml deviceiobook.xml \ |
11 | procfs-guide.xml writing_usb_driver.xml \ | 11 | procfs-guide.xml writing_usb_driver.xml networking.xml \ |
12 | kernel-api.xml filesystems.xml lsm.xml usb.xml \ | 12 | kernel-api.xml filesystems.xml lsm.xml usb.xml \ |
13 | gadget.xml libata.xml mtdnand.xml librs.xml rapidio.xml \ | 13 | gadget.xml libata.xml mtdnand.xml librs.xml rapidio.xml \ |
14 | genericirq.xml s390-drivers.xml uio-howto.xml scsi.xml | 14 | genericirq.xml s390-drivers.xml uio-howto.xml scsi.xml |
diff --git a/Documentation/DocBook/filesystems.tmpl b/Documentation/DocBook/filesystems.tmpl index 5eaef87e8f1b..5e87ad58c0b5 100644 --- a/Documentation/DocBook/filesystems.tmpl +++ b/Documentation/DocBook/filesystems.tmpl | |||
@@ -398,4 +398,24 @@ an example. | |||
398 | 398 | ||
399 | </chapter> | 399 | </chapter> |
400 | 400 | ||
401 | <chapter id="splice"> | ||
402 | <title>splice API</title> | ||
403 | <para> | ||
404 | splice is a method for moving blocks of data around inside the | ||
405 | kernel, without continually transferring them between the kernel | ||
406 | and user space. | ||
407 | </para> | ||
408 | !Ffs/splice.c | ||
409 | </chapter> | ||
410 | |||
411 | <chapter id="pipes"> | ||
412 | <title>pipes API</title> | ||
413 | <para> | ||
414 | Pipe interfaces are all for in-kernel (builtin image) use. | ||
415 | They are not exported for use by modules. | ||
416 | </para> | ||
417 | !Iinclude/linux/pipe_fs_i.h | ||
418 | !Ffs/pipe.c | ||
419 | </chapter> | ||
420 | |||
401 | </book> | 421 | </book> |
diff --git a/Documentation/DocBook/kernel-api.tmpl b/Documentation/DocBook/kernel-api.tmpl index 059aaf20951a..f31601e8bd89 100644 --- a/Documentation/DocBook/kernel-api.tmpl +++ b/Documentation/DocBook/kernel-api.tmpl | |||
@@ -204,65 +204,6 @@ X!Ilib/string.c | |||
204 | </sect1> | 204 | </sect1> |
205 | </chapter> | 205 | </chapter> |
206 | 206 | ||
207 | <chapter id="netcore"> | ||
208 | <title>Linux Networking</title> | ||
209 | <sect1><title>Networking Base Types</title> | ||
210 | !Iinclude/linux/net.h | ||
211 | </sect1> | ||
212 | <sect1><title>Socket Buffer Functions</title> | ||
213 | !Iinclude/linux/skbuff.h | ||
214 | !Iinclude/net/sock.h | ||
215 | !Enet/socket.c | ||
216 | !Enet/core/skbuff.c | ||
217 | !Enet/core/sock.c | ||
218 | !Enet/core/datagram.c | ||
219 | !Enet/core/stream.c | ||
220 | </sect1> | ||
221 | <sect1><title>Socket Filter</title> | ||
222 | !Enet/core/filter.c | ||
223 | </sect1> | ||
224 | <sect1><title>Generic Network Statistics</title> | ||
225 | !Iinclude/linux/gen_stats.h | ||
226 | !Enet/core/gen_stats.c | ||
227 | !Enet/core/gen_estimator.c | ||
228 | </sect1> | ||
229 | <sect1><title>SUN RPC subsystem</title> | ||
230 | <!-- The !D functionality is not perfect, garbage has to be protected by comments | ||
231 | !Dnet/sunrpc/sunrpc_syms.c | ||
232 | --> | ||
233 | !Enet/sunrpc/xdr.c | ||
234 | !Enet/sunrpc/svcsock.c | ||
235 | !Enet/sunrpc/sched.c | ||
236 | </sect1> | ||
237 | </chapter> | ||
238 | |||
239 | <chapter id="netdev"> | ||
240 | <title>Network device support</title> | ||
241 | <sect1><title>Driver Support</title> | ||
242 | !Enet/core/dev.c | ||
243 | !Enet/ethernet/eth.c | ||
244 | !Enet/sched/sch_generic.c | ||
245 | !Iinclude/linux/etherdevice.h | ||
246 | !Iinclude/linux/netdevice.h | ||
247 | </sect1> | ||
248 | <sect1><title>PHY Support</title> | ||
249 | !Edrivers/net/phy/phy.c | ||
250 | !Idrivers/net/phy/phy.c | ||
251 | !Edrivers/net/phy/phy_device.c | ||
252 | !Idrivers/net/phy/phy_device.c | ||
253 | !Edrivers/net/phy/mdio_bus.c | ||
254 | !Idrivers/net/phy/mdio_bus.c | ||
255 | </sect1> | ||
256 | <!-- FIXME: Removed for now since no structured comments in source | ||
257 | <sect1><title>Wireless</title> | ||
258 | X!Enet/core/wireless.c | ||
259 | </sect1> | ||
260 | --> | ||
261 | <sect1><title>Synchronous PPP</title> | ||
262 | !Edrivers/net/wan/syncppp.c | ||
263 | </sect1> | ||
264 | </chapter> | ||
265 | |||
266 | <chapter id="modload"> | 207 | <chapter id="modload"> |
267 | <title>Module Support</title> | 208 | <title>Module Support</title> |
268 | <sect1><title>Module Loading</title> | 209 | <sect1><title>Module Loading</title> |
@@ -508,11 +449,6 @@ X!Isound/sound_firmware.c | |||
508 | !Edrivers/serial/8250.c | 449 | !Edrivers/serial/8250.c |
509 | </chapter> | 450 | </chapter> |
510 | 451 | ||
511 | <chapter id="z85230"> | ||
512 | <title>Z85230 Support Library</title> | ||
513 | !Edrivers/net/wan/z85230.c | ||
514 | </chapter> | ||
515 | |||
516 | <chapter id="fbdev"> | 452 | <chapter id="fbdev"> |
517 | <title>Frame Buffer Library</title> | 453 | <title>Frame Buffer Library</title> |
518 | 454 | ||
@@ -712,24 +648,4 @@ X!Idrivers/video/console/fonts.c | |||
712 | !Edrivers/i2c/i2c-core.c | 648 | !Edrivers/i2c/i2c-core.c |
713 | </chapter> | 649 | </chapter> |
714 | 650 | ||
715 | <chapter id="splice"> | ||
716 | <title>splice API</title> | ||
717 | <para> | ||
718 | splice is a method for moving blocks of data around inside the | ||
719 | kernel, without continually transferring them between the kernel | ||
720 | and user space. | ||
721 | </para> | ||
722 | !Ffs/splice.c | ||
723 | </chapter> | ||
724 | |||
725 | <chapter id="pipes"> | ||
726 | <title>pipes API</title> | ||
727 | <para> | ||
728 | Pipe interfaces are all for in-kernel (builtin image) use. | ||
729 | They are not exported for use by modules. | ||
730 | </para> | ||
731 | !Iinclude/linux/pipe_fs_i.h | ||
732 | !Ffs/pipe.c | ||
733 | </chapter> | ||
734 | |||
735 | </book> | 651 | </book> |
diff --git a/Documentation/DocBook/networking.tmpl b/Documentation/DocBook/networking.tmpl new file mode 100644 index 000000000000..f24f9e85e4ae --- /dev/null +++ b/Documentation/DocBook/networking.tmpl | |||
@@ -0,0 +1,106 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" | ||
3 | "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" []> | ||
4 | |||
5 | <book id="LinuxNetworking"> | ||
6 | <bookinfo> | ||
7 | <title>Linux Networking and Network Devices APIs</title> | ||
8 | |||
9 | <legalnotice> | ||
10 | <para> | ||
11 | This documentation is free software; you can redistribute | ||
12 | it and/or modify it under the terms of the GNU General Public | ||
13 | License as published by the Free Software Foundation; either | ||
14 | version 2 of the License, or (at your option) any later | ||
15 | version. | ||
16 | </para> | ||
17 | |||
18 | <para> | ||
19 | This program is distributed in the hope that it will be | ||
20 | useful, but WITHOUT ANY WARRANTY; without even the implied | ||
21 | warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | ||
22 | See the GNU General Public License for more details. | ||
23 | </para> | ||
24 | |||
25 | <para> | ||
26 | You should have received a copy of the GNU General Public | ||
27 | License along with this program; if not, write to the Free | ||
28 | Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, | ||
29 | MA 02111-1307 USA | ||
30 | </para> | ||
31 | |||
32 | <para> | ||
33 | For more details see the file COPYING in the source | ||
34 | distribution of Linux. | ||
35 | </para> | ||
36 | </legalnotice> | ||
37 | </bookinfo> | ||
38 | |||
39 | <toc></toc> | ||
40 | |||
41 | <chapter id="netcore"> | ||
42 | <title>Linux Networking</title> | ||
43 | <sect1><title>Networking Base Types</title> | ||
44 | !Iinclude/linux/net.h | ||
45 | </sect1> | ||
46 | <sect1><title>Socket Buffer Functions</title> | ||
47 | !Iinclude/linux/skbuff.h | ||
48 | !Iinclude/net/sock.h | ||
49 | !Enet/socket.c | ||
50 | !Enet/core/skbuff.c | ||
51 | !Enet/core/sock.c | ||
52 | !Enet/core/datagram.c | ||
53 | !Enet/core/stream.c | ||
54 | </sect1> | ||
55 | <sect1><title>Socket Filter</title> | ||
56 | !Enet/core/filter.c | ||
57 | </sect1> | ||
58 | <sect1><title>Generic Network Statistics</title> | ||
59 | !Iinclude/linux/gen_stats.h | ||
60 | !Enet/core/gen_stats.c | ||
61 | !Enet/core/gen_estimator.c | ||
62 | </sect1> | ||
63 | <sect1><title>SUN RPC subsystem</title> | ||
64 | <!-- The !D functionality is not perfect, garbage has to be protected by comments | ||
65 | !Dnet/sunrpc/sunrpc_syms.c | ||
66 | --> | ||
67 | !Enet/sunrpc/xdr.c | ||
68 | !Enet/sunrpc/svc_xprt.c | ||
69 | !Enet/sunrpc/xprt.c | ||
70 | !Enet/sunrpc/sched.c | ||
71 | !Enet/sunrpc/socklib.c | ||
72 | !Enet/sunrpc/stats.c | ||
73 | !Enet/sunrpc/rpc_pipe.c | ||
74 | !Enet/sunrpc/rpcb_clnt.c | ||
75 | !Enet/sunrpc/clnt.c | ||
76 | </sect1> | ||
77 | </chapter> | ||
78 | |||
79 | <chapter id="netdev"> | ||
80 | <title>Network device support</title> | ||
81 | <sect1><title>Driver Support</title> | ||
82 | !Enet/core/dev.c | ||
83 | !Enet/ethernet/eth.c | ||
84 | !Enet/sched/sch_generic.c | ||
85 | !Iinclude/linux/etherdevice.h | ||
86 | !Iinclude/linux/netdevice.h | ||
87 | </sect1> | ||
88 | <sect1><title>PHY Support</title> | ||
89 | !Edrivers/net/phy/phy.c | ||
90 | !Idrivers/net/phy/phy.c | ||
91 | !Edrivers/net/phy/phy_device.c | ||
92 | !Idrivers/net/phy/phy_device.c | ||
93 | !Edrivers/net/phy/mdio_bus.c | ||
94 | !Idrivers/net/phy/mdio_bus.c | ||
95 | </sect1> | ||
96 | <!-- FIXME: Removed for now since no structured comments in source | ||
97 | <sect1><title>Wireless</title> | ||
98 | X!Enet/core/wireless.c | ||
99 | </sect1> | ||
100 | --> | ||
101 | <sect1><title>Synchronous PPP</title> | ||
102 | !Edrivers/net/wan/syncppp.c | ||
103 | </sect1> | ||
104 | </chapter> | ||
105 | |||
106 | </book> | ||
diff --git a/Documentation/RCU/NMI-RCU.txt b/Documentation/RCU/NMI-RCU.txt index d0634a5c3445..c64158ecde43 100644 --- a/Documentation/RCU/NMI-RCU.txt +++ b/Documentation/RCU/NMI-RCU.txt | |||
@@ -25,7 +25,7 @@ the NMI handler to take the default machine-specific action. | |||
25 | This nmi_callback variable is a global function pointer to the current | 25 | This nmi_callback variable is a global function pointer to the current |
26 | NMI handler. | 26 | NMI handler. |
27 | 27 | ||
28 | fastcall void do_nmi(struct pt_regs * regs, long error_code) | 28 | void do_nmi(struct pt_regs * regs, long error_code) |
29 | { | 29 | { |
30 | int cpu; | 30 | int cpu; |
31 | 31 | ||
diff --git a/Documentation/SubmitChecklist b/Documentation/SubmitChecklist index 34e06d2f194f..da10e0714241 100644 --- a/Documentation/SubmitChecklist +++ b/Documentation/SubmitChecklist | |||
@@ -20,7 +20,11 @@ kernel patches. | |||
20 | 4: ppc64 is a good architecture for cross-compilation checking because it | 20 | 4: ppc64 is a good architecture for cross-compilation checking because it |
21 | tends to use `unsigned long' for 64-bit quantities. | 21 | tends to use `unsigned long' for 64-bit quantities. |
22 | 22 | ||
23 | 5: Matches kernel coding style(!) | 23 | 5: Check your patch for general style as detailed in |
24 | Documentation/CodingStyle. Check for trivial violations with the | ||
25 | patch style checker prior to submission (scripts/checkpatch.pl). | ||
26 | You should be able to justify all violations that remain in | ||
27 | your patch. | ||
24 | 28 | ||
25 | 6: Any new or modified CONFIG options don't muck up the config menu. | 29 | 6: Any new or modified CONFIG options don't muck up the config menu. |
26 | 30 | ||
@@ -79,13 +83,3 @@ kernel patches. | |||
79 | 23: Tested after it has been merged into the -mm patchset to make sure | 83 | 23: Tested after it has been merged into the -mm patchset to make sure |
80 | that it still works with all of the other queued patches and various | 84 | that it still works with all of the other queued patches and various |
81 | changes in the VM, VFS, and other subsystems. | 85 | changes in the VM, VFS, and other subsystems. |
82 | |||
83 | 24: Avoid whitespace damage such as indenting with spaces or whitespace | ||
84 | at the end of lines. You can test this by feeding the patch to | ||
85 | "git apply --check --whitespace=error-all" | ||
86 | |||
87 | 25: Check your patch for general style as detailed in | ||
88 | Documentation/CodingStyle. Check for trivial violations with the | ||
89 | patch style checker prior to submission (scripts/checkpatch.pl). | ||
90 | You should be able to justify all violations that remain in | ||
91 | your patch. | ||
diff --git a/Documentation/cpuidle/core.txt b/Documentation/cpuidle/core.txt new file mode 100644 index 000000000000..63ecc5dc9d8a --- /dev/null +++ b/Documentation/cpuidle/core.txt | |||
@@ -0,0 +1,23 @@ | |||
1 | |||
2 | Supporting multiple CPU idle levels in kernel | ||
3 | |||
4 | cpuidle | ||
5 | |||
6 | General Information: | ||
7 | |||
8 | Various CPUs today support multiple idle levels that are differentiated | ||
9 | by varying exit latencies and power consumption during idle. | ||
10 | cpuidle is a generic in-kernel infrastructure that separates | ||
11 | idle policy (governor) from idle mechanism (driver) and provides a | ||
12 | standardized infrastructure to support independent development of | ||
13 | governors and drivers. | ||
14 | |||
15 | cpuidle resides under drivers/cpuidle. | ||
16 | |||
17 | Boot options: | ||
18 | "cpuidle_sysfs_switch" | ||
19 | enables current_governor interface in /sys/devices/system/cpu/cpuidle/, | ||
20 | which can be used to switch governors at run time. This boot option | ||
21 | is meant for developer testing only. In normal usage, kernel picks the | ||
22 | best governor based on governor ratings. | ||
23 | SEE ALSO: sysfs.txt in this directory. | ||
diff --git a/Documentation/cpuidle/driver.txt b/Documentation/cpuidle/driver.txt new file mode 100644 index 000000000000..7a9e09ece931 --- /dev/null +++ b/Documentation/cpuidle/driver.txt | |||
@@ -0,0 +1,31 @@ | |||
1 | |||
2 | |||
3 | Supporting multiple CPU idle levels in kernel | ||
4 | |||
5 | cpuidle drivers | ||
6 | |||
7 | |||
8 | |||
9 | |||
10 | cpuidle driver hooks into the cpuidle infrastructure and handles the | ||
11 | architecture/platform dependent part of CPU idle states. Driver | ||
12 | provides the platform idle state detection capability and also | ||
13 | has mechanisms in place to support actual entry-exit into CPU idle states. | ||
14 | |||
15 | cpuidle driver initializes the cpuidle_device structure for each CPU device | ||
16 | and registers with cpuidle using cpuidle_register_device. | ||
17 | |||
18 | It can also support the dynamic changes (like battery <-> AC), by using | ||
19 | cpuidle_pause_and_lock, cpuidle_disable_device and cpuidle_enable_device, | ||
20 | cpuidle_resume_and_unlock. | ||
21 | |||
22 | Interfaces: | ||
23 | extern int cpuidle_register_driver(struct cpuidle_driver *drv); | ||
24 | extern void cpuidle_unregister_driver(struct cpuidle_driver *drv); | ||
25 | extern int cpuidle_register_device(struct cpuidle_device *dev); | ||
26 | extern void cpuidle_unregister_device(struct cpuidle_device *dev); | ||
27 | |||
28 | extern void cpuidle_pause_and_lock(void); | ||
29 | extern void cpuidle_resume_and_unlock(void); | ||
30 | extern int cpuidle_enable_device(struct cpuidle_device *dev); | ||
31 | extern void cpuidle_disable_device(struct cpuidle_device *dev); | ||
diff --git a/Documentation/cpuidle/governor.txt b/Documentation/cpuidle/governor.txt new file mode 100644 index 000000000000..12c6bd50c9f6 --- /dev/null +++ b/Documentation/cpuidle/governor.txt | |||
@@ -0,0 +1,29 @@ | |||
1 | |||
2 | |||
3 | |||
4 | Supporting multiple CPU idle levels in kernel | ||
5 | |||
6 | cpuidle governors | ||
7 | |||
8 | |||
9 | |||
10 | |||
11 | cpuidle governor is policy routine that decides what idle state to enter at | ||
12 | any given time. cpuidle core uses different callbacks to the governor. | ||
13 | |||
14 | * enable() to enable governor for a particular device | ||
15 | * disable() to disable governor for a particular device | ||
16 | * select() to select an idle state to enter | ||
17 | * reflect() called after returning from the idle state, which can be used | ||
18 | by the governor for some record keeping. | ||
19 | |||
20 | More than one governor can be registered at the same time and | ||
21 | users can switch between drivers using /sysfs interface (when enabled). | ||
22 | More than one governor part is supported for developers to easily experiment | ||
23 | with different governors. By default, most optimal governor based on your | ||
24 | kernel configuration and platform will be selected by cpuidle. | ||
25 | |||
26 | Interfaces: | ||
27 | extern int cpuidle_register_governor(struct cpuidle_governor *gov); | ||
28 | extern void cpuidle_unregister_governor(struct cpuidle_governor *gov); | ||
29 | struct cpuidle_governor | ||
diff --git a/Documentation/cpuidle/sysfs.txt b/Documentation/cpuidle/sysfs.txt new file mode 100644 index 000000000000..50d7b1642759 --- /dev/null +++ b/Documentation/cpuidle/sysfs.txt | |||
@@ -0,0 +1,79 @@ | |||
1 | |||
2 | |||
3 | Supporting multiple CPU idle levels in kernel | ||
4 | |||
5 | cpuidle sysfs | ||
6 | |||
7 | System global cpuidle related information and tunables are under | ||
8 | /sys/devices/system/cpu/cpuidle | ||
9 | |||
10 | The current interfaces in this directory has self-explanatory names: | ||
11 | * current_driver | ||
12 | * current_governor_ro | ||
13 | |||
14 | With cpuidle_sysfs_switch boot option (meant for developer testing) | ||
15 | following objects are visible instead. | ||
16 | * current_driver | ||
17 | * available_governors | ||
18 | * current_governor | ||
19 | In this case users can switch the governor at run time by writing | ||
20 | to current_governor. | ||
21 | |||
22 | |||
23 | Per logical CPU specific cpuidle information are under | ||
24 | /sys/devices/system/cpu/cpuX/cpuidle | ||
25 | for each online cpu X | ||
26 | |||
27 | -------------------------------------------------------------------------------- | ||
28 | # ls -lR /sys/devices/system/cpu/cpu0/cpuidle/ | ||
29 | /sys/devices/system/cpu/cpu0/cpuidle/: | ||
30 | total 0 | ||
31 | drwxr-xr-x 2 root root 0 Feb 8 10:42 state0 | ||
32 | drwxr-xr-x 2 root root 0 Feb 8 10:42 state1 | ||
33 | drwxr-xr-x 2 root root 0 Feb 8 10:42 state2 | ||
34 | drwxr-xr-x 2 root root 0 Feb 8 10:42 state3 | ||
35 | |||
36 | /sys/devices/system/cpu/cpu0/cpuidle/state0: | ||
37 | total 0 | ||
38 | -r--r--r-- 1 root root 4096 Feb 8 10:42 desc | ||
39 | -r--r--r-- 1 root root 4096 Feb 8 10:42 latency | ||
40 | -r--r--r-- 1 root root 4096 Feb 8 10:42 name | ||
41 | -r--r--r-- 1 root root 4096 Feb 8 10:42 power | ||
42 | -r--r--r-- 1 root root 4096 Feb 8 10:42 time | ||
43 | -r--r--r-- 1 root root 4096 Feb 8 10:42 usage | ||
44 | |||
45 | /sys/devices/system/cpu/cpu0/cpuidle/state1: | ||
46 | total 0 | ||
47 | -r--r--r-- 1 root root 4096 Feb 8 10:42 desc | ||
48 | -r--r--r-- 1 root root 4096 Feb 8 10:42 latency | ||
49 | -r--r--r-- 1 root root 4096 Feb 8 10:42 name | ||
50 | -r--r--r-- 1 root root 4096 Feb 8 10:42 power | ||
51 | -r--r--r-- 1 root root 4096 Feb 8 10:42 time | ||
52 | -r--r--r-- 1 root root 4096 Feb 8 10:42 usage | ||
53 | |||
54 | /sys/devices/system/cpu/cpu0/cpuidle/state2: | ||
55 | total 0 | ||
56 | -r--r--r-- 1 root root 4096 Feb 8 10:42 desc | ||
57 | -r--r--r-- 1 root root 4096 Feb 8 10:42 latency | ||
58 | -r--r--r-- 1 root root 4096 Feb 8 10:42 name | ||
59 | -r--r--r-- 1 root root 4096 Feb 8 10:42 power | ||
60 | -r--r--r-- 1 root root 4096 Feb 8 10:42 time | ||
61 | -r--r--r-- 1 root root 4096 Feb 8 10:42 usage | ||
62 | |||
63 | /sys/devices/system/cpu/cpu0/cpuidle/state3: | ||
64 | total 0 | ||
65 | -r--r--r-- 1 root root 4096 Feb 8 10:42 desc | ||
66 | -r--r--r-- 1 root root 4096 Feb 8 10:42 latency | ||
67 | -r--r--r-- 1 root root 4096 Feb 8 10:42 name | ||
68 | -r--r--r-- 1 root root 4096 Feb 8 10:42 power | ||
69 | -r--r--r-- 1 root root 4096 Feb 8 10:42 time | ||
70 | -r--r--r-- 1 root root 4096 Feb 8 10:42 usage | ||
71 | -------------------------------------------------------------------------------- | ||
72 | |||
73 | |||
74 | * desc : Small description about the idle state (string) | ||
75 | * latency : Latency to exit out of this idle state (in microseconds) | ||
76 | * name : Name of the idle state (string) | ||
77 | * power : Power consumed while in this idle state (in milliwatts) | ||
78 | * time : Total time spent in this idle state (in microseconds) | ||
79 | * usage : Number of times this state was entered (count) | ||
diff --git a/Documentation/kprobes.txt b/Documentation/kprobes.txt index 30c101761d0d..83f515c2905a 100644 --- a/Documentation/kprobes.txt +++ b/Documentation/kprobes.txt | |||
@@ -92,9 +92,8 @@ handler has run. Up to MAX_STACK_SIZE bytes are copied -- e.g., | |||
92 | 64 bytes on i386. | 92 | 64 bytes on i386. |
93 | 93 | ||
94 | Note that the probed function's args may be passed on the stack | 94 | Note that the probed function's args may be passed on the stack |
95 | or in registers (e.g., for x86_64 or for an i386 fastcall function). | 95 | or in registers. The jprobe will work in either case, so long as the |
96 | The jprobe will work in either case, so long as the handler's | 96 | handler's prototype matches that of the probed function. |
97 | prototype matches that of the probed function. | ||
98 | 97 | ||
99 | 1.3 Return Probes | 98 | 1.3 Return Probes |
100 | 99 | ||
@@ -270,9 +269,9 @@ Kprobes runs the handler whose address is jp->entry. | |||
270 | The handler should have the same arg list and return type as the probed | 269 | The handler should have the same arg list and return type as the probed |
271 | function; and just before it returns, it must call jprobe_return(). | 270 | function; and just before it returns, it must call jprobe_return(). |
272 | (The handler never actually returns, since jprobe_return() returns | 271 | (The handler never actually returns, since jprobe_return() returns |
273 | control to Kprobes.) If the probed function is declared asmlinkage, | 272 | control to Kprobes.) If the probed function is declared asmlinkage |
274 | fastcall, or anything else that affects how args are passed, the | 273 | or anything else that affects how args are passed, the handler's |
275 | handler's declaration must match. | 274 | declaration must match. |
276 | 275 | ||
277 | register_jprobe() returns 0 on success, or a negative errno otherwise. | 276 | register_jprobe() returns 0 on success, or a negative errno otherwise. |
278 | 277 | ||
diff --git a/Documentation/sched-rt-group.txt b/Documentation/sched-rt-group.txt new file mode 100644 index 000000000000..1c6332f4543c --- /dev/null +++ b/Documentation/sched-rt-group.txt | |||
@@ -0,0 +1,59 @@ | |||
1 | |||
2 | |||
3 | Real-Time group scheduling. | ||
4 | |||
5 | The problem space: | ||
6 | |||
7 | In order to schedule multiple groups of realtime tasks each group must | ||
8 | be assigned a fixed portion of the CPU time available. Without a minimum | ||
9 | guarantee a realtime group can obviously fall short. A fuzzy upper limit | ||
10 | is of no use since it cannot be relied upon. Which leaves us with just | ||
11 | the single fixed portion. | ||
12 | |||
13 | CPU time is divided by means of specifying how much time can be spent | ||
14 | running in a given period. Say a frame fixed realtime renderer must | ||
15 | deliver 25 frames a second, which yields a period of 0.04s. Now say | ||
16 | it will also have to play some music and respond to input, leaving it | ||
17 | with around 80% for the graphics. We can then give this group a runtime | ||
18 | of 0.8 * 0.04s = 0.032s. | ||
19 | |||
20 | This way the graphics group will have a 0.04s period with a 0.032s runtime | ||
21 | limit. | ||
22 | |||
23 | Now if the audio thread needs to refill the DMA buffer every 0.005s, but | ||
24 | needs only about 3% CPU time to do so, it can do with a 0.03 * 0.005s | ||
25 | = 0.00015s. | ||
26 | |||
27 | |||
28 | The Interface: | ||
29 | |||
30 | system wide: | ||
31 | |||
32 | /proc/sys/kernel/sched_rt_period_ms | ||
33 | /proc/sys/kernel/sched_rt_runtime_us | ||
34 | |||
35 | CONFIG_FAIR_USER_SCHED | ||
36 | |||
37 | /sys/kernel/uids/<uid>/cpu_rt_runtime_us | ||
38 | |||
39 | or | ||
40 | |||
41 | CONFIG_FAIR_CGROUP_SCHED | ||
42 | |||
43 | /cgroup/<cgroup>/cpu.rt_runtime_us | ||
44 | |||
45 | [ time is specified in us because the interface is s32; this gives an | ||
46 | operating range of ~35m to 1us ] | ||
47 | |||
48 | The period takes values in [ 1, INT_MAX ], runtime in [ -1, INT_MAX - 1 ]. | ||
49 | |||
50 | A runtime of -1 specifies runtime == period, ie. no limit. | ||
51 | |||
52 | New groups get the period from /proc/sys/kernel/sched_rt_period_us and | ||
53 | a runtime of 0. | ||
54 | |||
55 | Settings are constrained to: | ||
56 | |||
57 | \Sum_{i} runtime_{i} / global_period <= global_runtime / global_period | ||
58 | |||
59 | in order to keep the configuration schedulable. | ||
diff --git a/Documentation/sysctl/kernel.txt b/Documentation/sysctl/kernel.txt index dc8801d4e944..276a7e637822 100644 --- a/Documentation/sysctl/kernel.txt +++ b/Documentation/sysctl/kernel.txt | |||
@@ -29,7 +29,7 @@ show up in /proc/sys/kernel: | |||
29 | - java-interpreter [ binfmt_java, obsolete ] | 29 | - java-interpreter [ binfmt_java, obsolete ] |
30 | - kstack_depth_to_print [ X86 only ] | 30 | - kstack_depth_to_print [ X86 only ] |
31 | - l2cr [ PPC only ] | 31 | - l2cr [ PPC only ] |
32 | - modprobe ==> Documentation/kmod.txt | 32 | - modprobe ==> Documentation/debugging-modules.txt |
33 | - msgmax | 33 | - msgmax |
34 | - msgmnb | 34 | - msgmnb |
35 | - msgmni | 35 | - msgmni |
diff --git a/Documentation/video4linux/CARDLIST.em28xx b/Documentation/video4linux/CARDLIST.em28xx index 6a8469f2bcae..f40e09296f30 100644 --- a/Documentation/video4linux/CARDLIST.em28xx +++ b/Documentation/video4linux/CARDLIST.em28xx | |||
@@ -8,7 +8,7 @@ | |||
8 | 7 -> Leadtek Winfast USB II (em2800) | 8 | 7 -> Leadtek Winfast USB II (em2800) |
9 | 8 -> Kworld USB2800 (em2800) | 9 | 8 -> Kworld USB2800 (em2800) |
10 | 9 -> Pinnacle Dazzle DVC 90/DVC 100 (em2820/em2840) [2304:0207,2304:021a] | 10 | 9 -> Pinnacle Dazzle DVC 90/DVC 100 (em2820/em2840) [2304:0207,2304:021a] |
11 | 10 -> Hauppauge WinTV HVR 900 (em2880) [2040:6500] | 11 | 10 -> Hauppauge WinTV HVR 900 (em2880) [2040:6500,2040:6502] |
12 | 11 -> Terratec Hybrid XS (em2880) [0ccd:0042] | 12 | 11 -> Terratec Hybrid XS (em2880) [0ccd:0042] |
13 | 12 -> Kworld PVR TV 2800 RF (em2820/em2840) | 13 | 12 -> Kworld PVR TV 2800 RF (em2820/em2840) |
14 | 13 -> Terratec Prodigy XS (em2880) [0ccd:0047] | 14 | 13 -> Terratec Prodigy XS (em2880) [0ccd:0047] |
diff --git a/Documentation/video4linux/CARDLIST.saa7134 b/Documentation/video4linux/CARDLIST.saa7134 index 5d3b6b4d2515..0424901ebc78 100644 --- a/Documentation/video4linux/CARDLIST.saa7134 +++ b/Documentation/video4linux/CARDLIST.saa7134 | |||
@@ -92,9 +92,9 @@ | |||
92 | 91 -> AVerMedia A169 B [1461:7360] | 92 | 91 -> AVerMedia A169 B [1461:7360] |
93 | 92 -> AVerMedia A169 B1 [1461:6360] | 93 | 92 -> AVerMedia A169 B1 [1461:6360] |
94 | 93 -> Medion 7134 Bridge #2 [16be:0005] | 94 | 93 -> Medion 7134 Bridge #2 [16be:0005] |
95 | 94 -> LifeView FlyDVB-T Hybrid Cardbus/MSI TV @nywhere A/D NB [5168:3306,5168:3502,4e42:3502] | 95 | 94 -> LifeView FlyDVB-T Hybrid Cardbus/MSI TV @nywhere A/D NB [5168:3306,5168:3502,5168:3307,4e42:3502] |
96 | 95 -> LifeView FlyVIDEO3000 (NTSC) [5169:0138] | 96 | 95 -> LifeView FlyVIDEO3000 (NTSC) [5169:0138] |
97 | 96 -> Medion Md8800 Quadro [16be:0007,16be:0008] | 97 | 96 -> Medion Md8800 Quadro [16be:0007,16be:0008,16be:000d] |
98 | 97 -> LifeView FlyDVB-S /Acorp TV134DS [5168:0300,4e42:0300] | 98 | 97 -> LifeView FlyDVB-S /Acorp TV134DS [5168:0300,4e42:0300] |
99 | 98 -> Proteus Pro 2309 [0919:2003] | 99 | 98 -> Proteus Pro 2309 [0919:2003] |
100 | 99 -> AVerMedia TV Hybrid A16AR [1461:2c00] | 100 | 99 -> AVerMedia TV Hybrid A16AR [1461:2c00] |
@@ -129,3 +129,5 @@ | |||
129 | 128 -> Beholder BeholdTV Columbus TVFM [0000:5201] | 129 | 128 -> Beholder BeholdTV Columbus TVFM [0000:5201] |
130 | 129 -> Beholder BeholdTV 607 / BeholdTV 609 [5ace:6070,5ace:6071,5ace:6072,5ace:6073,5ace:6090,5ace:6091,5ace:6092,5ace:6093] | 130 | 129 -> Beholder BeholdTV 607 / BeholdTV 609 [5ace:6070,5ace:6071,5ace:6072,5ace:6073,5ace:6090,5ace:6091,5ace:6092,5ace:6093] |
131 | 130 -> Beholder BeholdTV M6 / BeholdTV M6 Extra [5ace:6190,5ace:6193] | 131 | 130 -> Beholder BeholdTV M6 / BeholdTV M6 Extra [5ace:6190,5ace:6193] |
132 | 131 -> Twinhan Hybrid DTV-DVB 3056 PCI [1822:0022] | ||
133 | 132 -> Genius TVGO AM11MCE | ||
diff --git a/Documentation/video4linux/zr364xx.txt b/Documentation/video4linux/zr364xx.txt index 4d9a0c33f2fd..5c81e3ae6458 100644 --- a/Documentation/video4linux/zr364xx.txt +++ b/Documentation/video4linux/zr364xx.txt | |||
@@ -25,7 +25,7 @@ modprobe zr364xx debug=X mode=Y | |||
25 | - debug : set to 1 to enable verbose debug messages | 25 | - debug : set to 1 to enable verbose debug messages |
26 | - mode : 0 = 320x240, 1 = 160x120, 2 = 640x480 | 26 | - mode : 0 = 320x240, 1 = 160x120, 2 = 640x480 |
27 | You can then use the camera with V4L2 compatible applications, for example Ekiga. | 27 | You can then use the camera with V4L2 compatible applications, for example Ekiga. |
28 | To capture a single image, try this: dd if=/dev/video0 of=test.jpg bs=1 count=1 | 28 | To capture a single image, try this: dd if=/dev/video0 of=test.jpg bs=1M count=1 |
29 | 29 | ||
30 | links : | 30 | links : |
31 | http://mxhaard.free.fr/ (support for many others cams including some Aiptek PocketDV) | 31 | http://mxhaard.free.fr/ (support for many others cams including some Aiptek PocketDV) |
@@ -63,3 +63,5 @@ Vendor Product Distributor Model | |||
63 | 0x06d6 0x0034 Trust Powerc@m 750 | 63 | 0x06d6 0x0034 Trust Powerc@m 750 |
64 | 0x0a17 0x0062 Pentax Optio 50L | 64 | 0x0a17 0x0062 Pentax Optio 50L |
65 | 0x06d6 0x003b Trust Powerc@m 970Z | 65 | 0x06d6 0x003b Trust Powerc@m 970Z |
66 | 0x0a17 0x004e Pentax Optio 50 | ||
67 | 0x041e 0x405d Creative DiVi CAM 516 | ||