summaryrefslogtreecommitdiffstats
path: root/upstream/opensuse-tumbleweed/man4/cpuid.4
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-17 10:51:52 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-17 10:51:52 +0000
commit4ad94864781f48b1a4b77f9cfb934622bf756ba1 (patch)
tree3900955c1886e6d2570fea7125ee1f01bafe876d /upstream/opensuse-tumbleweed/man4/cpuid.4
parentAdding upstream version 4.22.0. (diff)
downloadmanpages-l10n-4ad94864781f48b1a4b77f9cfb934622bf756ba1.tar.xz
manpages-l10n-4ad94864781f48b1a4b77f9cfb934622bf756ba1.zip
Adding upstream version 4.23.0.upstream/4.23.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/opensuse-tumbleweed/man4/cpuid.4')
-rw-r--r--upstream/opensuse-tumbleweed/man4/cpuid.428
1 files changed, 15 insertions, 13 deletions
diff --git a/upstream/opensuse-tumbleweed/man4/cpuid.4 b/upstream/opensuse-tumbleweed/man4/cpuid.4
index 3f7d184f..a09d87a5 100644
--- a/upstream/opensuse-tumbleweed/man4/cpuid.4
+++ b/upstream/opensuse-tumbleweed/man4/cpuid.4
@@ -3,19 +3,19 @@
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
-.TH cpuid 4 2022-10-30 "Linux man-pages 6.05.01"
+.TH cpuid 4 2024-05-02 "Linux man-pages (unreleased)"
.SH NAME
cpuid \- x86 CPUID access device
.SH DESCRIPTION
CPUID provides an interface for querying information about the x86 CPU.
-.PP
+.P
This device is accessed by
.BR lseek (2)
or
.BR pread (2)
to the appropriate CPUID level and reading in chunks of 16 bytes.
A larger read size means multiple reads of consecutive levels.
-.PP
+.P
The lower 32 bits of the file position is used as the incoming
.IR %eax ,
and the upper 32 bits of the file position as the incoming
@@ -24,7 +24,7 @@ the latter is intended for "counting"
.I eax
levels like
.IR eax=4 .
-.PP
+.P
This driver uses
.IR /dev/cpu/CPUNUM/cpuid ,
where
@@ -34,7 +34,7 @@ and on an SMP box will direct the access to CPU
.I CPUNUM
as listed in
.IR /proc/cpuinfo .
-.PP
+.P
This file is protected so that it can be read only by the user
.IR root ,
or members of the group
@@ -44,7 +44,7 @@ The CPUID instruction can be directly executed by a program
using inline assembler.
However this device allows convenient
access to all CPUs without changing process affinity.
-.PP
+.P
Most of the information in
.I cpuid
is reported by the kernel in cooked form either in
@@ -53,29 +53,31 @@ or through subdirectories in
.IR /sys/devices/system/cpu .
Direct CPUID access through this device should only
be used in exceptional cases.
-.PP
+.P
The
.I cpuid
driver is not auto-loaded.
On modular kernels you might need to use the following command
to load it explicitly before use:
-.PP
+.P
.in +4n
.EX
$ modprobe cpuid
.EE
.in
-.PP
+.P
There is no support for CPUID functions that require additional
input registers.
-.PP
-Very old x86 CPUs don't support CPUID.
+.P
+Early i486 CPUs do not support the CPUID instruction;
+.\" arch/x86/kernel/cpuid.c cpuid_open()
+opening this device for those CPUs fails with EIO.
.SH SEE ALSO
.BR cpuid (1)
-.PP
+.P
Intel Corporation, Intel 64 and IA-32 Architectures
Software Developer's Manual Volume 2A:
Instruction Set Reference, A-M, 3-180 CPUID reference.
-.PP
+.P
Intel Corporation, Intel Processor Identification and
the CPUID Instruction, Application note 485.