x86: use user_mode macro
Instead of using SEGMENT_IS_KERNEL_CODE, use the "user_mode" macro, which can play the same role. Delete the former, since it now lacks any user. Signed-off-by: Glauber Costa <gcosta@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
bd32a8cfa8
commit
cf4cfb225a
2 changed files with 1 additions and 4 deletions
|
@ -47,7 +47,7 @@ unsigned long profile_pc(struct pt_regs *regs)
|
|||
unsigned long pc = instruction_pointer(regs);
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
if (!v8086_mode(regs) && SEGMENT_IS_KERNEL_CODE(regs->cs) &&
|
||||
if (!v8086_mode(regs) && !user_mode(regs) &&
|
||||
in_lock_functions(pc)) {
|
||||
#ifdef CONFIG_FRAME_POINTER
|
||||
return *(unsigned long *)(regs->bp + 4);
|
||||
|
|
|
@ -131,9 +131,6 @@
|
|||
* Matching rules for certain types of segments.
|
||||
*/
|
||||
|
||||
/* Matches only __KERNEL_CS, ignoring PnP / USER / APM segments */
|
||||
#define SEGMENT_IS_KERNEL_CODE(x) (((x) & 0xfc) == GDT_ENTRY_KERNEL_CS * 8)
|
||||
|
||||
/* Matches __KERNEL_CS and __USER_CS (they must be 2 entries apart) */
|
||||
#define SEGMENT_IS_FLAT_CODE(x) (((x) & 0xec) == GDT_ENTRY_KERNEL_CS * 8)
|
||||
|
||||
|
|
Loading…
Reference in a new issue