[RFC][PATCH] Demultiplexing SIGTRAP signal
    Ingo Molnar 
    mingo at elte.hu
       
    Tue Sep 23 00:54:04 EST 2008
    
    
  
* Srinivasa Ds <srinivasa at in.ibm.com> wrote:
> --- linux-2.6.27-rc7.orig/arch/ia64/include/asm/siginfo.h
> +++ linux-2.6.27-rc7/arch/ia64/include/asm/siginfo.h
please do not send patches that modify include/asm/ files, the 
include/asm-x86/ file should be modified instead.
(this problem will go away in v2.6.28 when we'll move include/asm-x86/ 
to arch/x86/include/)
> +	si_code = get_si_code((unsigned long*)&condition);
coding style problem: please run checkpatch.
>  	/* Ok, finally something we can handle */
> -	send_sigtrap(tsk, regs, error_code);
> +	send_sigtrap(tsk, regs, error_code, si_code);
ok, that looks much nicer.
> -	info.si_code = TRAP_BRKPT;
> +	info.si_code = get_si_code(&condition);
no need to pass in the condition by reference.
> +#define TRAP_BRANCH     (__SI_FAULT|3)  /* process taken branch trap */
> +#define TRAP_HWBKPT     (__SI_FAULT|4)  /* hardware breakpoint or watchpoint 
> */
stray linewrapped patch line - see Documentation/email-clients.txt.
> -void send_sigtrap(struct task_struct *tsk, struct pt_regs *regs, int 
> error_code)
> +void send_sigtrap(struct task_struct *tsk, struct pt_regs *regs, int 
> error_code,
linewrap.
> +++ linux-2.6.27-rc7/include/asm-x86/traps.h
> @@ -36,6 +36,16 @@ void do_invalid_op(struct pt_regs *, lon
>  void do_general_protection(struct pt_regs *, long);
>  void do_nmi(struct pt_regs *, long);
>  
> +int get_si_code(unsigned long *condition)
> +{
> +	if (*condition & DR_STEP)
> +		return TRAP_TRACE;
please declare inline functions explicitly as 'static inline'.
	Ingo
    
    
More information about the Linuxppc-dev
mailing list