aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2003-10-21 06:45:29 +0000
committerEric Andersen <andersen@codepoet.org>2003-10-21 06:45:29 +0000
commit951df20b7e8f776e71c1063f910c34f5cfd0bec4 (patch)
treebdf613ba209d44b10ca53fa19a8c59e034bc607b
parentacf6c917e27998af76fd065713f403bb2648252e (diff)
downloadbusybox-w32-951df20b7e8f776e71c1063f910c34f5cfd0bec4.tar.gz
busybox-w32-951df20b7e8f776e71c1063f910c34f5cfd0bec4.tar.bz2
busybox-w32-951df20b7e8f776e71c1063f910c34f5cfd0bec4.zip
Do a better job of dealing with screwy s390 abi changes
-rw-r--r--modutils/insmod.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/modutils/insmod.c b/modutils/insmod.c
index 07e891f24..a30aed9e7 100644
--- a/modutils/insmod.c
+++ b/modutils/insmod.c
@@ -253,7 +253,7 @@
253#ifndef MODUTILS_MODULE_H 253#ifndef MODUTILS_MODULE_H
254static const int MODUTILS_MODULE_H = 1; 254static const int MODUTILS_MODULE_H = 1;
255 255
256#ident "$Id: insmod.c,v 1.104 2003/10/20 05:40:40 andersen Exp $" 256#ident "$Id: insmod.c,v 1.105 2003/10/21 06:45:29 andersen Exp $"
257 257
258/* This file contains the structures used by the 2.0 and 2.1 kernels. 258/* This file contains the structures used by the 2.0 and 2.1 kernels.
259 We do not use the kernel headers directly because we do not wish 259 We do not use the kernel headers directly because we do not wish
@@ -474,7 +474,7 @@ int delete_module(const char *);
474#ifndef MODUTILS_OBJ_H 474#ifndef MODUTILS_OBJ_H
475static const int MODUTILS_OBJ_H = 1; 475static const int MODUTILS_OBJ_H = 1;
476 476
477#ident "$Id: insmod.c,v 1.104 2003/10/20 05:40:40 andersen Exp $" 477#ident "$Id: insmod.c,v 1.105 2003/10/21 06:45:29 andersen Exp $"
478 478
479/* The relocatable object is manipulated using elfin types. */ 479/* The relocatable object is manipulated using elfin types. */
480 480
@@ -954,6 +954,9 @@ arch_apply_relocation(struct obj_file *f,
954 *(unsigned int *) loc += isym->gotent.offset; 954 *(unsigned int *) loc += isym->gotent.offset;
955 break; 955 break;
956 956
957#ifndef R_390_GOTOFF32
958#define R_390_GOTOFF32 R_390_GOTOFF
959#endif
957 case R_390_GOTOFF32: 960 case R_390_GOTOFF32:
958 assert(got != 0); 961 assert(got != 0);
959 *loc += v - got; 962 *loc += v - got;