user_mode(regs) macro in kernel
From: Mulyadi Santosa <hidden>
Date: 2012-06-20 15:14:18
From: Mulyadi Santosa <hidden>
Date: 2012-06-20 15:14:18
On Wed, Jun 20, 2012 at 6:45 PM, sumeet linux [off-list ref] wrote:
Hi All, What is the meaning of user_mode(regs) macro ???What does it do ?
I assume you were referring to: http://lxr.linux.no/#linux+v3.4.3/arch/x86/include/asm/ptrace.h#L164 right? let me paste the code here: return !!(regs->cs & 3) As you can see there, it retrieve the CS register and AND it with 3 (11 in binary). We know that 3 in CS (Code segment) means CPU is currently operating in ring level 3 a.k.a user mode. Whereas if it is 0, then it is in kernel mode. Hope it makes it clear for you :) -- regards, Mulyadi Santosa Freelance Linux trainer and consultant blog: the-hydra.blogspot.com training: mulyaditraining.blogspot.com