lkml.org 
[lkml]   [2013]   [Aug]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] h8300: kernel: ptrace: remove redundancy default user_disable_single_step()
For platform h8300h and h8s, user_disable_single_step() is already
defined, it is conflict with the default one in h8300.

The public header already defined the default implementation, so in
h8300, need not define the default one.

The related error (defconfig for h8300h):

LD vmlinux.o
arch/h8300/platform/h8300h/built-in.o: In function `user_disable_single_step':
arch/h8300/platform/h8300h/ptrace_h8300h.c:65: multiple definition of `user_disable_single_step'
arch/h8300/kernel/built-in.o: arch/h8300/kernel/ptrace.c:39: first defined here
/usr/local/bin/h8300-gchen-elf-ld: Warning: size of symbol `_user_disable_single_step' changed from 2 in arch/h8300/kernel/built-in.o to 30 in arch/h8300/platform/h8300h/built-in.o


Signed-off-by: Chen Gang <gang.chen@asianux.com>
---
arch/h8300/include/asm/ptrace.h | 2 ++
arch/h8300/kernel/ptrace.c | 5 -----
2 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/arch/h8300/include/asm/ptrace.h b/arch/h8300/include/asm/ptrace.h
index c1826b9..dd887e9 100644
--- a/arch/h8300/include/asm/ptrace.h
+++ b/arch/h8300/include/asm/ptrace.h
@@ -20,7 +20,9 @@
/* Find the stack offset for a register, relative to thread.esp0. */
#define PT_REG(reg) ((long)&((struct pt_regs *)0)->reg)

+#if defined(__H8300H__) || defined(__H8300S__)
#define arch_has_single_step() (1)
+#endif

#define user_mode(regs) (!((regs)->ccr & PS_S))
#define instruction_pointer(regs) ((regs)->pc)
diff --git a/arch/h8300/kernel/ptrace.c b/arch/h8300/kernel/ptrace.c
index 748cf65..82ec3b6 100644
--- a/arch/h8300/kernel/ptrace.c
+++ b/arch/h8300/kernel/ptrace.c
@@ -34,11 +34,6 @@
extern long h8300_get_reg(struct task_struct *task, int regno);
extern int h8300_put_reg(struct task_struct *task, int regno, unsigned long data);

-
-void user_disable_single_step(struct task_struct *child)
-{
-}
-
/*
* does not yet catch signals sent when the child dies.
* in exit.c or in signal.c.
--
1.7.7.6

\
 
 \ /
  Last update: 2013-08-29 07:01    [W:0.053 / U:0.248 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site