[uClibc] [patch] Fix unused function parameters in ldso

Stefan Allius allius at atecom.com
Mon Aug 23 13:44:28 UTC 2004


Hi,

I attached a patch, which removes the unused function paramter 'type'
from the _dl_parse_... functions.

The patch also removes the unused echo option '-e' in the ldso/Makefile,
which seems not to work on my Solaris system.

I tested the patch only on a SH3 target and it works fine for me.

Bye Stefan

-- 
----------------------------------
Stefan Allius
senior software engineer

ATecoM GmbH
advanced telecommunication modules
Pascalstrasse 67
D-52076 Aachen
Germany

Tel: +49/2408/9596-0
Fax: +49/2408/9596-900
eMail: allius at atecom.com
URL: http://www.atecom.com
----------------------------------
-------------- next part --------------
diff -uwr -xCVS ./Makefile /home/allius/dev/condor/src/uClibc/ldso/Makefile
--- ./Makefile	Tue Aug 17 15:09:01 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/Makefile	Mon Aug 23 12:27:34 2004
@@ -39,7 +39,7 @@
 include/dl-progname.h: Makefile
 	echo "const char *_dl_progname=\""$(UCLIBC_LDSO)"\";" \
 		> include/dl-progname.h
-	echo -e "#include \"$(TARGET_ARCH)/elfinterp.c\"" \
+	echo "#include \"$(TARGET_ARCH)/elfinterp.c\"" \
 		>> include/dl-progname.h
 
 headers: include/dl-progname.h
diff -uwr -xCVS ./include/dl-elf.h /home/allius/dev/condor/src/uClibc/ldso/include/dl-elf.h
--- ./include/dl-elf.h	Sun Jun 20 13:10:49 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/include/dl-elf.h	Mon Aug 23 14:54:07 2004
@@ -59,12 +59,12 @@
 
 /* Function prototypes for non-static stuff in readelflib1.c */
 extern int _dl_parse_copy_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type);
+	unsigned long rel_addr, unsigned long rel_size);
 extern void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type);
+	unsigned long rel_addr, unsigned long rel_size);
 extern int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type);
+	unsigned long rel_addr, unsigned long rel_size);
 extern struct elf_resolve * _dl_load_shared_library(int secure,
 	struct dyn_elf **rpnt, struct elf_resolve *tpnt, char *full_libname,
 	int trace_loaded_objects);
diff -uwr -xCVS ./ldso/arm/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/arm/elfinterp.c
--- ./ldso/arm/elfinterp.c	Tue Aug 17 15:37:49 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/arm/elfinterp.c	Mon Aug 23 14:12:15 2004
@@ -443,19 +443,19 @@
 }
 
 void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	(void)_dl_parse(rpnt->dyn, NULL, rel_addr, rel_size, _dl_do_lazy_reloc);
 }
 
 int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	return _dl_parse(rpnt->dyn, rpnt->dyn->symbol_scope, rel_addr, rel_size, _dl_do_reloc);
 }
 
 int _dl_parse_copy_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	return _dl_parse(rpnt->dyn, rpnt->next, rel_addr, rel_size, _dl_do_copy_reloc);
 }
diff -uwr -xCVS ./ldso/cris/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/cris/elfinterp.c
--- ./ldso/cris/elfinterp.c	Tue Aug 17 15:37:50 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/cris/elfinterp.c	Mon Aug 23 14:11:48 2004
@@ -370,26 +370,20 @@
 /* External interface to the generic part of the dynamic linker. */
 
 void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
-	/* Keep the compiler happy. */
-	(void) type;
 	(void)_dl_parse(rpnt->dyn, NULL, rel_addr, rel_size, _dl_do_lazy_reloc);
 }
 
 int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
-	/* Keep the compiler happy. */
-	(void) type;
 	return _dl_parse(rpnt->dyn, rpnt->dyn->symbol_scope, rel_addr, rel_size, _dl_do_reloc);
 }
 
 int _dl_parse_copy_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
-	/* Keep the compiler happy. */
-	(void) type;
 	return _dl_parse(rpnt->dyn, rpnt->next, rel_addr, rel_size, _dl_do_copy_reloc);
 }
 
diff -uwr -xCVS ./ldso/dl-elf.c /home/allius/dev/condor/src/uClibc/ldso/ldso/dl-elf.c
--- ./ldso/dl-elf.c	Tue Aug 17 15:37:49 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/dl-elf.c	Mon Aug 23 15:06:34 2004
@@ -235,7 +235,7 @@
 unsigned long _dl_internal_error_number;
 
 struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
