Author: royger
Date: Sat Jan 17 08:09:07 2015
New Revision: 277291
URL: https://svnweb.freebsd.org/changeset/base/277291

Log:
  loader: use correct types for parse_modmetadata
  
  Use the proper types in parse_modmetadata for the p_start and p_end
  parameters. This was causing problems in the ARM 32bit loader.
  
  Sponsored by: Citrix Systems R&D
  Reported and Tested by: ian

Modified:
  head/sys/boot/common/load_elf.c

Modified: head/sys/boot/common/load_elf.c
==============================================================================
--- head/sys/boot/common/load_elf.c     Sat Jan 17 07:33:02 2015        
(r277290)
+++ head/sys/boot/common/load_elf.c     Sat Jan 17 08:09:07 2015        
(r277291)
@@ -77,7 +77,7 @@ static int __elfN(lookup_symbol)(struct 
 static int __elfN(reloc_ptr)(struct preloaded_file *mp, elf_file_t ef,
     Elf_Addr p, void *val, size_t len);
 static int __elfN(parse_modmetadata)(struct preloaded_file *mp, elf_file_t ef,
-    u_int64_t p_start, u_int64_t p_end);
+    Elf_Addr p_start, Elf_Addr p_end);
 static symaddr_fn __elfN(symaddr);
 static char    *fake_modname(const char *name);
 
@@ -300,7 +300,7 @@ __elfN(loadimage)(struct preloaded_file 
     Elf_Size   size;
     u_int      fpcopy;
     Elf_Sym    sym;
-    u_int64_t  p_start, p_end;
+    Elf_Addr   p_start, p_end;
 
     dp = NULL;
     shdr = NULL;
@@ -712,7 +712,7 @@ __elfN(load_modmetadata)(struct preloade
        Elf_Shdr                *sh_data[2];
        char                    *shstrtab = NULL;
        size_t                   size;
-       u_int64_t                p_start, p_end;
+       Elf_Addr                 p_start, p_end;
 
        bzero(&ef, sizeof(struct elf_file));
        ef.fd = -1;
@@ -820,7 +820,7 @@ out:
 
 int
 __elfN(parse_modmetadata)(struct preloaded_file *fp, elf_file_t ef,
-    u_int64_t p_start, u_int64_t p_end)
+    Elf_Addr p_start, Elf_Addr p_end)
 {
     struct mod_metadata md;
 #if (defined(__i386__) || defined(__powerpc__)) && __ELF_WORD_SIZE == 64
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to