diff options
Diffstat (limited to 'Documentation')
21 files changed, 144 insertions, 140 deletions
diff --git a/Documentation/ABI/testing/sysfs-ibft b/Documentation/ABI/testing/sysfs-ibft index c2b7d1154bec..cac3930bdb04 100644 --- a/Documentation/ABI/testing/sysfs-ibft +++ b/Documentation/ABI/testing/sysfs-ibft | |||
@@ -20,4 +20,4 @@ Date: November 2007 | |||
20 | Contact: Konrad Rzeszutek <ketuzsezr@darnok.org> | 20 | Contact: Konrad Rzeszutek <ketuzsezr@darnok.org> |
21 | Description: The /sys/firmware/ibft/ethernetX directory will contain | 21 | Description: The /sys/firmware/ibft/ethernetX directory will contain |
22 | files that expose the iSCSI Boot Firmware Table NIC data. | 22 | files that expose the iSCSI Boot Firmware Table NIC data. |
23 | This can this can the IP address, MAC, and gateway of the NIC. | 23 | Usually this contains the IP address, MAC, and gateway of the NIC. |
diff --git a/Documentation/DocBook/media/Makefile b/Documentation/DocBook/media/Makefile index df2962d9e11e..8bf7c6191296 100644 --- a/Documentation/DocBook/media/Makefile +++ b/Documentation/DocBook/media/Makefile | |||
@@ -25,7 +25,7 @@ GENFILES := $(addprefix $(MEDIA_OBJ_DIR)/, $(MEDIA_TEMP)) | |||
25 | PHONY += cleanmediadocs | 25 | PHONY += cleanmediadocs |
26 | 26 | ||
27 | cleanmediadocs: | 27 | cleanmediadocs: |
28 | -@rm `find $(MEDIA_OBJ_DIR) -type l` $(GENFILES) $(OBJIMGFILES) 2>/dev/null | 28 | -@rm -f `find $(MEDIA_OBJ_DIR) -type l` $(GENFILES) $(OBJIMGFILES) 2>/dev/null |
29 | 29 | ||
30 | $(obj)/media_api.xml: $(GENFILES) FORCE | 30 | $(obj)/media_api.xml: $(GENFILES) FORCE |
31 | 31 | ||
diff --git a/Documentation/DocBook/media/v4l/compat.xml b/Documentation/DocBook/media/v4l/compat.xml index 07ffc76553ba..0a2debfa68f6 100644 --- a/Documentation/DocBook/media/v4l/compat.xml +++ b/Documentation/DocBook/media/v4l/compat.xml | |||
@@ -2566,6 +2566,10 @@ fields changed from _s32 to _u32. | |||
2566 | <para>Added compound control types and &VIDIOC-QUERY-EXT-CTRL;. | 2566 | <para>Added compound control types and &VIDIOC-QUERY-EXT-CTRL;. |
2567 | </para> | 2567 | </para> |
2568 | </listitem> | 2568 | </listitem> |
2569 | </orderedlist> | ||
2570 | </section> | ||
2571 | |||
2572 | <section> | ||
2569 | <title>V4L2 in Linux 3.18</title> | 2573 | <title>V4L2 in Linux 3.18</title> |
2570 | <orderedlist> | 2574 | <orderedlist> |
2571 | <listitem> | 2575 | <listitem> |
diff --git a/Documentation/HOWTO b/Documentation/HOWTO index 57cf5efb044d..93aa8604630e 100644 --- a/Documentation/HOWTO +++ b/Documentation/HOWTO | |||
@@ -324,7 +324,6 @@ tree, they need to be integration-tested. For this purpose, a special | |||
324 | testing repository exists into which virtually all subsystem trees are | 324 | testing repository exists into which virtually all subsystem trees are |
325 | pulled on an almost daily basis: | 325 | pulled on an almost daily basis: |
326 | http://git.kernel.org/?p=linux/kernel/git/next/linux-next.git | 326 | http://git.kernel.org/?p=linux/kernel/git/next/linux-next.git |
327 | http://linux.f-seidel.de/linux-next/pmwiki/ | ||
328 | 327 | ||
329 | This way, the -next kernel gives a summary outlook onto what will be | 328 | This way, the -next kernel gives a summary outlook onto what will be |
330 | expected to go into the mainline kernel at the next merge period. | 329 | expected to go into the mainline kernel at the next merge period. |
diff --git a/Documentation/SubmittingPatches b/Documentation/SubmittingPatches index 482c74947de0..1fa1caa198eb 100644 --- a/Documentation/SubmittingPatches +++ b/Documentation/SubmittingPatches | |||
@@ -483,12 +483,10 @@ have been included in the discussion | |||
483 | 483 | ||
484 | 14) Using Reported-by:, Tested-by:, Reviewed-by:, Suggested-by: and Fixes: | 484 | 14) Using Reported-by:, Tested-by:, Reviewed-by:, Suggested-by: and Fixes: |
485 | 485 | ||
486 | If this patch fixes a problem reported by somebody else, consider adding a | 486 | The Reported-by tag gives credit to people who find bugs and report them and it |
487 | Reported-by: tag to credit the reporter for their contribution. Please | 487 | hopefully inspires them to help us again in the future. Please note that if |
488 | note that this tag should not be added without the reporter's permission, | 488 | the bug was reported in private, then ask for permission first before using the |
489 | especially if the problem was not reported in a public forum. That said, | 489 | Reported-by tag. |
490 | if we diligently credit our bug reporters, they will, hopefully, be | ||
491 | inspired to help us again in the future. | ||
492 | 490 | ||
493 | A Tested-by: tag indicates that the patch has been successfully tested (in | 491 | A Tested-by: tag indicates that the patch has been successfully tested (in |
494 | some environment) by the person named. This tag informs maintainers that | 492 | some environment) by the person named. This tag informs maintainers that |
diff --git a/Documentation/development-process/2.Process b/Documentation/development-process/2.Process index 2e0617936e8f..c24e156a6118 100644 --- a/Documentation/development-process/2.Process +++ b/Documentation/development-process/2.Process | |||
@@ -289,10 +289,6 @@ lists when they are assembled; they can be downloaded from: | |||
289 | 289 | ||
290 | http://www.kernel.org/pub/linux/kernel/next/ | 290 | http://www.kernel.org/pub/linux/kernel/next/ |
291 | 291 | ||
292 | Some information about linux-next has been gathered at: | ||
293 | |||
294 | http://linux.f-seidel.de/linux-next/pmwiki/ | ||
295 | |||
296 | Linux-next has become an integral part of the kernel development process; | 292 | Linux-next has become an integral part of the kernel development process; |
297 | all patches merged during a given merge window should really have found | 293 | all patches merged during a given merge window should really have found |
298 | their way into linux-next some time before the merge window opens. | 294 | their way into linux-next some time before the merge window opens. |
diff --git a/Documentation/development-process/8.Conclusion b/Documentation/development-process/8.Conclusion index 1990ab4b4949..caef69022e9c 100644 --- a/Documentation/development-process/8.Conclusion +++ b/Documentation/development-process/8.Conclusion | |||
@@ -22,10 +22,6 @@ Beyond that, a valuable resource for kernel developers is: | |||
22 | 22 | ||
23 | http://kernelnewbies.org/ | 23 | http://kernelnewbies.org/ |
24 | 24 | ||
25 | Information about the linux-next tree gathers at: | ||
26 | |||
27 | http://linux.f-seidel.de/linux-next/pmwiki/ | ||
28 | |||
29 | And, of course, one should not forget http://kernel.org/, the definitive | 25 | And, of course, one should not forget http://kernel.org/, the definitive |
30 | location for kernel release information. | 26 | location for kernel release information. |
31 | 27 | ||
diff --git a/Documentation/devicetree/bindings/net/smsc-lan91c111.txt b/Documentation/devicetree/bindings/net/smsc-lan91c111.txt index 0f8487b88822..e77e167593db 100644 --- a/Documentation/devicetree/bindings/net/smsc-lan91c111.txt +++ b/Documentation/devicetree/bindings/net/smsc-lan91c111.txt | |||
@@ -11,3 +11,5 @@ Optional properties: | |||
11 | are supported on the device. Valid value for SMSC LAN91c111 are | 11 | are supported on the device. Valid value for SMSC LAN91c111 are |
12 | 1, 2 or 4. If it's omitted or invalid, the size would be 2 meaning | 12 | 1, 2 or 4. If it's omitted or invalid, the size would be 2 meaning |
13 | 16-bit access only. | 13 | 16-bit access only. |
14 | - power-gpios: GPIO to control the PWRDWN pin | ||
15 | - reset-gpios: GPIO to control the RESET pin | ||
diff --git a/Documentation/devicetree/bindings/sound/sgtl5000.txt b/Documentation/devicetree/bindings/sound/sgtl5000.txt index 955df60a118c..d556dcb8816b 100644 --- a/Documentation/devicetree/bindings/sound/sgtl5000.txt +++ b/Documentation/devicetree/bindings/sound/sgtl5000.txt | |||
@@ -7,10 +7,20 @@ Required properties: | |||
7 | 7 | ||
8 | - clocks : the clock provider of SYS_MCLK | 8 | - clocks : the clock provider of SYS_MCLK |
9 | 9 | ||
10 | - VDDA-supply : the regulator provider of VDDA | ||
11 | |||
12 | - VDDIO-supply: the regulator provider of VDDIO | ||
13 | |||
14 | Optional properties: | ||
15 | |||
16 | - VDDD-supply : the regulator provider of VDDD | ||
17 | |||
10 | Example: | 18 | Example: |
11 | 19 | ||
12 | codec: sgtl5000@0a { | 20 | codec: sgtl5000@0a { |
13 | compatible = "fsl,sgtl5000"; | 21 | compatible = "fsl,sgtl5000"; |
14 | reg = <0x0a>; | 22 | reg = <0x0a>; |
15 | clocks = <&clks 150>; | 23 | clocks = <&clks 150>; |
24 | VDDA-supply = <®_3p3v>; | ||
25 | VDDIO-supply = <®_3p3v>; | ||
16 | }; | 26 | }; |
diff --git a/Documentation/devicetree/bindings/submitting-patches.txt b/Documentation/devicetree/bindings/submitting-patches.txt index 042a0273b8ba..b7ba01ad1426 100644 --- a/Documentation/devicetree/bindings/submitting-patches.txt +++ b/Documentation/devicetree/bindings/submitting-patches.txt | |||
@@ -12,6 +12,9 @@ I. For patch submitters | |||
12 | 12 | ||
13 | devicetree@vger.kernel.org | 13 | devicetree@vger.kernel.org |
14 | 14 | ||
15 | 3) The Documentation/ portion of the patch should come in the series before | ||
16 | the code implementing the binding. | ||
17 | |||
15 | II. For kernel maintainers | 18 | II. For kernel maintainers |
16 | 19 | ||
17 | 1) If you aren't comfortable reviewing a given binding, reply to it and ask | 20 | 1) If you aren't comfortable reviewing a given binding, reply to it and ask |
diff --git a/Documentation/ia64/kvm.txt b/Documentation/ia64/kvm.txt deleted file mode 100644 index ffb5c80bec3e..000000000000 --- a/Documentation/ia64/kvm.txt +++ /dev/null | |||
@@ -1,83 +0,0 @@ | |||
1 | Currently, kvm module is in EXPERIMENTAL stage on IA64. This means that | ||
2 | interfaces are not stable enough to use. So, please don't run critical | ||
3 | applications in virtual machine. | ||
4 | We will try our best to improve it in future versions! | ||
5 | |||
6 | Guide: How to boot up guests on kvm/ia64 | ||
7 | |||
8 | This guide is to describe how to enable kvm support for IA-64 systems. | ||
9 | |||
10 | 1. Get the kvm source from git.kernel.org. | ||
11 | Userspace source: | ||
12 | git clone git://git.kernel.org/pub/scm/virt/kvm/kvm-userspace.git | ||
13 | Kernel Source: | ||
14 | git clone git://git.kernel.org/pub/scm/linux/kernel/git/xiantao/kvm-ia64.git | ||
15 | |||
16 | 2. Compile the source code. | ||
17 | 2.1 Compile userspace code: | ||
18 | (1)cd ./kvm-userspace | ||
19 | (2)./configure | ||
20 | (3)cd kernel | ||
21 | (4)make sync LINUX= $kernel_dir (kernel_dir is the directory of kernel source.) | ||
22 | (5)cd .. | ||
23 | (6)make qemu | ||
24 | (7)cd qemu; make install | ||
25 | |||
26 | 2.2 Compile kernel source code: | ||
27 | (1) cd ./$kernel_dir | ||
28 | (2) Make menuconfig | ||
29 | (3) Enter into virtualization option, and choose kvm. | ||
30 | (4) make | ||
31 | (5) Once (4) done, make modules_install | ||
32 | (6) Make initrd, and use new kernel to reboot up host machine. | ||
33 | (7) Once (6) done, cd $kernel_dir/arch/ia64/kvm | ||
34 | (8) insmod kvm.ko; insmod kvm-intel.ko | ||
35 | |||
36 | Note: For step 2, please make sure that host page size == TARGET_PAGE_SIZE of qemu, otherwise, may fail. | ||
37 | |||
38 | 3. Get Guest Firmware named as Flash.fd, and put it under right place: | ||
39 | (1) If you have the guest firmware (binary) released by Intel Corp for Xen, use it directly. | ||
40 | |||
41 | (2) If you have no firmware at hand, Please download its source from | ||
42 | hg clone http://xenbits.xensource.com/ext/efi-vfirmware.hg | ||
43 | you can get the firmware's binary in the directory of efi-vfirmware.hg/binaries. | ||
44 | |||
45 | (3) Rename the firmware you owned to Flash.fd, and copy it to /usr/local/share/qemu | ||
46 | |||
47 | 4. Boot up Linux or Windows guests: | ||
48 | 4.1 Create or install a image for guest boot. If you have xen experience, it should be easy. | ||
49 | |||
50 | 4.2 Boot up guests use the following command. | ||
51 | /usr/local/bin/qemu-system-ia64 -smp xx -m 512 -hda $your_image | ||
52 | (xx is the number of virtual processors for the guest, now the maximum value is 4) | ||
53 | |||
54 | 5. Known possible issue on some platforms with old Firmware. | ||
55 | |||
56 | In the event of strange host crash issues, try to solve it through either of the following ways: | ||
57 | |||
58 | (1): Upgrade your Firmware to the latest one. | ||
59 | |||
60 | (2): Applying the below patch to kernel source. | ||
61 | diff --git a/arch/ia64/kernel/pal.S b/arch/ia64/kernel/pal.S | ||
62 | index 0b53344..f02b0f7 100644 | ||
63 | --- a/arch/ia64/kernel/pal.S | ||
64 | +++ b/arch/ia64/kernel/pal.S | ||
65 | @@ -84,7 +84,8 @@ GLOBAL_ENTRY(ia64_pal_call_static) | ||
66 | mov ar.pfs = loc1 | ||
67 | mov rp = loc0 | ||
68 | ;; | ||
69 | - srlz.d // serialize restoration of psr.l | ||
70 | + srlz.i // serialize restoration of psr.l | ||
71 | + ;; | ||
72 | br.ret.sptk.many b0 | ||
73 | END(ia64_pal_call_static) | ||
74 | |||
75 | 6. Bug report: | ||
76 | If you found any issues when use kvm/ia64, Please post the bug info to kvm-ia64-devel mailing list. | ||
77 | https://lists.sourceforge.net/lists/listinfo/kvm-ia64-devel/ | ||
78 | |||
79 | Thanks for your interest! Let's work together, and make kvm/ia64 stronger and stronger! | ||
80 | |||
81 | |||
82 | Xiantao Zhang <xiantao.zhang@intel.com> | ||
83 | 2008.3.10 | ||
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt index 74339c57b914..4c81a860cc2b 100644 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt | |||
@@ -1264,7 +1264,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
1264 | i8042.noloop [HW] Disable the AUX Loopback command while probing | 1264 | i8042.noloop [HW] Disable the AUX Loopback command while probing |
1265 | for the AUX port | 1265 | for the AUX port |
1266 | i8042.nomux [HW] Don't check presence of an active multiplexing | 1266 | i8042.nomux [HW] Don't check presence of an active multiplexing |
1267 | controller. Default: true. | 1267 | controller |
1268 | i8042.nopnp [HW] Don't use ACPIPnP / PnPBIOS to discover KBD/AUX | 1268 | i8042.nopnp [HW] Don't use ACPIPnP / PnPBIOS to discover KBD/AUX |
1269 | controllers | 1269 | controllers |
1270 | i8042.notimeout [HW] Ignore timeout condition signalled by controller | 1270 | i8042.notimeout [HW] Ignore timeout condition signalled by controller |
@@ -1307,6 +1307,18 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
1307 | .cdrom .chs .ignore_cable are additional options | 1307 | .cdrom .chs .ignore_cable are additional options |
1308 | See Documentation/ide/ide.txt. | 1308 | See Documentation/ide/ide.txt. |
1309 | 1309 | ||
1310 | ide-generic.probe-mask= [HW] (E)IDE subsystem | ||
1311 | Format: <int> | ||
1312 | Probe mask for legacy ISA IDE ports. Depending on | ||
1313 | platform up to 6 ports are supported, enabled by | ||
1314 | setting corresponding bits in the mask to 1. The | ||
1315 | default value is 0x0, which has a special meaning. | ||
1316 | On systems that have PCI, it triggers scanning the | ||
1317 | PCI bus for the first and the second port, which | ||
1318 | are then probed. On systems without PCI the value | ||
1319 | of 0x0 enables probing the two first ports as if it | ||
1320 | was 0x3. | ||
1321 | |||
1310 | ide-pci-generic.all-generic-ide [HW] (E)IDE subsystem | 1322 | ide-pci-generic.all-generic-ide [HW] (E)IDE subsystem |
1311 | Claim all unknown PCI IDE storage controllers. | 1323 | Claim all unknown PCI IDE storage controllers. |
1312 | 1324 | ||
@@ -1587,6 +1599,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted. | |||
1587 | kmemleak= [KNL] Boot-time kmemleak enable/disable | 1599 | kmemleak= [KNL] Boot-time kmemleak enable/disable |
1588 | Valid arguments: on, off | 1600 | Valid arguments: on, off |
1589 | Default: on | 1601 | Default: on |
1602 | Built with CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y, | ||
1603 | the default is off. | ||
1590 | 1604 | ||
1591 | kmemcheck= [X86] Boot-time kmemcheck enable/disable/one-shot mode | 1605 | kmemcheck= [X86] Boot-time kmemcheck enable/disable/one-shot mode |
1592 | Valid arguments: 0, 1, 2 | 1606 | Valid arguments: 0, 1, 2 |
diff --git a/Documentation/kmemleak.txt b/Documentation/kmemleak.txt index f4f033c8d856..45e777f4e41d 100644 --- a/Documentation/kmemleak.txt +++ b/Documentation/kmemleak.txt | |||
@@ -62,6 +62,10 @@ Memory may be allocated or freed before kmemleak is initialised and | |||
62 | these actions are stored in an early log buffer. The size of this buffer | 62 | these actions are stored in an early log buffer. The size of this buffer |
63 | is configured via the CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE option. | 63 | is configured via the CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE option. |
64 | 64 | ||
65 | If CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF are enabled, the kmemleak is | ||
66 | disabled by default. Passing "kmemleak=on" on the kernel command | ||
67 | line enables the function. | ||
68 | |||
65 | Basic Algorithm | 69 | Basic Algorithm |
66 | --------------- | 70 | --------------- |
67 | 71 | ||
diff --git a/Documentation/prctl/Makefile b/Documentation/prctl/Makefile index 3e3232dcb2b8..2948b7b124b9 100644 --- a/Documentation/prctl/Makefile +++ b/Documentation/prctl/Makefile | |||
@@ -1,5 +1,5 @@ | |||
1 | # List of programs to build | 1 | # List of programs to build |
2 | hostprogs-y := disable-tsc-ctxt-sw-stress-test disable-tsc-on-off-stress-test disable-tsc-test | 2 | hostprogs-$(CONFIG_X86) := disable-tsc-ctxt-sw-stress-test disable-tsc-on-off-stress-test disable-tsc-test |
3 | # Tell kbuild to always build the programs | 3 | # Tell kbuild to always build the programs |
4 | always := $(hostprogs-y) | 4 | always := $(hostprogs-y) |
5 | 5 | ||
diff --git a/Documentation/ptp/testptp.mk b/Documentation/ptp/testptp.mk new file mode 100644 index 000000000000..4ef2d9755421 --- /dev/null +++ b/Documentation/ptp/testptp.mk | |||
@@ -0,0 +1,33 @@ | |||
1 | # PTP 1588 clock support - User space test program | ||
2 | # | ||
3 | # Copyright (C) 2010 OMICRON electronics GmbH | ||
4 | # | ||
5 | # This program is free software; you can redistribute it and/or modify | ||
6 | # it under the terms of the GNU General Public License as published by | ||
7 | # the Free Software Foundation; either version 2 of the License, or | ||
8 | # (at your option) any later version. | ||
9 | # | ||
10 | # This program is distributed in the hope that it will be useful, | ||
11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | # GNU General Public License for more details. | ||
14 | # | ||
15 | # You should have received a copy of the GNU General Public License | ||
16 | # along with this program; if not, write to the Free Software | ||
17 | # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||
18 | |||
19 | CC = $(CROSS_COMPILE)gcc | ||
20 | INC = -I$(KBUILD_OUTPUT)/usr/include | ||
21 | CFLAGS = -Wall $(INC) | ||
22 | LDLIBS = -lrt | ||
23 | PROGS = testptp | ||
24 | |||
25 | all: $(PROGS) | ||
26 | |||
27 | testptp: testptp.o | ||
28 | |||
29 | clean: | ||
30 | rm -f testptp.o | ||
31 | |||
32 | distclean: clean | ||
33 | rm -f $(PROGS) | ||
diff --git a/Documentation/vDSO/Makefile b/Documentation/vDSO/Makefile index 2b99e57207c1..ee075c3d2124 100644 --- a/Documentation/vDSO/Makefile +++ b/Documentation/vDSO/Makefile | |||
@@ -10,3 +10,6 @@ always := $(hostprogs-y) | |||
10 | HOSTCFLAGS := -I$(objtree)/usr/include -std=gnu99 | 10 | HOSTCFLAGS := -I$(objtree)/usr/include -std=gnu99 |
11 | HOSTCFLAGS_vdso_standalone_test_x86.o := -fno-asynchronous-unwind-tables -fno-stack-protector | 11 | HOSTCFLAGS_vdso_standalone_test_x86.o := -fno-asynchronous-unwind-tables -fno-stack-protector |
12 | HOSTLOADLIBES_vdso_standalone_test_x86 := -nostdlib | 12 | HOSTLOADLIBES_vdso_standalone_test_x86 := -nostdlib |
13 | ifeq ($(CONFIG_X86_32),y) | ||
14 | HOSTLOADLIBES_vdso_standalone_test_x86 += -lgcc_s | ||
15 | endif | ||
diff --git a/Documentation/vDSO/vdso_standalone_test_x86.c b/Documentation/vDSO/vdso_standalone_test_x86.c index d46240265c50..93b0ebf8cc38 100644 --- a/Documentation/vDSO/vdso_standalone_test_x86.c +++ b/Documentation/vDSO/vdso_standalone_test_x86.c | |||
@@ -63,7 +63,7 @@ static inline void linux_exit(int code) | |||
63 | x86_syscall3(__NR_exit, code, 0, 0); | 63 | x86_syscall3(__NR_exit, code, 0, 0); |
64 | } | 64 | } |
65 | 65 | ||
66 | void to_base10(char *lastdig, uint64_t n) | 66 | void to_base10(char *lastdig, time_t n) |
67 | { | 67 | { |
68 | while (n) { | 68 | while (n) { |
69 | *lastdig = (n % 10) + '0'; | 69 | *lastdig = (n % 10) + '0'; |
diff --git a/Documentation/virtual/kvm/api.txt b/Documentation/virtual/kvm/api.txt index 228f9cf5a5b5..0007fef4ed81 100644 --- a/Documentation/virtual/kvm/api.txt +++ b/Documentation/virtual/kvm/api.txt | |||
@@ -68,9 +68,12 @@ description: | |||
68 | 68 | ||
69 | Capability: which KVM extension provides this ioctl. Can be 'basic', | 69 | Capability: which KVM extension provides this ioctl. Can be 'basic', |
70 | which means that is will be provided by any kernel that supports | 70 | which means that is will be provided by any kernel that supports |
71 | API version 12 (see section 4.1), or a KVM_CAP_xyz constant, which | 71 | API version 12 (see section 4.1), a KVM_CAP_xyz constant, which |
72 | means availability needs to be checked with KVM_CHECK_EXTENSION | 72 | means availability needs to be checked with KVM_CHECK_EXTENSION |
73 | (see section 4.4). | 73 | (see section 4.4), or 'none' which means that while not all kernels |
74 | support this ioctl, there's no capability bit to check its | ||
75 | availability: for kernels that don't support the ioctl, | ||
76 | the ioctl returns -ENOTTY. | ||
74 | 77 | ||
75 | Architectures: which instruction set architectures provide this ioctl. | 78 | Architectures: which instruction set architectures provide this ioctl. |
76 | x86 includes both i386 and x86_64. | 79 | x86 includes both i386 and x86_64. |
@@ -604,7 +607,7 @@ struct kvm_fpu { | |||
604 | 4.24 KVM_CREATE_IRQCHIP | 607 | 4.24 KVM_CREATE_IRQCHIP |
605 | 608 | ||
606 | Capability: KVM_CAP_IRQCHIP, KVM_CAP_S390_IRQCHIP (s390) | 609 | Capability: KVM_CAP_IRQCHIP, KVM_CAP_S390_IRQCHIP (s390) |
607 | Architectures: x86, ia64, ARM, arm64, s390 | 610 | Architectures: x86, ARM, arm64, s390 |
608 | Type: vm ioctl | 611 | Type: vm ioctl |
609 | Parameters: none | 612 | Parameters: none |
610 | Returns: 0 on success, -1 on error | 613 | Returns: 0 on success, -1 on error |
@@ -612,7 +615,7 @@ Returns: 0 on success, -1 on error | |||
612 | Creates an interrupt controller model in the kernel. On x86, creates a virtual | 615 | Creates an interrupt controller model in the kernel. On x86, creates a virtual |
613 | ioapic, a virtual PIC (two PICs, nested), and sets up future vcpus to have a | 616 | ioapic, a virtual PIC (two PICs, nested), and sets up future vcpus to have a |
614 | local APIC. IRQ routing for GSIs 0-15 is set to both PIC and IOAPIC; GSI 16-23 | 617 | local APIC. IRQ routing for GSIs 0-15 is set to both PIC and IOAPIC; GSI 16-23 |
615 | only go to the IOAPIC. On ia64, a IOSAPIC is created. On ARM/arm64, a GIC is | 618 | only go to the IOAPIC. On ARM/arm64, a GIC is |
616 | created. On s390, a dummy irq routing table is created. | 619 | created. On s390, a dummy irq routing table is created. |
617 | 620 | ||
618 | Note that on s390 the KVM_CAP_S390_IRQCHIP vm capability needs to be enabled | 621 | Note that on s390 the KVM_CAP_S390_IRQCHIP vm capability needs to be enabled |
@@ -622,7 +625,7 @@ before KVM_CREATE_IRQCHIP can be used. | |||
622 | 4.25 KVM_IRQ_LINE | 625 | 4.25 KVM_IRQ_LINE |
623 | 626 | ||
624 | Capability: KVM_CAP_IRQCHIP | 627 | Capability: KVM_CAP_IRQCHIP |
625 | Architectures: x86, ia64, arm, arm64 | 628 | Architectures: x86, arm, arm64 |
626 | Type: vm ioctl | 629 | Type: vm ioctl |
627 | Parameters: struct kvm_irq_level | 630 | Parameters: struct kvm_irq_level |
628 | Returns: 0 on success, -1 on error | 631 | Returns: 0 on success, -1 on error |
@@ -676,7 +679,7 @@ struct kvm_irq_level { | |||
676 | 4.26 KVM_GET_IRQCHIP | 679 | 4.26 KVM_GET_IRQCHIP |
677 | 680 | ||
678 | Capability: KVM_CAP_IRQCHIP | 681 | Capability: KVM_CAP_IRQCHIP |
679 | Architectures: x86, ia64 | 682 | Architectures: x86 |
680 | Type: vm ioctl | 683 | Type: vm ioctl |
681 | Parameters: struct kvm_irqchip (in/out) | 684 | Parameters: struct kvm_irqchip (in/out) |
682 | Returns: 0 on success, -1 on error | 685 | Returns: 0 on success, -1 on error |
@@ -698,7 +701,7 @@ struct kvm_irqchip { | |||
698 | 4.27 KVM_SET_IRQCHIP | 701 | 4.27 KVM_SET_IRQCHIP |
699 | 702 | ||
700 | Capability: KVM_CAP_IRQCHIP | 703 | Capability: KVM_CAP_IRQCHIP |
701 | Architectures: x86, ia64 | 704 | Architectures: x86 |
702 | Type: vm ioctl | 705 | Type: vm ioctl |
703 | Parameters: struct kvm_irqchip (in) | 706 | Parameters: struct kvm_irqchip (in) |
704 | Returns: 0 on success, -1 on error | 707 | Returns: 0 on success, -1 on error |
@@ -991,7 +994,7 @@ for vm-wide capabilities. | |||
991 | 4.38 KVM_GET_MP_STATE | 994 | 4.38 KVM_GET_MP_STATE |
992 | 995 | ||
993 | Capability: KVM_CAP_MP_STATE | 996 | Capability: KVM_CAP_MP_STATE |
994 | Architectures: x86, ia64, s390 | 997 | Architectures: x86, s390 |
995 | Type: vcpu ioctl | 998 | Type: vcpu ioctl |
996 | Parameters: struct kvm_mp_state (out) | 999 | Parameters: struct kvm_mp_state (out) |
997 | Returns: 0 on success; -1 on error | 1000 | Returns: 0 on success; -1 on error |
@@ -1005,16 +1008,15 @@ uniprocessor guests). | |||
1005 | 1008 | ||
1006 | Possible values are: | 1009 | Possible values are: |
1007 | 1010 | ||
1008 | - KVM_MP_STATE_RUNNABLE: the vcpu is currently running [x86, ia64] | 1011 | - KVM_MP_STATE_RUNNABLE: the vcpu is currently running [x86] |
1009 | - KVM_MP_STATE_UNINITIALIZED: the vcpu is an application processor (AP) | 1012 | - KVM_MP_STATE_UNINITIALIZED: the vcpu is an application processor (AP) |
1010 | which has not yet received an INIT signal [x86, | 1013 | which has not yet received an INIT signal [x86] |
1011 | ia64] | ||
1012 | - KVM_MP_STATE_INIT_RECEIVED: the vcpu has received an INIT signal, and is | 1014 | - KVM_MP_STATE_INIT_RECEIVED: the vcpu has received an INIT signal, and is |
1013 | now ready for a SIPI [x86, ia64] | 1015 | now ready for a SIPI [x86] |
1014 | - KVM_MP_STATE_HALTED: the vcpu has executed a HLT instruction and | 1016 | - KVM_MP_STATE_HALTED: the vcpu has executed a HLT instruction and |
1015 | is waiting for an interrupt [x86, ia64] | 1017 | is waiting for an interrupt [x86] |
1016 | - KVM_MP_STATE_SIPI_RECEIVED: the vcpu has just received a SIPI (vector | 1018 | - KVM_MP_STATE_SIPI_RECEIVED: the vcpu has just received a SIPI (vector |
1017 | accessible via KVM_GET_VCPU_EVENTS) [x86, ia64] | 1019 | accessible via KVM_GET_VCPU_EVENTS) [x86] |
1018 | - KVM_MP_STATE_STOPPED: the vcpu is stopped [s390] | 1020 | - KVM_MP_STATE_STOPPED: the vcpu is stopped [s390] |
1019 | - KVM_MP_STATE_CHECK_STOP: the vcpu is in a special error state [s390] | 1021 | - KVM_MP_STATE_CHECK_STOP: the vcpu is in a special error state [s390] |
1020 | - KVM_MP_STATE_OPERATING: the vcpu is operating (running or halted) | 1022 | - KVM_MP_STATE_OPERATING: the vcpu is operating (running or halted) |
@@ -1022,7 +1024,7 @@ Possible values are: | |||
1022 | - KVM_MP_STATE_LOAD: the vcpu is in a special load/startup state | 1024 | - KVM_MP_STATE_LOAD: the vcpu is in a special load/startup state |
1023 | [s390] | 1025 | [s390] |
1024 | 1026 | ||
1025 | On x86 and ia64, this ioctl is only useful after KVM_CREATE_IRQCHIP. Without an | 1027 | On x86, this ioctl is only useful after KVM_CREATE_IRQCHIP. Without an |
1026 | in-kernel irqchip, the multiprocessing state must be maintained by userspace on | 1028 | in-kernel irqchip, the multiprocessing state must be maintained by userspace on |
1027 | these architectures. | 1029 | these architectures. |
1028 | 1030 | ||
@@ -1030,7 +1032,7 @@ these architectures. | |||
1030 | 4.39 KVM_SET_MP_STATE | 1032 | 4.39 KVM_SET_MP_STATE |
1031 | 1033 | ||
1032 | Capability: KVM_CAP_MP_STATE | 1034 | Capability: KVM_CAP_MP_STATE |
1033 | Architectures: x86, ia64, s390 | 1035 | Architectures: x86, s390 |
1034 | Type: vcpu ioctl | 1036 | Type: vcpu ioctl |
1035 | Parameters: struct kvm_mp_state (in) | 1037 | Parameters: struct kvm_mp_state (in) |
1036 | Returns: 0 on success; -1 on error | 1038 | Returns: 0 on success; -1 on error |
@@ -1038,7 +1040,7 @@ Returns: 0 on success; -1 on error | |||
1038 | Sets the vcpu's current "multiprocessing state"; see KVM_GET_MP_STATE for | 1040 | Sets the vcpu's current "multiprocessing state"; see KVM_GET_MP_STATE for |
1039 | arguments. | 1041 | arguments. |
1040 | 1042 | ||
1041 | On x86 and ia64, this ioctl is only useful after KVM_CREATE_IRQCHIP. Without an | 1043 | On x86, this ioctl is only useful after KVM_CREATE_IRQCHIP. Without an |
1042 | in-kernel irqchip, the multiprocessing state must be maintained by userspace on | 1044 | in-kernel irqchip, the multiprocessing state must be maintained by userspace on |
1043 | these architectures. | 1045 | these architectures. |
1044 | 1046 | ||
@@ -1065,7 +1067,7 @@ documentation when it pops into existence). | |||
1065 | 4.41 KVM_SET_BOOT_CPU_ID | 1067 | 4.41 KVM_SET_BOOT_CPU_ID |
1066 | 1068 | ||
1067 | Capability: KVM_CAP_SET_BOOT_CPU_ID | 1069 | Capability: KVM_CAP_SET_BOOT_CPU_ID |
1068 | Architectures: x86, ia64 | 1070 | Architectures: x86 |
1069 | Type: vm ioctl | 1071 | Type: vm ioctl |
1070 | Parameters: unsigned long vcpu_id | 1072 | Parameters: unsigned long vcpu_id |
1071 | Returns: 0 on success, -1 on error | 1073 | Returns: 0 on success, -1 on error |
@@ -1257,8 +1259,8 @@ The flags bitmap is defined as: | |||
1257 | 1259 | ||
1258 | 4.48 KVM_ASSIGN_PCI_DEVICE | 1260 | 4.48 KVM_ASSIGN_PCI_DEVICE |
1259 | 1261 | ||
1260 | Capability: KVM_CAP_DEVICE_ASSIGNMENT | 1262 | Capability: none |
1261 | Architectures: x86 ia64 | 1263 | Architectures: x86 |
1262 | Type: vm ioctl | 1264 | Type: vm ioctl |
1263 | Parameters: struct kvm_assigned_pci_dev (in) | 1265 | Parameters: struct kvm_assigned_pci_dev (in) |
1264 | Returns: 0 on success, -1 on error | 1266 | Returns: 0 on success, -1 on error |
@@ -1298,25 +1300,36 @@ Only PCI header type 0 devices with PCI BAR resources are supported by | |||
1298 | device assignment. The user requesting this ioctl must have read/write | 1300 | device assignment. The user requesting this ioctl must have read/write |
1299 | access to the PCI sysfs resource files associated with the device. | 1301 | access to the PCI sysfs resource files associated with the device. |
1300 | 1302 | ||
1303 | Errors: | ||
1304 | ENOTTY: kernel does not support this ioctl | ||
1305 | |||
1306 | Other error conditions may be defined by individual device types or | ||
1307 | have their standard meanings. | ||
1308 | |||
1301 | 1309 | ||
1302 | 4.49 KVM_DEASSIGN_PCI_DEVICE | 1310 | 4.49 KVM_DEASSIGN_PCI_DEVICE |
1303 | 1311 | ||
1304 | Capability: KVM_CAP_DEVICE_DEASSIGNMENT | 1312 | Capability: none |
1305 | Architectures: x86 ia64 | 1313 | Architectures: x86 |
1306 | Type: vm ioctl | 1314 | Type: vm ioctl |
1307 | Parameters: struct kvm_assigned_pci_dev (in) | 1315 | Parameters: struct kvm_assigned_pci_dev (in) |
1308 | Returns: 0 on success, -1 on error | 1316 | Returns: 0 on success, -1 on error |
1309 | 1317 | ||
1310 | Ends PCI device assignment, releasing all associated resources. | 1318 | Ends PCI device assignment, releasing all associated resources. |
1311 | 1319 | ||
1312 | See KVM_CAP_DEVICE_ASSIGNMENT for the data structure. Only assigned_dev_id is | 1320 | See KVM_ASSIGN_PCI_DEVICE for the data structure. Only assigned_dev_id is |
1313 | used in kvm_assigned_pci_dev to identify the device. | 1321 | used in kvm_assigned_pci_dev to identify the device. |
1314 | 1322 | ||
1323 | Errors: | ||
1324 | ENOTTY: kernel does not support this ioctl | ||
1325 | |||
1326 | Other error conditions may be defined by individual device types or | ||
1327 | have their standard meanings. | ||
1315 | 1328 | ||
1316 | 4.50 KVM_ASSIGN_DEV_IRQ | 1329 | 4.50 KVM_ASSIGN_DEV_IRQ |
1317 | 1330 | ||
1318 | Capability: KVM_CAP_ASSIGN_DEV_IRQ | 1331 | Capability: KVM_CAP_ASSIGN_DEV_IRQ |
1319 | Architectures: x86 ia64 | 1332 | Architectures: x86 |
1320 | Type: vm ioctl | 1333 | Type: vm ioctl |
1321 | Parameters: struct kvm_assigned_irq (in) | 1334 | Parameters: struct kvm_assigned_irq (in) |
1322 | Returns: 0 on success, -1 on error | 1335 | Returns: 0 on success, -1 on error |
@@ -1346,11 +1359,17 @@ The following flags are defined: | |||
1346 | It is not valid to specify multiple types per host or guest IRQ. However, the | 1359 | It is not valid to specify multiple types per host or guest IRQ. However, the |
1347 | IRQ type of host and guest can differ or can even be null. | 1360 | IRQ type of host and guest can differ or can even be null. |
1348 | 1361 | ||
1362 | Errors: | ||
1363 | ENOTTY: kernel does not support this ioctl | ||
1364 | |||
1365 | Other error conditions may be defined by individual device types or | ||
1366 | have their standard meanings. | ||
1367 | |||
1349 | 1368 | ||
1350 | 4.51 KVM_DEASSIGN_DEV_IRQ | 1369 | 4.51 KVM_DEASSIGN_DEV_IRQ |
1351 | 1370 | ||
1352 | Capability: KVM_CAP_ASSIGN_DEV_IRQ | 1371 | Capability: KVM_CAP_ASSIGN_DEV_IRQ |
1353 | Architectures: x86 ia64 | 1372 | Architectures: x86 |
1354 | Type: vm ioctl | 1373 | Type: vm ioctl |
1355 | Parameters: struct kvm_assigned_irq (in) | 1374 | Parameters: struct kvm_assigned_irq (in) |
1356 | Returns: 0 on success, -1 on error | 1375 | Returns: 0 on success, -1 on error |
@@ -1365,7 +1384,7 @@ KVM_ASSIGN_DEV_IRQ. Partial deassignment of host or guest IRQ is allowed. | |||
1365 | 4.52 KVM_SET_GSI_ROUTING | 1384 | 4.52 KVM_SET_GSI_ROUTING |
1366 | 1385 | ||
1367 | Capability: KVM_CAP_IRQ_ROUTING | 1386 | Capability: KVM_CAP_IRQ_ROUTING |
1368 | Architectures: x86 ia64 s390 | 1387 | Architectures: x86 s390 |
1369 | Type: vm ioctl | 1388 | Type: vm ioctl |
1370 | Parameters: struct kvm_irq_routing (in) | 1389 | Parameters: struct kvm_irq_routing (in) |
1371 | Returns: 0 on success, -1 on error | 1390 | Returns: 0 on success, -1 on error |
@@ -1423,8 +1442,8 @@ struct kvm_irq_routing_s390_adapter { | |||
1423 | 1442 | ||
1424 | 4.53 KVM_ASSIGN_SET_MSIX_NR | 1443 | 4.53 KVM_ASSIGN_SET_MSIX_NR |
1425 | 1444 | ||
1426 | Capability: KVM_CAP_DEVICE_MSIX | 1445 | Capability: none |
1427 | Architectures: x86 ia64 | 1446 | Architectures: x86 |
1428 | Type: vm ioctl | 1447 | Type: vm ioctl |
1429 | Parameters: struct kvm_assigned_msix_nr (in) | 1448 | Parameters: struct kvm_assigned_msix_nr (in) |
1430 | Returns: 0 on success, -1 on error | 1449 | Returns: 0 on success, -1 on error |
@@ -1445,8 +1464,8 @@ struct kvm_assigned_msix_nr { | |||
1445 | 1464 | ||
1446 | 4.54 KVM_ASSIGN_SET_MSIX_ENTRY | 1465 | 4.54 KVM_ASSIGN_SET_MSIX_ENTRY |
1447 | 1466 | ||
1448 | Capability: KVM_CAP_DEVICE_MSIX | 1467 | Capability: none |
1449 | Architectures: x86 ia64 | 1468 | Architectures: x86 |
1450 | Type: vm ioctl | 1469 | Type: vm ioctl |
1451 | Parameters: struct kvm_assigned_msix_entry (in) | 1470 | Parameters: struct kvm_assigned_msix_entry (in) |
1452 | Returns: 0 on success, -1 on error | 1471 | Returns: 0 on success, -1 on error |
@@ -1461,6 +1480,12 @@ struct kvm_assigned_msix_entry { | |||
1461 | __u16 padding[3]; | 1480 | __u16 padding[3]; |
1462 | }; | 1481 | }; |
1463 | 1482 | ||
1483 | Errors: | ||
1484 | ENOTTY: kernel does not support this ioctl | ||
1485 | |||
1486 | Other error conditions may be defined by individual device types or | ||
1487 | have their standard meanings. | ||
1488 | |||
1464 | 1489 | ||
1465 | 4.55 KVM_SET_TSC_KHZ | 1490 | 4.55 KVM_SET_TSC_KHZ |
1466 | 1491 | ||
diff --git a/Documentation/virtual/kvm/devices/vm.txt b/Documentation/virtual/kvm/devices/vm.txt index 0d16f96c0eac..d426fc87fe93 100644 --- a/Documentation/virtual/kvm/devices/vm.txt +++ b/Documentation/virtual/kvm/devices/vm.txt | |||
@@ -12,14 +12,14 @@ specific. | |||
12 | 1. GROUP: KVM_S390_VM_MEM_CTRL | 12 | 1. GROUP: KVM_S390_VM_MEM_CTRL |
13 | Architectures: s390 | 13 | Architectures: s390 |
14 | 14 | ||
15 | 1.1. ATTRIBUTE: KVM_S390_VM_MEM_CTRL | 15 | 1.1. ATTRIBUTE: KVM_S390_VM_MEM_ENABLE_CMMA |
16 | Parameters: none | 16 | Parameters: none |
17 | Returns: -EBUSY if already a vcpus is defined, otherwise 0 | 17 | Returns: -EBUSY if a vcpu is already defined, otherwise 0 |
18 | 18 | ||
19 | Enables CMMA for the virtual machine | 19 | Enables Collaborative Memory Management Assist (CMMA) for the virtual machine. |
20 | 20 | ||
21 | 1.2. ATTRIBUTE: KVM_S390_VM_CLR_CMMA | 21 | 1.2. ATTRIBUTE: KVM_S390_VM_MEM_CLR_CMMA |
22 | Parameteres: none | 22 | Parameters: none |
23 | Returns: 0 | 23 | Returns: 0 |
24 | 24 | ||
25 | Clear the CMMA status for all guest pages, so any pages the guest marked | 25 | Clear the CMMA status for all guest pages, so any pages the guest marked |
diff --git a/Documentation/virtual/kvm/msr.txt b/Documentation/virtual/kvm/msr.txt index 6d470ae7b073..2a71c8f29f68 100644 --- a/Documentation/virtual/kvm/msr.txt +++ b/Documentation/virtual/kvm/msr.txt | |||
@@ -168,7 +168,7 @@ MSR_KVM_ASYNC_PF_EN: 0x4b564d02 | |||
168 | 64 byte memory area which must be in guest RAM and must be | 168 | 64 byte memory area which must be in guest RAM and must be |
169 | zeroed. Bits 5-2 are reserved and should be zero. Bit 0 is 1 | 169 | zeroed. Bits 5-2 are reserved and should be zero. Bit 0 is 1 |
170 | when asynchronous page faults are enabled on the vcpu 0 when | 170 | when asynchronous page faults are enabled on the vcpu 0 when |
171 | disabled. Bit 2 is 1 if asynchronous page faults can be injected | 171 | disabled. Bit 1 is 1 if asynchronous page faults can be injected |
172 | when vcpu is in cpl == 0. | 172 | when vcpu is in cpl == 0. |
173 | 173 | ||
174 | First 4 byte of 64 byte memory location will be written to by | 174 | First 4 byte of 64 byte memory location will be written to by |
diff --git a/Documentation/vm/hugetlbpage.txt b/Documentation/vm/hugetlbpage.txt index bdd4bb97fff7..b64e0af9cc56 100644 --- a/Documentation/vm/hugetlbpage.txt +++ b/Documentation/vm/hugetlbpage.txt | |||
@@ -274,7 +274,7 @@ This command mounts a (pseudo) filesystem of type hugetlbfs on the directory | |||
274 | /mnt/huge. Any files created on /mnt/huge uses huge pages. The uid and gid | 274 | /mnt/huge. Any files created on /mnt/huge uses huge pages. The uid and gid |
275 | options sets the owner and group of the root of the file system. By default | 275 | options sets the owner and group of the root of the file system. By default |
276 | the uid and gid of the current process are taken. The mode option sets the | 276 | the uid and gid of the current process are taken. The mode option sets the |
277 | mode of root of file system to value & 0777. This value is given in octal. | 277 | mode of root of file system to value & 01777. This value is given in octal. |
278 | By default the value 0755 is picked. The size option sets the maximum value of | 278 | By default the value 0755 is picked. The size option sets the maximum value of |
279 | memory (huge pages) allowed for that filesystem (/mnt/huge). The size is | 279 | memory (huge pages) allowed for that filesystem (/mnt/huge). The size is |
280 | rounded down to HPAGE_SIZE. The option nr_inodes sets the maximum number of | 280 | rounded down to HPAGE_SIZE. The option nr_inodes sets the maximum number of |