-	struct elf_resolve *tpnt, char *full_libname, int trace_loaded_objects)
+	struct elf_resolve *tpnt, char *full_libname, int __attribute__((unused)) trace_loaded_objects)
 {
 	char *pnt, *pnt1;
 	struct elf_resolve *tpnt1;
@@ -767,7 +767,7 @@
 		tpnt->init_flag |= RELOCS_DONE;
 		goof += _dl_parse_relocation_information(rpnt,
 				tpnt->dynamic_info[DT_RELOC_TABLE_ADDR],
-				reloc_size, 0);
+				reloc_size);
 	}
 	if (tpnt->dynamic_info[DT_JMPREL] &&
 	    (!(tpnt->init_flag & JMP_RELOCS_DONE) ||
@@ -777,11 +777,11 @@
 		if (!(tpnt->rtld_flags & RTLD_NOW)) {
 			_dl_parse_lazy_relocation_information(rpnt,
 					tpnt->dynamic_info[DT_JMPREL],
-					tpnt->dynamic_info [DT_PLTRELSZ], 0);
+					tpnt->dynamic_info [DT_PLTRELSZ]);
 		} else {
 			goof += _dl_parse_relocation_information(rpnt,
 					tpnt->dynamic_info[DT_JMPREL],
-					tpnt->dynamic_info[DT_PLTRELSZ], 0);
+					tpnt->dynamic_info[DT_PLTRELSZ]);
 		}
 	}
 
@@ -790,7 +790,7 @@
 	tpnt->init_flag |= COPY_RELOCS_DONE;
 	goof += _dl_parse_copy_information(rpnt,
 			tpnt->dynamic_info[DT_RELOC_TABLE_ADDR],
-			tpnt->dynamic_info[DT_RELOC_TABLE_SIZE], 0);
+			tpnt->dynamic_info[DT_RELOC_TABLE_SIZE]);
 
 #if defined (__SUPPORT_LD_DEBUG__)
 	if(_dl_debug) {
diff -uwr -xCVS ./ldso/frv/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/frv/elfinterp.c
--- ./ldso/frv/elfinterp.c	Tue Aug 17 15:37:50 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/frv/elfinterp.c	Mon Aug 23 14:11:15 2004
@@ -424,16 +424,14 @@
 
 void
 _dl_parse_lazy_relocation_information
-(struct dyn_elf *rpnt, unsigned long rel_addr, unsigned long rel_size,
- int type __attribute_used__)
+(struct dyn_elf *rpnt, unsigned long rel_addr, unsigned long rel_size)
 {
   _dl_parse(rpnt->dyn, NULL, rel_addr, rel_size, _dl_do_lazy_reloc);
 }
 
 int
 _dl_parse_relocation_information
-(struct dyn_elf *rpnt, unsigned long rel_addr, unsigned long rel_size,
- int type __attribute_used__)
+(struct dyn_elf *rpnt, unsigned long rel_addr, unsigned long rel_size)
 {
   return _dl_parse(rpnt->dyn, rpnt->dyn->symbol_scope, rel_addr, rel_size, _dl_do_reloc);
 }
@@ -444,8 +442,7 @@
 _dl_parse_copy_information
 (struct dyn_elf *rpnt __attribute_used__,
  unsigned long rel_addr __attribute_used__,
- unsigned long rel_size __attribute_used__,
- int type __attribute_used__)
+ unsigned long rel_size __attribute_used__)
 {
   return 0;
 }
diff -uwr -xCVS ./ldso/i386/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/i386/elfinterp.c
--- ./ldso/i386/elfinterp.c	Tue Aug 17 15:37:51 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/i386/elfinterp.c	Mon Aug 23 14:10:50 2004
@@ -383,19 +383,19 @@
 }
 
 void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	(void)_dl_parse(rpnt->dyn, NULL, rel_addr, rel_size, _dl_do_lazy_reloc);
 }
 
 int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	return _dl_parse(rpnt->dyn, rpnt->dyn->symbol_scope, rel_addr, rel_size, _dl_do_reloc);
 }
 
 int _dl_parse_copy_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	return _dl_parse(rpnt->dyn, rpnt->next, rel_addr, rel_size, _dl_do_copy_reloc);
 }
diff -uwr -xCVS ./ldso/ldso.c /home/allius/dev/condor/src/uClibc/ldso/ldso/ldso.c
--- ./ldso/ldso.c	Fri Aug 20 10:47:16 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/ldso.c	Mon Aug 23 12:15:13 2004
@@ -109,7 +109,7 @@
 #endif
 
 	/* Store the page size for later use */
-	_dl_pagesize = (auxvt[AT_PAGESZ].a_un.a_val)? auxvt[AT_PAGESZ].a_un.a_val : PAGE_SIZE;
+	_dl_pagesize = (auxvt[AT_PAGESZ].a_un.a_val)? (size_t) auxvt[AT_PAGESZ].a_un.a_val : PAGE_SIZE;
 	/* Make it so _dl_malloc can use the page of memory we have already
 	 * allocated.  We shouldn't need to grab any more memory.  This must
 	 * be first since things like _dl_dprintf() use _dl_malloc().... */
@@ -836,7 +836,7 @@
 	if (_dl_malloc_function)
 		return (*_dl_malloc_function) (size);
 
