简体   繁体   中英

Can Linux Kernel OOPS be cause by user process?

In my development environment, I am getting a kernel oops. Someone suggested that one of my Daemon is making a kernel oops.

This is quite intriguing to me. By definition ( http://en.wikipedia.org/wiki/Linux_kernel_oops ) :

   "oops is a deviation from correct behavior of the Linux kernel - one which produces a certain error log "

Hence the exception would be in the Kernel code. I did some more search but could not find an exact answer.

Could someone please clarify, whether kernel oops can be made by any user process?

PS : I understand that kernel code is executing in some user process context ( after context switch ) but after context switch its the kernel code which is executing & not the user process code.

They can trigger an oops in the kernel. Theoretically this should not be possible, as a user space process should not be able to crash or force the kernel into a code path that causes a kernel oops.

However there might be bugs in the kernel that enables a user space process to trigger an oops. ie if your process causes a kernel oops, there's a bug in the kernel, or your process is making the kernel interact with faulty hardware

Any code to run in the kernel can only happen if the user does a system call or either there is a hardware /software interrupt.

So kernel oops will happen either through user process

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM