lkml.org 
[lkml]   [2007]   [Jun]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH] x86: simplify notify_page_fault()
On Mon, Jan 08, 2007 at 01:31:11PM +0000, Jan Beulich wrote:
> Remove all parameters from this function that aren't really variable.
>
> Signed-off-by: Jan Beulich <jbeulich@novell.com>
>
> --- linux-2.6.20-rc4/arch/i386/mm/fault.c 2007-01-08 09:57:20.000000000 +0100
> +++ 2.6.20-rc4-x86-simplify-notify_page_fault/arch/i386/mm/fault.c 2007-01-08 10:32:45.000000000 +0100
> @@ -46,17 +46,17 @@ int unregister_page_fault_notifier(struc
> }
> EXPORT_SYMBOL_GPL(unregister_page_fault_notifier);
>
> -static inline int notify_page_fault(enum die_val val, const char *str,
> - struct pt_regs *regs, long err, int trap, int sig)
> +static inline int notify_page_fault(struct pt_regs *regs, long err)
> {
> struct die_args args = {
> .regs = regs,
> - .str = str,
> + .str = "page fault",
> .err = err,
> - .trapnr = trap,
> - .signr = sig
> + .trapnr = 14,
> + .signr = SIGSEGV
> };
> - return atomic_notifier_call_chain(&notify_page_fault_chain, val, &args);
> + return atomic_notifier_call_chain(&notify_page_fault_chain,
> + DIE_PAGE_FAULT, &args);
> }

Btw, WTF

>
> /*
> @@ -353,8 +353,7 @@ fastcall void __kprobes do_page_fault(st
> if (unlikely(address >= TASK_SIZE)) {
> if (!(error_code & 0x0000000d) && vmalloc_fault(address) >= 0)
> return;
> - if (notify_page_fault(DIE_PAGE_FAULT, "page fault", regs, error_code, 14,
> - SIGSEGV) == NOTIFY_STOP)
> + if (notify_page_fault(regs, error_code) == NOTIFY_STOP)
> return;
> /*
> * Don't take the mm semaphore here. If we fixup a prefetch
> @@ -363,8 +362,7 @@ fastcall void __kprobes do_page_fault(st
> goto bad_area_nosemaphore;
> }
>
> - if (notify_page_fault(DIE_PAGE_FAULT, "page fault", regs, error_code, 14,
> - SIGSEGV) == NOTIFY_STOP)
> + if (notify_page_fault(regs, error_code) == NOTIFY_STOP)
> return;
>
> /* It's safe to allow irq's after cr2 has been saved and the vmalloc
> --- linux-2.6.20-rc4/arch/x86_64/mm/fault.c 2007-01-08 09:57:27.000000000 +0100
> +++ 2.6.20-rc4-x86-simplify-notify_page_fault/arch/x86_64/mm/fault.c 2007-01-08 10:33:11.000000000 +0100
> @@ -56,17 +56,17 @@ int unregister_page_fault_notifier(struc
> }
> EXPORT_SYMBOL_GPL(unregister_page_fault_notifier);
>
> -static inline int notify_page_fault(enum die_val val, const char *str,
> - struct pt_regs *regs, long err, int trap, int sig)
> +static inline int notify_page_fault(struct pt_regs *regs, long err)
> {
> struct die_args args = {
> .regs = regs,
> - .str = str,
> + .str = "page fault",
> .err = err,
> - .trapnr = trap,
> - .signr = sig
> + .trapnr = 14,
> + .signr = SIGSEGV
> };
> - return atomic_notifier_call_chain(&notify_page_fault_chain, val, &args);
> + return atomic_notifier_call_chain(&notify_page_fault_chain,
> + DIE_PAGE_FAULT, &args);
> }
>
> void bust_spinlocks(int yes)
> @@ -376,8 +376,7 @@ asmlinkage void __kprobes do_page_fault(
> if (vmalloc_fault(address) >= 0)
> return;
> }
> - if (notify_page_fault(DIE_PAGE_FAULT, "page fault", regs, error_code, 14,
> - SIGSEGV) == NOTIFY_STOP)
> + if (notify_page_fault(regs, error_code) == NOTIFY_STOP)
> return;
> /*
> * Don't take the mm semaphore here. If we fixup a prefetch
> @@ -386,8 +385,7 @@ asmlinkage void __kprobes do_page_fault(
> goto bad_area_nosemaphore;
> }
>
> - if (notify_page_fault(DIE_PAGE_FAULT, "page fault", regs, error_code, 14,
> - SIGSEGV) == NOTIFY_STOP)
> + if (notify_page_fault(regs, error_code) == NOTIFY_STOP)
> return;
>
> if (likely(regs->eflags & X86_EFLAGS_IF))
>
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
---end quoted text---
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-06-23 10:07    [W:0.036 / U:0.036 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site