-	if (_dl_malloc_addr - _dl_mmap_zero + size > _dl_pagesize) {
+	if (_dl_malloc_addr - _dl_mmap_zero + (unsigned)size > _dl_pagesize) {
 #ifdef __SUPPORT_LD_DEBUG_EARLY__
 		_dl_dprintf(2, "malloc: mmapping more memory\n");
 #endif
diff -uwr -xCVS ./ldso/m68k/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/m68k/elfinterp.c
--- ./ldso/m68k/elfinterp.c	Tue Aug 17 15:37:51 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/m68k/elfinterp.c	Mon Aug 23 14:10:29 2004
@@ -127,7 +127,7 @@
 }
 
 void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
   int i;
   char *strtab;
@@ -173,7 +173,7 @@
 }
 
 int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
   int i;
   char *strtab;
@@ -290,7 +290,7 @@
    at all.  */
 
 int _dl_parse_copy_information(struct dyn_elf *xpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
   int i;
   char *strtab;
diff -uwr -xCVS ./ldso/mips/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/mips/elfinterp.c
--- ./ldso/mips/elfinterp.c	Tue Aug 17 15:37:52 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/mips/elfinterp.c	Mon Aug 23 15:13:15 2004
@@ -158,14 +158,14 @@
 }
 
 void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	/* Nothing to do */
 	return;
 }
 
 int _dl_parse_copy_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	/* Nothing to do */
 	return 0;
@@ -173,7 +173,7 @@
 
 
 int _dl_parse_relocation_information(struct dyn_elf *xpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	Elf32_Sym *symtab;
 	Elf32_Rel *rpnt;
diff -uwr -xCVS ./ldso/powerpc/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/powerpc/elfinterp.c
--- ./ldso/powerpc/elfinterp.c	Tue Aug 17 15:37:52 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/powerpc/elfinterp.c	Mon Aug 23 15:11:56 2004
@@ -388,12 +388,11 @@
 }
 
 void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	struct elf_resolve *tpnt = rpnt->dyn;
 	Elf32_Word *plt, offset, i,  num_plt_entries, rel_offset_words;
 
-	(void) type;
 	num_plt_entries = rel_size / sizeof(ELF_RELOC);
 
 	rel_offset_words = PLT_DATA_START_WORDS(num_plt_entries);
@@ -485,14 +484,14 @@
 }
 
 int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	return _dl_parse(rpnt->dyn, rpnt, rel_addr, rel_size, _dl_do_reloc);
 }
 
 /* Should be a static inline instead, but that conflicts with ld_elf.h */
 int _dl_parse_copy_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	/* Not used! */
 	return 0;
diff -uwr -xCVS ./ldso/sh/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/sh/elfinterp.c
--- ./ldso/sh/elfinterp.c	Tue Aug 17 15:37:53 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/sh/elfinterp.c	Mon Aug 23 14:04:43 2004
@@ -390,19 +390,19 @@
 
 
 void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	(void)_dl_parse(rpnt->dyn, NULL, rel_addr, rel_size, _dl_do_lazy_reloc);
 }
 
 int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	return _dl_parse(rpnt->dyn, rpnt->dyn->symbol_scope, rel_addr, rel_size, _dl_do_reloc);
 }
 
 int _dl_parse_copy_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	return _dl_parse(rpnt->dyn, rpnt->next, rel_addr, rel_size, _dl_do_copy_reloc);
 }
diff -uwr -xCVS ./ldso/sh64/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/sh64/elfinterp.c
--- ./ldso/sh64/elfinterp.c	Tue Aug 17 15:37:53 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/sh64/elfinterp.c	Mon Aug 23 14:05:35 2004
@@ -501,19 +501,19 @@
 }
 
 void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	(void)_dl_parse(rpnt->dyn, NULL, rel_addr, rel_size, _dl_do_lazy_reloc);
 }
 
 int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	return _dl_parse(rpnt->dyn, rpnt->dyn->symbol_scope, rel_addr, rel_size, _dl_do_reloc);
 }
 
 int _dl_parse_copy_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
 	return _dl_parse(rpnt->dyn, rpnt->next, rel_addr, rel_size, _dl_do_copy_reloc);
 }
diff -uwr -xCVS ./ldso/sparc/elfinterp.c /home/allius/dev/condor/src/uClibc/ldso/ldso/sparc/elfinterp.c
--- ./ldso/sparc/elfinterp.c	Tue Aug 17 15:37:54 2004
+++ /home/allius/dev/condor/src/uClibc/ldso/ldso/sparc/elfinterp.c	Mon Aug 23 14:06:22 2004
@@ -147,7 +147,7 @@
 }
 
 void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
   int i;
   char * strtab;
@@ -187,7 +187,7 @@
 }
 
 int _dl_parse_relocation_information(struct dyn_elf *rpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
   int i;
   char * strtab;
@@ -297,7 +297,7 @@
    at all */
 
 int _dl_parse_copy_information(struct dyn_elf *xpnt,
-	unsigned long rel_addr, unsigned long rel_size, int type)
+	unsigned long rel_addr, unsigned long rel_size)
 {
   int i;
   char * strtab;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: allius.vcf
Type: text/x-vcard
Size: 303 bytes
Desc: Card for Stefan Allius
Url : http://lists.busybox.net/pipermail/uclibc/attachments/20040823/5f9a01b8/attachment.vcf 


More information about the uClibc mailing list