update to 2.6.26-rc7
nuke 2.6.25-rc6-git7 and merged file2alias-cross-compile-fix.patch svn path=/dists/trunk/linux-2.6/; revision=10974
This commit is contained in:
parent
a7391c0516
commit
2d7edbd000
|
@ -1,4 +1,4 @@
|
|||
linux-2.6 (2.6.25~rc6-1~experimental.1) UNRELEASED; urgency=low
|
||||
linux-2.6 (2.6.25~rc7-1~experimental.1) UNRELEASED; urgency=low
|
||||
|
||||
* New upstream release (closes: #456799, #468440)
|
||||
|
||||
|
|
|
@ -1,118 +0,0 @@
|
|||
Find below a patch that detect when we do a cross build and thus ignore
|
||||
the check.
|
||||
|
||||
This is NOT tested as I do not have access to my dev box atm.
|
||||
I have only tested I could build a i386 kernel.
|
||||
|
||||
So please let me know if this works and then I can push it upstrem
|
||||
hopefully already by tomorrow.
|
||||
|
||||
Note: I decided to name the variable KBUILD_BUILDHOST as this is more
|
||||
descriptive then SUBARCH. We can later clean up the naming and get rid
|
||||
of SUBARCH but I refrained from this to make the pacht minimal.
|
||||
|
||||
Sam
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index a229784..de28306 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -189,7 +189,7 @@ SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
|
||||
# Alternatively CROSS_COMPILE can be set in the environment.
|
||||
# Default value for CROSS_COMPILE is not to prefix executables
|
||||
# Note: Some architectures assign CROSS_COMPILE in their arch/*/Makefile
|
||||
-
|
||||
+export KBUILD_BUILDHOST := $(SUBARCH)
|
||||
ARCH ?= $(SUBARCH)
|
||||
CROSS_COMPILE ?=
|
||||
|
||||
diff --git a/scripts/Makefile.modpost b/scripts/Makefile.modpost
|
||||
index cfc004e..2d20640 100644
|
||||
--- a/scripts/Makefile.modpost
|
||||
+++ b/scripts/Makefile.modpost
|
||||
@@ -58,6 +58,9 @@ modules := $(patsubst %.o,%.ko, $(wildcard $(__modules:.ko=.o)))
|
||||
# Stop after building .o files if NOFINAL is set. Makes compile tests quicker
|
||||
_modpost: $(if $(KBUILD_MODPOST_NOFINAL), $(modules:.ko:.o),$(modules))
|
||||
|
||||
+ifneq ($(KBUILD_BUILDHOST),$(ARCH))
|
||||
+ cross_build := 1
|
||||
+endif
|
||||
|
||||
# Step 2), invoke modpost
|
||||
# Includes step 3,4
|
||||
@@ -70,7 +73,8 @@ modpost = scripts/mod/modpost \
|
||||
$(if $(CONFIG_DEBUG_SECTION_MISMATCH),,-S) \
|
||||
$(if $(CONFIG_MARKERS),-K $(kernelmarkersfile)) \
|
||||
$(if $(CONFIG_MARKERS),-M $(markersfile)) \
|
||||
- $(if $(KBUILD_EXTMOD)$(KBUILD_MODPOST_WARN),-w)
|
||||
+ $(if $(KBUILD_EXTMOD)$(KBUILD_MODPOST_WARN),-w) \
|
||||
+ $(if $(cross_build),-c)
|
||||
|
||||
quiet_cmd_modpost = MODPOST $(words $(filter-out vmlinux FORCE, $^)) modules
|
||||
cmd_modpost = $(modpost) -s
|
||||
diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
|
||||
index 9ddf944..348d868 100644
|
||||
--- a/scripts/mod/file2alias.c
|
||||
+++ b/scripts/mod/file2alias.c
|
||||
@@ -51,11 +51,13 @@ do { \
|
||||
sprintf(str + strlen(str), "*"); \
|
||||
} while(0)
|
||||
|
||||
+unsigned int cross_build = 0;
|
||||
/**
|
||||
* Check that sizeof(device_id type) are consistent with size of section
|
||||
* in .o file. If in-consistent then userspace and kernel does not agree
|
||||
* on actual size which is a bug.
|
||||
* Also verify that the final entry in the table is all zeros.
|
||||
+ * Ignore both checks if build host differ from target host and size differs.
|
||||
**/
|
||||
static void device_id_check(const char *modname, const char *device_id,
|
||||
unsigned long size, unsigned long id_size,
|
||||
@@ -64,6 +66,8 @@ static void device_id_check(const char *modname, const char *device_id,
|
||||
int i;
|
||||
|
||||
if (size % id_size || size < id_size) {
|
||||
+ if (cross_build != 0)
|
||||
+ return;
|
||||
fatal("%s: sizeof(struct %s_device_id)=%lu is not a modulo "
|
||||
"of the size of section __mod_%s_device_table=%lu.\n"
|
||||
"Fix definition of struct %s_device_id "
|
||||
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
|
||||
index 695b5d6..110cf24 100644
|
||||
--- a/scripts/mod/modpost.c
|
||||
+++ b/scripts/mod/modpost.c
|
||||
@@ -2026,7 +2026,7 @@ int main(int argc, char **argv)
|
||||
int opt;
|
||||
int err;
|
||||
|
||||
- while ((opt = getopt(argc, argv, "i:I:msSo:awM:K:")) != -1) {
|
||||
+ while ((opt = getopt(argc, argv, "i:I:cmsSo:awM:K:")) != -1) {
|
||||
switch (opt) {
|
||||
case 'i':
|
||||
kernel_read = optarg;
|
||||
@@ -2035,6 +2035,9 @@ int main(int argc, char **argv)
|
||||
module_read = optarg;
|
||||
external_module = 1;
|
||||
break;
|
||||
+ case 'c':
|
||||
+ cross_build = 1;
|
||||
+ break;
|
||||
case 'm':
|
||||
modversions = 1;
|
||||
break;
|
||||
diff --git a/scripts/mod/modpost.h b/scripts/mod/modpost.h
|
||||
index 565c587..09f58e3 100644
|
||||
--- a/scripts/mod/modpost.h
|
||||
+++ b/scripts/mod/modpost.h
|
||||
@@ -135,6 +135,7 @@ struct elf_info {
|
||||
};
|
||||
|
||||
/* file2alias.c */
|
||||
+extern unsigned int cross_build;
|
||||
void handle_moddevtable(struct module *mod, struct elf_info *info,
|
||||
Elf_Sym *sym, const char *symname);
|
||||
void add_moddevtable(struct buffer *buf, struct module *mod);
|
||||
--
|
||||
To unsubscribe from this list: send the line "unsubscribe netdev" in
|
||||
the body of a message to majordomo@vger.kernel.org
|
||||
More majordomo info at http://vger.kernel.org/majordomo-info.html
|
File diff suppressed because it is too large
Load Diff
|
@ -1,4 +1,3 @@
|
|||
+ bugfix/all/patch-2.6.25-rc6-git7
|
||||
+ debian/version.patch
|
||||
+ debian/kernelvariables.patch
|
||||
+ debian/doc-build-parallel.patch
|
||||
|
@ -34,6 +33,5 @@
|
|||
+ features/all/mtd-nor-add-support-for-the-st-m29w400db-flash-chip.patch
|
||||
+ bugfix/all/rtc-x1205-new-style-conversion.patch
|
||||
+ bugfix/all/rtc-x1205-new-style-conversion-checkpatch-fixes.patch
|
||||
+ bugfix/all/file2alias-cross-compile-fix.patch
|
||||
+ bugfix/arm/ixp4xx-beeper-add-module_alias.patch
|
||||
+ bugfix/all/mtd-prevent-physmap-from-causing-request_module-runaway-loop-modprobe-net-pf-1.patch
|
||||
|
|
Loading…
Reference in New Issue