public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] modpost warnings with external modules w/o modversions
@ 2004-07-19 12:51 Johannes Stezenbach
  2004-07-19 14:59 ` sam
  0 siblings, 1 reply; 5+ messages in thread
From: Johannes Stezenbach @ 2004-07-19 12:51 UTC (permalink / raw)
  To: linux-kernel; +Cc: Kai Germaschewski, Sam Ravnborg

Hi,

when building external modules (DVB drivers in this case)
for a kernel without CONFIG_MODVERSIONS I get a number of:

make[1]: Entering directory `/usr/src/linux-2.6.8-rc1'
  Building modules, stage 2.
  MODPOST
*** Warning: "dvb_unregister_frontend_new" [.../dvb-kernel/build-2.6/ves1x93.ko] has no CRC!


I believe that there is a small bug in modpost.c which the
patch below attempts to fix.


--- linux-2.6.8-rc1/scripts/modpost.c.orig	2004-07-16 19:22:24.000000000 +0200
+++ linux-2.6.8-rc1/scripts/modpost.c	2004-07-16 19:22:37.000000000 +0200
@@ -649,7 +649,6 @@ read_dump(const char *fname)
 
 		if (!(mod = find_module(modname))) {
 			if (is_vmlinux(modname)) {
-				modversions = 1;
 				have_vmlinux = 1;
 			}
 			mod = new_module(NOFAIL(strdup(modname)));

Johannes

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] modpost warnings with external modules w/o modversions
  2004-07-19 12:51 [PATCH] modpost warnings with external modules w/o modversions Johannes Stezenbach
@ 2004-07-19 14:59 ` sam
  2004-07-19 17:36   ` Johannes Stezenbach
  0 siblings, 1 reply; 5+ messages in thread
From: sam @ 2004-07-19 14:59 UTC (permalink / raw)
  To: Johannes Stezenbach, linux-kernel, Kai Germaschewski,
	Sam Ravnborg, Pavel Roskin

On Mon, Jul 19, 2004 at 02:51:06PM +0200, Johannes Stezenbach wrote:
> Hi,
> 
> when building external modules (DVB drivers in this case)
> for a kernel without CONFIG_MODVERSIONS I get a number of:
> 
> make[1]: Entering directory `/usr/src/linux-2.6.8-rc1'
>   Building modules, stage 2.
>   MODPOST
> *** Warning: "dvb_unregister_frontend_new" [.../dvb-kernel/build-2.6/ves1x93.ko] has no CRC!
> 
> 
> I believe that there is a small bug in modpost.c which the
> patch below attempts to fix.

Pavel Roskin posted a better patch for the same problem.
I just have not come around to it yet.

Here is an (outdated maybe) copy of the patch.

	Sam

--- linux.orig/scripts/Makefile.modpost
+++ linux/scripts/Makefile.modpost
@@ -51,8 +51,8 @@
 #  Includes step 3,4
 quiet_cmd_modpost = MODPOST
       cmd_modpost = scripts/modpost \
-	$(if $(KBUILD_EXTMOD),-i,-o) $(symverfile) \
-	$(filter-out FORCE,$^)
+	$(if $(CONFIG_MODVERSIONS),-m) $(if $(KBUILD_EXTMOD),-i,-o) \
+	$(symverfile) $(filter-out FORCE,$^)
 
 .PHONY: __modpost
 __modpost: $(wildcard vmlinux) $(modules:.ko=.o) FORCE
--- linux.orig/scripts/modpost.c
+++ linux/scripts/modpost.c
@@ -342,7 +342,6 @@ handle_modversions(struct module *mod, s
 			crc = (unsigned int) sym->st_value;
 			add_exported_symbol(symname + strlen(CRC_PFX),
 					    mod, &crc);
-			modversions = 1;
 		}
 		break;
 	case SHN_UNDEF:
@@ -648,7 +647,6 @@ read_dump(const char *fname)
 
 		if (!(mod = find_module(modname))) {
 			if (is_vmlinux(modname)) {
-				modversions = 1;
 				have_vmlinux = 1;
 			}
 			mod = new_module(NOFAIL(strdup(modname)));
@@ -695,11 +693,14 @@ main(int argc, char **argv)
 	char *dump_read = NULL, *dump_write = NULL;
 	int opt;
 
-	while ((opt = getopt(argc, argv, "i:o:")) != -1) {
+	while ((opt = getopt(argc, argv, "i:mo:")) != -1) {
 		switch(opt) {
 			case 'i':
 				dump_read = optarg;
 				break;
+			case 'm':
+				modversions = 1;
+				break;
 			case 'o':
 				dump_write = optarg;
 				break;


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] modpost warnings with external modules w/o modversions
  2004-07-19 14:59 ` sam
