Messages in this thread Patch in this message | | | Date | Mon, 07 Aug 2000 02:28:08 -0700 | From | John Silva <> | Subject | Re: [PATCH] Undefined symbols in 2.4.0-test6pre[12] |
| |
This works much better. There's a race between the genksyms rule and the modversions rule where the modversions dependencies are processed before genksyms finishes.
--- linux/Rules.make.orig Mon Aug 7 01:32:11 2000 +++ linux/Rules.make Mon Aug 7 02:22:05 2000 @@ -197,14 +197,14 @@ endif
$(MODINCL)/%.ver: %.c - @if [ ! -r $(MODINCL)/$*.stamp -o $(MODINCL)/$*.stamp -ot $< ]; then \ + @(if [ ! -r $(MODINCL)/$*.stamp -o $(MODINCL)/$*.stamp -ot $< ]; then \
echo '$(CC) $(CFLAGS) -E -D__GENKSYMS__ $<'; \ echo '| $(GENKSYMS) $(genksyms_smp_prefix) -k $(VERSION).$(PATCHLEVEL).$(SUBLEVEL) > $@.tmp'; \ $(CC) $(CFLAGS) -E -D__GENKSYMS__ $< \ | $(GENKSYMS) $(genksyms_smp_prefix) -k $(VERSION).$(PATCHLEVEL).$(SUBLEVEL) > $@.tmp; \ if [ -r $@ ] && cmp -s $@ $@.tmp; then echo $@ is unchanged; rm -f $@.tmp; \ else echo mv $@.tmp $@; mv -f $@.tmp $@; fi; \ - fi; touch $(MODINCL)/$*.stamp + fi; touch $(MODINCL)/$*.stamp; )
$(addprefix $(MODINCL)/,$(SYMTAB_OBJS:.o=.ver)): $(TOPDIR)/include/linux/autoconf.h --
John Silva wrote:
> This seems to be due to missing #includes in linux/modversions.h. Problem > occurs on test6 pre1-6. > > It seems that the make process does not always include the .ver files from > the last directory which produced them. > > The following patch seems to correct the problem. Can anyone explain why > this works? > > --- linux/Rules.make.orig Mon Aug 7 01:32:11 2000 > +++ linux/Rules.make Mon Aug 7 01:28:18 2000 > @@ -220,7 +220,7 @@ > echo "#endif"; \ > ) > $@ > > -dep fastdep: $(TOPDIR)/include/linux/modversions.h > +dep fastdep: dummy $(TOPDIR)/include/linux/modversions.h > > endif # SYMTAB_OBJS > > -- > > John Silva wrote: > > > I've been getting errors from depmod when booting 2.4.0-test6pre[12] > > with modules. > > 2.4.0-test5 builds and runs fine with the same .config. > > > > Is there something specific I can look for to resolve this? I can see > > no apparent changes in > > the test6pre patches to cause this. > > > > Errors and config follow. > > > > depmod: *** Unresolved symbols in > > /lib/modules/2.4.0-test6_5/kernel/drivers/block/loop.o > > depmod: schedule > > depmod: *** Unresolved symbols in > > /lib/modules/2.4.0-test6_5/kernel/drivers/block/cpqarray.o > > depmod: __io_virt_debug > > depmod: __generic_copy_from_user > > depmod: schedule > > depmod: iounmap > > depmod: __ioremap > > depmod: __const_udelay > > depmod: __generic_copy_to_user > > depmod: *** Unresolved symbols in > > /lib/modules/2.4.0-test6_5/kernel/drivers/char/cpia.o > > depmod: schedule > > depmod: __const_udelay > > depmod: __generic_copy_to_user > > depmod: *** Unresolved symbols in > > /lib/modules/2.4.0-test6_5/kernel/drivers/char/i2c-old.o > > depmod: __udelay > > depmod: *** Unresolved symbols in > > /lib/modules/2.4.0-test6_5/kernel/drivers/char/bw-qcam.o > > depmod: schedule > > > > <body removed> > > > > > - > > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > > the body of a message to majordomo@vger.rutgers.edu > > Please read the FAQ at http://www.tux.org/lkml/ > > - > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.rutgers.edu > Please read the FAQ at http://www.tux.org/lkml/
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |