maltalinux-cvs-patches
[Top] [All Lists]

CVS Update@linux-mips.org: malta

To: maltalinux-cvs-patches@linux-mips.org
Subject: CVS Update@linux-mips.org: malta
From: beth@linux-mips.org
Date: Fri, 19 Aug 2005 14:47:37 +0100
Reply-to: linux-mips@linux-mips.org
Sender: maltalinux-cvs-patches-bounce@linux-mips.org
CVSROOT:        /home/cvs
Module name:    malta
Changes by:     beth@ftp.linux-mips.org 05/08/19 14:47:36

Modified files:
        linux/arch/mips/kernel: Tag: MaltaRef_2_6 kspd.c rtlx.c vpe.c 
        linux/include/asm-mips: Tag: MaltaRef_2_6 elf.h 

Log message:
        * arch/mips/kernel/kspd.c: Read args as well as the syscall info.
        
        * arch/mips/kernel/rtlx.c: Provide further debug info when
        the shared structure cannot be found.
        
        * arch/mips/kernel/vpe.c: Ignore the .reginfo section when loading
        a linked image.
        
        * include/asm-mips/elf.h: Define .reginfo section type.

diff -urN malta/linux/arch/mips/kernel/kspd.c 
malta/linux/arch/mips/kernel/kspd.c
--- malta/linux/arch/mips/kernel/Attic/kspd.c   2005/08/16 09:49:13     
1.1.1000.3
+++ malta/linux/arch/mips/kernel/Attic/kspd.c   2005/08/19 13:47:36     
1.1.1000.4
@@ -197,9 +197,11 @@
 
        size = sc.size;
 
-       if (!rtlx_read(RTLX_CHANNEL_SYSIO, &generic, size, 0)) {
-               printk(KERN_ERR "Expected request but nothing to read\n");
-               return;
+       if (size) {
+               if (!rtlx_read(RTLX_CHANNEL_SYSIO, &generic, size, 0)) {
+                       printk(KERN_ERR "Expected request but nothing to 
read\n");
+                       return;
+               }
        }
 
        /* run the syscall at the priviledge of the user who loaded the 
diff -urN malta/linux/arch/mips/kernel/rtlx.c 
malta/linux/arch/mips/kernel/rtlx.c
--- malta/linux/arch/mips/kernel/rtlx.c 2005/08/16 09:49:13     1.1.1000.4
+++ malta/linux/arch/mips/kernel/rtlx.c 2005/08/19 13:47:36     1.1.1000.5
@@ -111,7 +111,8 @@
 static int rtlx_init(struct rtlx_info *rtlxi)
 {
        if (rtlxi->id != RTLX_ID) {
-               printk(KERN_ERR "no valid RTLX id at 0x%p\n", rtlxi);
+               printk(KERN_ERR "no valid RTLX id at 0x%p found 0x%x should be 
0x%x\n", 
+                      rtlxi, rtlxi->id, RTLX_ID);
                return -ENOEXEC;
        }
 
diff -urN malta/linux/arch/mips/kernel/vpe.c malta/linux/arch/mips/kernel/vpe.c
--- malta/linux/arch/mips/kernel/vpe.c  2005/08/11 13:27:51     1.1.1000.3
+++ malta/linux/arch/mips/kernel/vpe.c  2005/08/19 13:47:36     1.1.1000.4
@@ -974,15 +974,21 @@
                }
        } else {
                for (i = 0; i < hdr->e_shnum; i++) {
-
-                       if (!(sechdrs[i].sh_flags & SHF_ALLOC) || 
sechdrs[i].sh_type == PT_MIPS_REGINFO)
+                       if (!(sechdrs[i].sh_flags & SHF_ALLOC) || 
+                           (sechdrs[i].sh_type == SHT_MIPS_REGINFO)) {
+                               printk( KERN_DEBUG " ignoring section, "
+                                       "name %s type %x address 0x%x \n", 
+                                       secstrings + sechdrs[i].sh_name,
+                                       sechdrs[i].sh_type, sechdrs[i].sh_addr);
                                continue;
+                       }
 
                        if (sechdrs[i].sh_addr < (unsigned int)v->load_addr) {
                                printk( KERN_WARNING "vpe_elfload: fully linked 
image has invalid " 
-                                       "section, name %s address 0x%x, before 
load "
+                                       "section, name %s type %x address 0x%x, 
before load "
                                        "address of 0x%x\n", secstrings + 
sechdrs[i].sh_name,
-                                       sechdrs[i].sh_addr, (unsigned 
int)v->load_addr);
+                                       sechdrs[i].sh_type, sechdrs[i].sh_addr, 
+                                       (unsigned int)v->load_addr);
                                return -ENOEXEC;
                        }
 
diff -urN malta/linux/include/asm-mips/elf.h malta/linux/include/asm-mips/elf.h
--- malta/linux/include/asm-mips/elf.h  2005/06/21 13:36:23     1.21.1000.2
+++ malta/linux/include/asm-mips/elf.h  2005/08/19 13:47:36     1.21.1000.3
@@ -114,6 +114,8 @@
 #define SHT_MIPS_GPTAB         0x70000003
 #define SHT_MIPS_UCODE         0x70000004
 
+#define SHT_MIPS_REGINFO       0x70000006
+
 #define SHF_MIPS_GPREL 0x10000000
 
 #ifndef ELF_ARCH

<Prev in Thread] Current Thread [Next in Thread>