@ 2004-07-19 17:36   ` Johannes Stezenbach
  2004-07-30 22:41     ` Johannes Stezenbach
  0 siblings, 1 reply; 5+ messages in thread
From: Johannes Stezenbach @ 2004-07-19 17:36 UTC (permalink / raw)
  To: linux-kernel, Kai Germaschewski, Sam Ravnborg, Pavel Roskin

On Mon, Jul 19, 2004 at 04:59:11PM +0200, sam@ravnborg.org wrote:
> On Mon, Jul 19, 2004 at 02:51:06PM +0200, Johannes Stezenbach wrote:
> > Hi,
> > 
> > when building external modules (DVB drivers in this case)
> > for a kernel without CONFIG_MODVERSIONS I get a number of:
> > 
> > make[1]: Entering directory `/usr/src/linux-2.6.8-rc1'
> >   Building modules, stage 2.
> >   MODPOST
> > *** Warning: "dvb_unregister_frontend_new" [.../dvb-kernel/build-2.6/ves1x93.ko] has no CRC!
> > 
> > 
> > I believe that there is a small bug in modpost.c which the
> > patch below attempts to fix.
> 
> Pavel Roskin posted a better patch for the same problem.
> I just have not come around to it yet.
> 
> Here is an (outdated maybe) copy of the patch.

OK, that worked (patch applied with 1 line offset, I include a
refreshed patch for 2.6.8-rc1 below).

I also tested with CONFIG_MODVERSIONS (I never used that before),
and that seems to work, too.


Thanks,
Johannes


--- linux-2.6.8-rc1/scripts/Makefile.modpost.orig	2004-07-19 17:38:25.000000000 +0200
+++ linux-2.6.8-rc1/scripts/Makefile.modpost	2004-07-19 17:38:28.000000000 +0200
@@ -51,8 +51,8 @@
 #  Includes step 3,4
 quiet_cmd_modpost = MODPOST
       cmd_modpost = scripts/modpost \
-	$(if $(KBUILD_EXTMOD),-i,-o) $(symverfile) \
-	$(filter-out FORCE,$^)
+	$(if $(CONFIG_MODVERSIONS),-m) $(if $(KBUILD_EXTMOD),-i,-o) \
+	$(symverfile) $(filter-out FORCE,$^)
 
 .PHONY: __modpost
 __modpost: $(wildcard vmlinux) $(modules:.ko=.o) FORCE
--- linux-2.6.8-rc1/scripts/modpost.c.orig	2004-07-16 19:22:24.000000000 +0200
+++ linux-2.6.8-rc1/scripts/modpost.c	2004-07-19 17:38:28.000000000 +0200
@@ -343,7 +343,6 @@ handle_modversions(struct module *mod, s
 			crc = (unsigned int) sym->st_value;
 			add_exported_symbol(symname + strlen(CRC_PFX),
 					    mod, &crc);
-			modversions = 1;
 		}
 		break;
 	case SHN_UNDEF:
@@ -649,7 +648,6 @@ read_dump(const char *fname)
 
 		if (!(mod = find_module(modname))) {
 			if (is_vmlinux(modname)) {
-				modversions = 1;
 				have_vmlinux = 1;
 			}
 			mod = new_module(NOFAIL(strdup(modname)));
@@ -696,11 +694,14 @@ main(int argc, char **argv)
 	char *dump_read = NULL, *dump_write = NULL;
 	int opt;
 
-	while ((opt = getopt(argc, argv, "i:o:")) != -1) {
+	while ((opt = getopt(argc, argv, "i:mo:")) != -1) {
 		switch(opt) {
 			case 'i':
 				dump_read = optarg;
 				break;
+			case 'm':
+				modversions = 1;
+				break;
 			case 'o':
 				dump_write = optarg;
 				break;

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] modpost warnings with external modules w/o modversions
  2004-07-19 17:36   ` Johannes Stezenbach
@ 2004-07-30 22:41     ` Johannes Stezenbach
  2004-07-31  7:02       ` Sam Ravnborg
  0 siblings, 1 reply; 5+ messages in thread
From: Johannes Stezenbach @ 2004-07-30 22:41 UTC (permalink / raw)
  To: linux-kernel, Kai Germaschewski, Sam Ravnborg, Pavel Roskin; +Cc: Andrew Morton

Hi,

