I'm running a Linux VM in the Azure Cloud. I believe they use a customized Xen kernel. I notice there are 64 'rcuos' processes and 64 'rcuob' processes. There's also 'rcu_sched' and "rcu_bh" running.
I was wondering what these processes are for...I found this:
https://www.kernel.org/doc/Documentation/RCU/stallwarn.txt
So it sounds like if the system tries to get some processing and there is a stall (because the CPU is virtualized), the rcu processes queue up these requests so they still execute. In other words, other than the kernel saying "OMG I tried to execute this opcode and I couldn't so I will panic", instead those opcodes are queued up by rcu_sched - ?
I was wondering what these processes are for...I found this:
https://www.kernel.org/doc/Documentation/RCU/stallwarn.txt
So it sounds like if the system tries to get some processing and there is a stall (because the CPU is virtualized), the rcu processes queue up these requests so they still execute. In other words, other than the kernel saying "OMG I tried to execute this opcode and I couldn't so I will panic", instead those opcodes are queued up by rcu_sched - ?
Code:
root 67 2 0 Mar08 ? 00:00:00 [rcuos/59]
root 68 2 0 Mar08 ? 00:00:00 [rcuos/60]
root 69 2 0 Mar08 ? 00:00:00 [rcuos/61]
root 70 2 0 Mar08 ? 00:00:00 [rcuos/62]
root 71 2 0 Mar08 ? 00:00:00 [rcuos/63]
root 72 2 0 Mar08 ? 00:00:00 [rcu_bh]
root 73 2 0 Mar08 ? 00:00:00 [rcuob/0]
root 74 2 0 Mar08 ? 00:00:00 [rcuob/1]
root 75 2 0 Mar08 ? 00:00:00 [rcuob/2]
root 76 2 0 Mar08 ? 00:00:00 [rcuob/3]
root 77 2 0 Mar08 ? 00:00:00 [rcuob/4]
root 78 2 0 Mar08 ? 00:00:00 [rcuob/5]