h8300: kernel: ptrace: remove redundancy default user_disable_single_step()
PATCH 1/1 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
--- arch/h8300/include/asm/ptrace.h | 2 ++ arch/h8300/kernel/ptrace.c | 5 ----- 2 files changed, 2 insertions(+), 5 deletions(-)
arch/h8300/include/asm/ptrace.h +2 -0
@@ -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)
arch/h8300/kernel/ptrace.c +0 -5
@@ -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.
Signature · 1 line
1.7.7.6
PATCH 1/1 arch/h8300/kernel/setup.c: implement default 'screen_info'
Need implement default 'screen_info' just like another architectures (tile, cris, score, sh), or can not pass compiling for defconfig:
The related error:
drivers/video/console/vgacon.c:820: undefined reference to screen_info' drivers/video/console/vgacon.c:840: undefined reference to screen_info'
drivers/built-in.o: In function `vgacon_init':
drivers/video/console/vgacon.c:589: undefined reference to `screen_info'
drivers/built-in.o: In function `vgacon_startup':
drivers/video/console/vgacon.c:375: undefined reference to screen_info' drivers/video/console/vgacon.c:387: undefined reference to screen_info' drivers/built-in.o:/root/linux-next/drivers/video/console/vgacon.c:388: more undefined references to `screen_info' follow
--- arch/h8300/kernel/setup.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-)
arch/h8300/kernel/setup.c +5 -0
@@ -31,6 +31,7 @@#include <linux/bootmem.h> #include <linux/seq_file.h> #include <linux/init.h> +#include <linux/screen_info.h> #include <asm/setup.h> #include <asm/irq.h>
@@ -49,6 +50,10 @@#define STUBSIZE 0xc000 +#ifdef CONFIG_VT +struct screen_info screen_info; +#endif +unsigned long rom_length;unsigned long memory_start;unsigned long memory_end;
Signature · 1 line
1.7.7.6
[Suggestion] h8300: built-in: about "can not find built-in.o" issue.
Hello Maintainers:
When build h8300h with defconfig, an 'built-in' issue occurs. I can add an dummy file and let "obj-y := dummy.o" to fix this issue, I am sure it is correct, but it seems not 'standard'.
So welcome any additional suggestions or completions, thanks.
The related information (with defconfig for h8300h):
/usr/local/bin/h8300-gchen-elf-ld -mh8300helf -r -o vmlinux.o arch/h8300/platform/h8300h/generic/crt0_ram.o init/built-in.o --start-group usr/built-in.o arch/h8300/kernel/built-in.o arch/h8300/mm/built-in.o arch/h8300/platform/h8300h/built-in.o arch/h8300/platform/h8300h/generic/built-in.o kernel/built-in.o mm/built-in.o fs/built-in.o ipc/built-in.o security/built-in.o crypto/built-in.o block/built-in.o lib/lib.a arch/h8300/lib/lib.a /usr/local/lib/gcc/h8300-gchen-elf/4.7.4/h8300h/int32/libgcc.a lib/built-in.o arch/h8300/lib/built-in.o /usr/local/lib/gcc/h8300-gchen-elf/4.7.4/h8300h/int32/libgcc.a drivers/built-in.o sound/built-in.o firmware/built-in.o net/built-in.o --end-group /usr/local/bin/h8300-gchen-elf-ld: cannot find arch/h8300/platform/h8300h/generic/built-in.o: No such file or directory
make: *** [vmlinux] Error 1
Thanks.
--
Chen Gang.
Re: [Suggestion] h8300: built-in: about "can not find built-in.o" issue.
After the recent several issue fix patches (include this suggestion), The h8300h with defconfig can pass building completely.
And next, I will try to build allmodconfig (finish before 2013-08-31).
Thanks.
Quoted 19 lines · Chen Gang
Hello Maintainers:
When build h8300h with defconfig, an 'built-in' issue occurs. I can add an dummy file and let "obj-y := dummy.o" to fix this issue, I am sure it is correct, but it seems not 'standard'.
So welcome any additional suggestions or completions, thanks.
The related information (with defconfig for h8300h):
/usr/local/bin/h8300-gchen-elf-ld-mh8300helf -r -o vmlinux.oarch/h8300/platform/h8300h/generic/crt0_ram.oinit/built-in.o--start-groupusr/built-in.oarch/h8300/kernel/built-in.oarch/h8300/mm/built-in.oarch/h8300/platform/h8300h/built-in.oarch/h8300/platform/h8300h/generic/built-in.okernel/built-in.omm/built-in.ofs/built-in.oipc/built-in.osecurity/built-in.ocrypto/built-in.oblock/built-in.olib/lib.aarch/h8300/lib/lib.a/usr/local/lib/gcc/h8300-gchen-elf/4.7.4/h8300h/int32/libgcc.alib/built-in.oarch/h8300/lib/built-in.o/usr/local/lib/gcc/h8300-gchen-elf/4.7.4/h8300h/int32/libgcc.adrivers/built-in.osound/built-in.ofirmware/built-in.onet/built-in.o--end-group/usr/local/bin/h8300-gchen-elf-ld: cannot findarch/h8300/platform/h8300h/generic/built-in.o: No such file or directory
make: *** [vmlinux] Error 1Thanks.
--
Chen Gang.
Signature · 1 line
Chen Gang