On Mon, Jul 19, 2004 at 07:36:10PM +0200, I wrote:
> On Mon, Jul 19, 2004 at 04:59:11PM +0200, sam@ravnborg.org wrote:
> > On Mon, Jul 19, 2004 at 02:51:06PM +0200, Johannes Stezenbach wrote:
> > > Hi,
> > > 
> > > when building external modules (DVB drivers in this case)
> > > for a kernel without CONFIG_MODVERSIONS I get a number of:
> > > 
> > > make[1]: Entering directory `/usr/src/linux-2.6.8-rc1'
> > >   Building modules, stage 2.
> > >   MODPOST
> > > *** Warning: "dvb_unregister_frontend_new" [.../dvb-kernel/build-2.6/ves1x93.ko] has no CRC!
> > > 
> > > 
> > > I believe that there is a small bug in modpost.c which the
> > > patch below attempts to fix.
> > 
> > Pavel Roskin posted a better patch for the same problem.
> > I just have not come around to it yet.
> > 
> > Here is an (outdated maybe) copy of the patch.
> 
> OK, that worked (patch applied with 1 line offset, I include a
> refreshed patch for 2.6.8-rc1 below).
> 
> I also tested with CONFIG_MODVERSIONS (I never used that before),
> and that seems to work, too.

Is there any chance that this patch could go into mainline kernel
anytime soon? It seems that this isn't even in bk-kbuild that
went into 2.6.8-rc2-mm1.

Johannes


--- linux-2.6.8-rc1/scripts/Makefile.modpost.orig	2004-07-19 17:38:25.000000000 +0200
+++ linux-2.6.8-rc1/scripts/Makefile.modpost	2004-07-19 17:38:28.000000000 +0200
@@ -51,8 +51,8 @@
 #  Includes step 3,4
 quiet_cmd_modpost = MODPOST
       cmd_modpost = scripts/modpost \
-	$(if $(KBUILD_EXTMOD),-i,-o) $(symverfile) \
-	$(filter-out FORCE,$^)
+	$(if $(CONFIG_MODVERSIONS),-m) $(if $(KBUILD_EXTMOD),-i,-o) \
+	$(symverfile) $(filter-out FORCE,$^)
 
 .PHONY: __modpost
 __modpost: $(wildcard vmlinux) $(modules:.ko=.o) FORCE
--- linux-2.6.8-rc1/scripts/modpost.c.orig	2004-07-16 19:22:24.000000000 +0200
+++ linux-2.6.8-rc1/scripts/modpost.c	2004-07-19 17:38:28.000000000 +0200
@@ -343,7 +343,6 @@ handle_modversions(struct module *mod, s
 			crc = (unsigned int) sym->st_value;
 			add_exported_symbol(symname + strlen(CRC_PFX),
 					    mod, &crc);
-			modversions = 1;
 		}
 		break;
 	case SHN_UNDEF:
@@ -649,7 +648,6 @@ read_dump(const char *fname)
 
 		if (!(mod = find_module(modname))) {
 			if (is_vmlinux(modname)) {
-				modversions = 1;
 				have_vmlinux = 1;
 			}
 			mod = new_module(NOFAIL(strdup(modname)));
@@ -696,11 +694,14 @@ main(int argc, char **argv)
 	char *dump_read = NULL, *dump_write = NULL;
 	int opt;
 
-	while ((opt = getopt(argc, argv, "i:o:")) != -1) {
+	while ((opt = getopt(argc, argv, "i:mo:")) != -1) {
 		switch(opt) {
 			case 'i':
 				dump_read = optarg;
 				break;
+			case 'm':
+				modversions = 1;
+				break;
 			case 'o':
 				dump_write = optarg;
 				break;

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] modpost warnings with external modules w/o modversions
  2004-07-30 22:41     ` Johannes Stezenbach
@ 2004-07-31  7:02       ` Sam Ravnborg
  0 siblings, 0 replies; 5+ messages in thread
From: Sam Ravnborg @ 2004-07-31  7:02 UTC (permalink / raw)
  To: Johannes Stezenbach, linux-kernel, Kai Germaschewski,
	Sam Ravnborg, Pavel Roskin, Andrew Morton

On Sat, Jul 31, 2004 at 12:41:31AM +0200, Johannes Stezenbach wrote:
> 
> Is there any chance that this patch could go into mainline kernel
> anytime soon? It seems that this isn't even in bk-kbuild that
> went into 2.6.8-rc2-mm1.

It's an oversight that it was not included.
It will be there in next round of kbuild patches.

	Sam

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2004-07-31  7:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-07-19 12:51 [PATCH] modpost warnings with external modules w/o modversions Johannes Stezenbach
2004-07-19 14:59 ` sam
2004-07-19 17:36   ` Johannes Stezenbach
2004-07-30 22:41     ` Johannes Stezenbach
2004-07-31  7:02       ` Sam Ravnborg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox