
In
computing
Computing is any goal-oriented activity requiring, benefiting from, or creating computer, computing machinery. It includes the study and experimentation of algorithmic processes, and the development of both computer hardware, hardware and softw ...
, an oops is a serious but non-fatal error in the
Linux kernel
The Linux kernel is a Free and open-source software, free and open source Unix-like kernel (operating system), kernel that is used in many computer systems worldwide. The kernel was created by Linus Torvalds in 1991 and was soon adopted as the k ...
. An oops may precede a
kernel panic
A kernel panic (sometimes abbreviated as KP) is a safety measure taken by an operating system's Kernel (operating system), kernel upon detecting an internal Fatal system error, fatal error in which either it is unable to safely recover or con ...
, but it may also allow continued operation with compromised
reliability
Reliability, reliable, or unreliable may refer to:
Science, technology, and mathematics Computing
* Data reliability (disambiguation), a property of some disk arrays in computer storage
* Reliability (computer networking), a category used to des ...
. The term does not stand for anything, other than that it is a simple mistake.
Functioning
When the kernel detects a problem, it
kill
Kill often refers to:
*Homicide, one human killing another
*cause death, to kill a living organism, to cause its death
Other common uses include:
*Kill (body of water), a body of water, most commonly a creek
*Kill (command), a computing command
*K ...
s any offending
processes and prints an ''oops message'', which Linux kernel engineers can use in
debugging
In engineering, debugging is the process of finding the Root cause analysis, root cause, workarounds, and possible fixes for bug (engineering), bugs.
For software, debugging tactics can involve interactive debugging, control flow analysis, Logf ...
the
condition that created the oops and
fixing the underlying programming error. After a system has experienced an oops, some internal resources may no longer be operational. Thus, even if the system appears to work correctly, undesirable side effects may have resulted from the active task being killed. A kernel oops often leads to a
kernel panic
A kernel panic (sometimes abbreviated as KP) is a safety measure taken by an operating system's Kernel (operating system), kernel upon detecting an internal Fatal system error, fatal error in which either it is unable to safely recover or con ...
when the system attempts to use resources that have been lost. Some kernels are configured to panic when many oopses ( by default) have occurred. This oops limit is due to the potential, for example, for attackers to repeatedly trigger an oops and an associated
resource leak
In computer science, a resource leak is a particular type of resource consumption by a computer program where the program does not release resources it has acquired. This condition is normally the result of a bug in a program. Typical resource lea ...
, which eventually
overflows an integer and allows further exploitation.
The official Linux kernel documentation regarding oops messages resides in the file of the kernel sources. Some logger configurations may affect the ability to collect oops messages. The
kerneloops
software can collect and submit kernel oopses to a repository such as the www.kerneloops.org website, which provides statistics and public access to reported oopses.
A simplified crash screen was introduced in Linux 6.10, similar to the
Blue Screen of Death
The blue screen of death (BSoD) or blue screen error, blue screen, fatal error, bugcheck, and officially known as a stop erroris a fatal system error, critical error screen displayed by the Microsoft Windows operating systems to indicate a cr ...
on Windows.
See also
*
kdump (Linux)
kdump is a feature of the Linux kernel that creates crash dumps in the event of a kernel crash. When triggered, kdump exports a memory image (also known as vmcore) that can be analyzed for the purposes of debugging and determining the cause of a ...
Linux kernel's crash dump mechanism, which internally uses
kexec
kexec (kernel execute), analogous to the Unix/Linux kernel call Exec (system call), exec, is a mechanism of the Linux kernel that allows booting of a new kernel (operating system), kernel from the currently running one.
Details
Essentially, kexe ...
*
System.map contains mappings between symbol names and their addresses in memory, used to interpret oopses
References
Further reading
''Linux Device Drivers'', 3rd edition, Chapter 4.*
*
*
Kernel Oops Howto (the madwifi project) Useful information on configuration files and tools to help display oops messages. Also many other links.
{{Error messages
Computer errors
Linux kernel
Screens of death