h8300 trival patches
authorYoshinori Sato <ysato@users.sourceforge.jp>
Fri, 1 Jun 2007 07:47:01 +0000 (00:47 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Fri, 1 Jun 2007 15:18:29 +0000 (08:18 -0700)
- warning fix.
- call trace area check fix.
- There is no meaning, ' & ' it deletes

Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/h8300/kernel/sys_h8300.c
arch/h8300/kernel/traps.c
include/asm-h8300/processor.h

index 11ba75a05220bc7cfefe8febcbfd19b7c29b9315..de7688cfd573e6f73373b754efc1aecbcdf5571c 100644 (file)
@@ -288,9 +288,9 @@ asmlinkage void syscall_print(void *dummy,...)
 int kernel_execve(const char *filename, char *const argv[], char *const envp[])
 {
        register long res __asm__("er0");
+       register char *const *_c __asm__("er3") = envp;
+       register char *const *_b __asm__("er2") = argv;
        register const char * _a __asm__("er1") = filename;
-       register void *_b __asm__("er2") = argv;
-       register void *_c __asm__("er3") = envp;
        __asm__ __volatile__ ("mov.l %1,er0\n\t"
                        "trapa  #0\n\t"
                        : "=r" (res)
index 300e3279ca5abb5b25c3afab13fd8748dba41382..f97183011c2cb501ccf6cb07de9d12a87e00d93a 100644 (file)
@@ -136,7 +136,7 @@ void show_stack(struct task_struct *task, unsigned long *esp)
        printk("\nCall Trace:");
        i = 0;
        stack = esp;
-       while (((unsigned long)stack & (THREAD_SIZE - 1)) == 0) {
+       while (((unsigned long)stack & (THREAD_SIZE - 1)) != 0) {
                addr = *stack++;
                /*
                 * If the address is either in the text segment of the
index 99b664aa20837e3f1d674800bc9377932267802e..49fc886a623278249302edf3c169c883526e8313 100644 (file)
@@ -78,7 +78,7 @@ struct thread_struct {
 do {                                                           \
        set_fs(USER_DS);           /* reads from user space */  \
        (_regs)->pc = (_pc);                                    \
-       (_regs)->ccr &= 0x00;      /* clear kernel flag */      \
+       (_regs)->ccr = 0x00;       /* clear all flags */        \
        (_regs)->er5 = current->mm->start_data; /* GOT base */  \
        wrusp((unsigned long)(_usp) - sizeof(unsigned long)*3); \
 } while(0)