RE: [PATCH v3 1/3] x86/mce: Use is_copy_from_user() to determine copy-from-user context

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> diff --git a/arch/x86/kernel/cpu/mce/severity.c b/arch/x86/kernel/cpu/mce/severity.c
> index dac4d64dfb2a..cb021058165f 100644
> --- a/arch/x86/kernel/cpu/mce/severity.c
> +++ b/arch/x86/kernel/cpu/mce/severity.c
> @@ -300,13 +300,12 @@ static noinstr int error_context(struct mce *m, struct pt_regs *regs)
>       copy_user  = is_copy_from_user(regs);
>       instrumentation_end();
>
> -     switch (fixup_type) {
> -     case EX_TYPE_UACCESS:
> -             if (!copy_user)
> -                     return IN_KERNEL;
> -             m->kflags |= MCE_IN_KERNEL_COPYIN;
> -             fallthrough;
> +     if (copy_user) {
> +             m->kflags |= MCE_IN_KERNEL_COPYIN | MCE_IN_KERNEL_COPYIN;

You have " MCE_IN_KERNEL_COPYIN" twice here.

> +             return IN_KERNEL_RECOV
> +     }
>
> +     switch (fixup_type) {
>       case EX_TYPE_FAULT_MCE_SAFE:
>       case EX_TYPE_DEFAULT_MCE_SAFE:
>               m->kflags |= MCE_IN_KERNEL_RECOV;
> --

-Tony





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux