Re: [PATCH] mtd: Makefile fix (was Re: [PATCH] mtdsuper: licensce = GPL)
[PATCH] mtd: Makefile fix We want drivers/mtd/{mtdcore, mtdsuper, mtdpart}.c to be built and linked into the same mtd.ko module. Fix the Makefile to ensure this, and remove duplicate MODULE_ declarations in mtdpart.c, as mtdcore.c already has them. Signed-off-by: Satyam Sharma <[EMAIL PROTECTED]> Ok. I have mtd.ko now. Thank You Rafał -- Wszystko czego potrzebujesz latem: kremy do opalania, stroje kapielowe, maly romans http://link.interia.pl/f1b15 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] mtd: Makefile fix (was Re: [PATCH] mtdsuper: licensce = GPL)
[PATCH] mtd: Makefile fix We want drivers/mtd/{mtdcore, mtdsuper, mtdpart}.c to be built and linked into the same mtd.ko module. Fix the Makefile to ensure this, and remove duplicate MODULE_ declarations in mtdpart.c, as mtdcore.c already has them. Signed-off-by: Satyam Sharma [EMAIL PROTECTED] Ok. I have mtd.ko now. Thank You Rafał -- Wszystko czego potrzebujesz latem: kremy do opalania, stroje kapielowe, maly romans http://link.interia.pl/f1b15 - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] mtd: Makefile fix (was Re: [PATCH] mtdsuper: licensce = GPL)
Hi, On Thu, 2 Aug 2007, Rafał Bilski wrote: > [...] > CC drivers/mtd/chips/chipreg.mod.o > LD [M] drivers/mtd/chips/chipreg.ko > CC drivers/mtd/devices/block2mtd.mod.o > LD [M] drivers/mtd/devices/block2mtd.ko > CC drivers/mtd/mtd_blkdevs.mod.o > LD [M] drivers/mtd/mtd_blkdevs.ko > CC drivers/mtd/mtdblock.mod.o > LD [M] drivers/mtd/mtdblock.ko > CC drivers/mtd/mtdchar.mod.o > LD [M] drivers/mtd/mtdchar.ko > CC drivers/mtd/mtdcore.mod.o > LD [M] drivers/mtd/mtdcore.ko > CC drivers/mtd/mtdsuper.mod.o > LD [M] drivers/mtd/mtdsuper.ko > > % ls *.ko > mtd_blkdevs.ko mtdblock.ko mtdchar.ko mtdcore.ko mtdsuper.ko Yup, I end up with the above situation myself. Please try the patch below. David, are mtdcore, mtdsuper, mtdpart (and I also noticed mtdbdi.c in -mm kernel) supposed to be linked into the same module or are they supposed to be built as separate modules? If separate, we need to apply Rafal's patch and ensure MODULE_LICENSE (at least) in all the above files. If the same module, then please consider applying the patch below. [PATCH] mtd: Makefile fix We want drivers/mtd/{mtdcore, mtdsuper, mtdpart}.c to be built and linked into the same mtd.ko module. Fix the Makefile to ensure this, and remove duplicate MODULE_ declarations in mtdpart.c, as mtdcore.c already has them. Signed-off-by: Satyam Sharma <[EMAIL PROTECTED]> --- drivers/mtd/Makefile |2 +- drivers/mtd/mtdpart.c |4 2 files changed, 1 insertions(+), 5 deletions(-) diff --git a/drivers/mtd/Makefile b/drivers/mtd/Makefile index 451adcc..6d958a4 100644 --- a/drivers/mtd/Makefile +++ b/drivers/mtd/Makefile @@ -3,9 +3,9 @@ # # Core functionality. +obj-$(CONFIG_MTD) += mtd.o mtd-y := mtdcore.o mtdsuper.o mtd-$(CONFIG_MTD_PARTITIONS) += mtdpart.o -obj-$(CONFIG_MTD) += $(mtd-y) obj-$(CONFIG_MTD_CONCAT) += mtdconcat.o obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c index 9c62368..6174a97 100644 --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c @@ -560,7 +560,3 @@ int parse_mtd_partitions(struct mtd_info *master, const char **types, EXPORT_SYMBOL_GPL(parse_mtd_partitions); EXPORT_SYMBOL_GPL(register_mtd_parser); EXPORT_SYMBOL_GPL(deregister_mtd_parser); - -MODULE_LICENSE("GPL"); -MODULE_AUTHOR("Nicolas Pitre <[EMAIL PROTECTED]>"); -MODULE_DESCRIPTION("Generic support for partitioning of MTD devices");
Re: [PATCH] mtdsuper: licensce = GPL
You should apply -rcN or -gitX patches on the previous Linus' kernel (2.6.x) and not the 2.6.x.y "-stable" ones -- those are a "parallel" tree. Done. Hmm, you've got mtdpart build separately as well. Could you redo as per what I suggested above (take 2.6.22, apply -rc1, then -rc1-git3) and then rebuild after "make oldconfig" ... and let us know if you still end up with these modules? This time I used Linux-2.6.23-rc1-git11 with config for my desktop plus MTD selected as . Previous config was for my "router". Let me know if You need "desktop" config too. CC [M] drivers/mtd/mtdcore.o CC [M] drivers/mtd/mtdsuper.o CC [M] drivers/mtd/mtdchar.o CC [M] drivers/mtd/mtd_blkdevs.o CC [M] drivers/mtd/mtdblock.o [...] CC drivers/mtd/chips/chipreg.mod.o LD [M] drivers/mtd/chips/chipreg.ko CC drivers/mtd/devices/block2mtd.mod.o LD [M] drivers/mtd/devices/block2mtd.ko CC drivers/mtd/mtd_blkdevs.mod.o LD [M] drivers/mtd/mtd_blkdevs.ko CC drivers/mtd/mtdblock.mod.o LD [M] drivers/mtd/mtdblock.ko CC drivers/mtd/mtdchar.mod.o LD [M] drivers/mtd/mtdchar.ko CC drivers/mtd/mtdcore.mod.o LD [M] drivers/mtd/mtdcore.ko CC drivers/mtd/mtdsuper.mod.o LD [M] drivers/mtd/mtdsuper.ko % ls *.ko mtd_blkdevs.ko mtdblock.ko mtdchar.ko mtdcore.ko mtdsuper.ko Could also be a make/toolchain issue at your end, for all I know. I'm using "Arch Linux" now. % make -v GNU Make 3.81 [...] This program built for i686-pc-linux-gnu % gcc -v Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../configure --prefix=/usr --enable-shared --enable-languages=c,c++,objc --enable-threads=posix --enable-__cxa_atexit --disable-multilib --libdir=/usr/lib --libexecdir=/usr/lib --enable-clocale=gnu --disable-libstdcxx-pch --with-tune=generic Thread model: posix gcc version 4.2.1 20070704 (prerelease) % ld -v GNU ld version 2.17 Satyam Rafał -- Jak najszybciej dostac sie na wymarzona plaze? Znajdz trase ekspresowa http://link.interia.pl/f1b0d - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] mtdsuper: licensce = GPL
Hi, On Thu, 2 Aug 2007, Rafał Bilski wrote: > > > block2mtd: version $Revision: 1.30 $ > > > block2mtd: mtd0: [d: /dev/sdc2] erase_size = 64KiB [65536] > > > mtdsuper: module license 'unspecified' taints kernel. > > > mtdsuper: Unknown symbol get_mtd_device > > > mtdsuper: Unknown symbol put_mtd_device > > > jffs2: Unknown symbol get_sb_mtd > > > jffs2: Unknown symbol kill_mtd_super > > > > That's weird. I'm wondering how did you manage to build mtdsuper as a > > separate module in the first place? It always gets linked with mtdcore > > (which has all the necessary module decoration stuff) into the "mtd" > > module itself, at least that;s what the Makefile says ... > > I don't know. Just "make oldconfig" (~2.6.21) and "make". I have mtdcore as a > separate module too. That's weird: /Makefile claims that it is 2.6.22.1, but > looking at the sources I see changes present in 2.6.23-rc1. I have downloaded > 2.6.22.1 in the first place and patched it with -rc1 and -rc1-git3 patch. You should apply -rcN or -gitX patches on the previous Linus' kernel (2.6.x) and not the 2.6.x.y "-stable" ones -- those are a "parallel" tree. > # ls *.ko > ftl.ko mtd_blkdevs.ko mtdblock.ko mtdchar.ko mtdcore.ko mtdpart.ko > mtdsuper.ko Hmm, you've got mtdpart build separately as well. Could you redo as per what I suggested above (take 2.6.22, apply -rc1, then -rc1-git3) and then rebuild after "make oldconfig" ... and let us know if you still end up with these modules? Could also be a make/toolchain issue at your end, for all I know. Satyam
Re: [PATCH] mtdsuper: licensce = GPL
block2mtd: version $Revision: 1.30 $ block2mtd: mtd0: [d: /dev/sdc2] erase_size = 64KiB [65536] mtdsuper: module license 'unspecified' taints kernel. mtdsuper: Unknown symbol get_mtd_device mtdsuper: Unknown symbol put_mtd_device jffs2: Unknown symbol get_sb_mtd jffs2: Unknown symbol kill_mtd_super That's weird. I'm wondering how did you manage to build mtdsuper as a separate module in the first place? It always gets linked with mtdcore (which has all the necessary module decoration stuff) into the "mtd" module itself, at least that;s what the Makefile says ... I don't know. Just "make oldconfig" (~2.6.21) and "make". I have mtdcore as a separate module too. That's weird: /Makefile claims that it is 2.6.22.1, but looking at the sources I see changes present in 2.6.23-rc1. I have downloaded 2.6.22.1 in the first place and patched it with -rc1 and -rc1-git3 patch. # ls *.ko ftl.ko mtd_blkdevs.ko mtdblock.ko mtdchar.ko mtdcore.ko mtdpart.ko mtdsuper.ko # # Automatically generated make config: don't edit # Linux kernel version: 2.6.22.1 # Wed Aug 1 19:27:00 2007 # CONFIG_X86_32=y CONFIG_GENERIC_TIME=y CONFIG_GENERIC_CMOS_UPDATE=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_SEMAPHORE_SLEEPERS=y CONFIG_X86=y CONFIG_MMU=y CONFIG_ZONE_DMA=y CONFIG_QUICKLIST=y CONFIG_GENERIC_ISA_DMA=y CONFIG_GENERIC_IOMAP=y CONFIG_GENERIC_BUG=y CONFIG_GENERIC_HWEIGHT=y CONFIG_ARCH_MAY_HAVE_PC_FDC=y CONFIG_DMI=y CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" # # Code maturity level options # CONFIG_EXPERIMENTAL=y CONFIG_BROKEN_ON_SMP=y CONFIG_INIT_ENV_ARG_LIMIT=32 # # General setup # CONFIG_LOCALVERSION="" CONFIG_LOCALVERSION_AUTO=y # CONFIG_SWAP is not set CONFIG_SYSVIPC=y CONFIG_SYSVIPC_SYSCTL=y CONFIG_POSIX_MQUEUE=y # CONFIG_BSD_PROCESS_ACCT is not set # CONFIG_TASKSTATS is not set # CONFIG_USER_NS is not set # CONFIG_AUDIT is not set # CONFIG_IKCONFIG is not set CONFIG_LOG_BUF_SHIFT=14 # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_RELAY is not set # CONFIG_BLK_DEV_INITRD is not set CONFIG_CC_OPTIMIZE_FOR_SIZE=y CONFIG_SYSCTL=y # CONFIG_EMBEDDED is not set CONFIG_UID16=y CONFIG_SYSCTL_SYSCALL=y CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_HOTPLUG=y CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_ELF_CORE=y CONFIG_BASE_FULL=y CONFIG_FUTEX=y CONFIG_ANON_INODES=y CONFIG_EPOLL=y CONFIG_SIGNALFD=y CONFIG_TIMERFD=y CONFIG_EVENTFD=y CONFIG_SHMEM=y CONFIG_VM_EVENT_COUNTERS=y CONFIG_SLUB_DEBUG=y # CONFIG_SLAB is not set CONFIG_SLUB=y # CONFIG_SLOB is not set CONFIG_RT_MUTEXES=y # CONFIG_TINY_SHMEM is not set CONFIG_BASE_SMALL=0 CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y # CONFIG_MODULE_FORCE_UNLOAD is not set # CONFIG_MODVERSIONS is not set # CONFIG_MODULE_SRCVERSION_ALL is not set CONFIG_KMOD=y CONFIG_BLOCK=y CONFIG_LBD=y # CONFIG_BLK_DEV_IO_TRACE is not set # CONFIG_LSF is not set # CONFIG_BLK_DEV_BSG is not set # # IO Schedulers # CONFIG_IOSCHED_NOOP=y # CONFIG_IOSCHED_AS is not set # CONFIG_IOSCHED_DEADLINE is not set CONFIG_IOSCHED_CFQ=y # CONFIG_DEFAULT_AS is not set # CONFIG_DEFAULT_DEADLINE is not set CONFIG_DEFAULT_CFQ=y # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="cfq" # # Processor type and features # # CONFIG_TICK_ONESHOT is not set # CONFIG_NO_HZ is not set # CONFIG_HIGH_RES_TIMERS is not set # CONFIG_SMP is not set CONFIG_X86_PC=y # CONFIG_X86_ELAN is not set # CONFIG_X86_VOYAGER is not set # CONFIG_X86_NUMAQ is not set # CONFIG_X86_SUMMIT is not set # CONFIG_X86_BIGSMP is not set # CONFIG_X86_VISWS is not set # CONFIG_X86_GENERICARCH is not set # CONFIG_X86_ES7000 is not set # CONFIG_PARAVIRT is not set # CONFIG_M386 is not set # CONFIG_M486 is not set # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set # CONFIG_MPENTIUMII is not set # CONFIG_MPENTIUMIII is not set # CONFIG_MPENTIUMM is not set # CONFIG_MCORE2 is not set # CONFIG_MPENTIUM4 is not set # CONFIG_MK6 is not set # CONFIG_MK7 is not set # CONFIG_MK8 is not set # CONFIG_MCRUSOE is not set # CONFIG_MEFFICEON is not set # CONFIG_MWINCHIPC6 is not set # CONFIG_MWINCHIP2 is not set # CONFIG_MWINCHIP3D is not set CONFIG_MGEODEGX1=y # CONFIG_MGEODE_LX is not set # CONFIG_MCYRIXIII is not set # CONFIG_MVIAC3_2 is not set # CONFIG_MVIAC7 is not set # CONFIG_X86_GENERIC is not set CONFIG_X86_CMPXCHG=y CONFIG_X86_L1_CACHE_SHIFT=4 CONFIG_X86_XADD=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y # CONFIG_ARCH_HAS_ILOG2_U32 is not set # CONFIG_ARCH_HAS_ILOG2_U64 is not set CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_X86_PPRO_FENCE=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_X86_ALIGNMENT_16=y CONFIG_X86_TSC=y CONFIG_X86_MINIMUM_CPU_FAMILY=4 CONFIG_HPET_TIMER=y CONFIG_HPET_EMULATE_RTC=y # CONFIG_PREEMPT_NONE is not set CONFIG_PREEMPT_VOLUNTARY=y # CONFIG_PREEMPT is not set # CONFIG_X86_UP_APIC is not set CONFIG_X86_MCE=y # CONFIG_X86_MCE_NONFATAL is not set
Re: [PATCH] mtdsuper: licensce = GPL
block2mtd: version $Revision: 1.30 $ block2mtd: mtd0: [d: /dev/sdc2] erase_size = 64KiB [65536] mtdsuper: module license 'unspecified' taints kernel. mtdsuper: Unknown symbol get_mtd_device mtdsuper: Unknown symbol put_mtd_device jffs2: Unknown symbol get_sb_mtd jffs2: Unknown symbol kill_mtd_super That's weird. I'm wondering how did you manage to build mtdsuper as a separate module in the first place? It always gets linked with mtdcore (which has all the necessary module decoration stuff) into the mtd module itself, at least that;s what the Makefile says ... I don't know. Just make oldconfig (~2.6.21) and make. I have mtdcore as a separate module too. That's weird: /Makefile claims that it is 2.6.22.1, but looking at the sources I see changes present in 2.6.23-rc1. I have downloaded 2.6.22.1 in the first place and patched it with -rc1 and -rc1-git3 patch. # ls *.ko ftl.ko mtd_blkdevs.ko mtdblock.ko mtdchar.ko mtdcore.ko mtdpart.ko mtdsuper.ko # # Automatically generated make config: don't edit # Linux kernel version: 2.6.22.1 # Wed Aug 1 19:27:00 2007 # CONFIG_X86_32=y CONFIG_GENERIC_TIME=y CONFIG_GENERIC_CMOS_UPDATE=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_SEMAPHORE_SLEEPERS=y CONFIG_X86=y CONFIG_MMU=y CONFIG_ZONE_DMA=y CONFIG_QUICKLIST=y CONFIG_GENERIC_ISA_DMA=y CONFIG_GENERIC_IOMAP=y CONFIG_GENERIC_BUG=y CONFIG_GENERIC_HWEIGHT=y CONFIG_ARCH_MAY_HAVE_PC_FDC=y CONFIG_DMI=y CONFIG_DEFCONFIG_LIST=/lib/modules/$UNAME_RELEASE/.config # # Code maturity level options # CONFIG_EXPERIMENTAL=y CONFIG_BROKEN_ON_SMP=y CONFIG_INIT_ENV_ARG_LIMIT=32 # # General setup # CONFIG_LOCALVERSION= CONFIG_LOCALVERSION_AUTO=y # CONFIG_SWAP is not set CONFIG_SYSVIPC=y CONFIG_SYSVIPC_SYSCTL=y CONFIG_POSIX_MQUEUE=y # CONFIG_BSD_PROCESS_ACCT is not set # CONFIG_TASKSTATS is not set # CONFIG_USER_NS is not set # CONFIG_AUDIT is not set # CONFIG_IKCONFIG is not set CONFIG_LOG_BUF_SHIFT=14 # CONFIG_SYSFS_DEPRECATED is not set # CONFIG_RELAY is not set # CONFIG_BLK_DEV_INITRD is not set CONFIG_CC_OPTIMIZE_FOR_SIZE=y CONFIG_SYSCTL=y # CONFIG_EMBEDDED is not set CONFIG_UID16=y CONFIG_SYSCTL_SYSCALL=y CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_HOTPLUG=y CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_ELF_CORE=y CONFIG_BASE_FULL=y CONFIG_FUTEX=y CONFIG_ANON_INODES=y CONFIG_EPOLL=y CONFIG_SIGNALFD=y CONFIG_TIMERFD=y CONFIG_EVENTFD=y CONFIG_SHMEM=y CONFIG_VM_EVENT_COUNTERS=y CONFIG_SLUB_DEBUG=y # CONFIG_SLAB is not set CONFIG_SLUB=y # CONFIG_SLOB is not set CONFIG_RT_MUTEXES=y # CONFIG_TINY_SHMEM is not set CONFIG_BASE_SMALL=0 CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y # CONFIG_MODULE_FORCE_UNLOAD is not set # CONFIG_MODVERSIONS is not set # CONFIG_MODULE_SRCVERSION_ALL is not set CONFIG_KMOD=y CONFIG_BLOCK=y CONFIG_LBD=y # CONFIG_BLK_DEV_IO_TRACE is not set # CONFIG_LSF is not set # CONFIG_BLK_DEV_BSG is not set # # IO Schedulers # CONFIG_IOSCHED_NOOP=y # CONFIG_IOSCHED_AS is not set # CONFIG_IOSCHED_DEADLINE is not set CONFIG_IOSCHED_CFQ=y # CONFIG_DEFAULT_AS is not set # CONFIG_DEFAULT_DEADLINE is not set CONFIG_DEFAULT_CFQ=y # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED=cfq # # Processor type and features # # CONFIG_TICK_ONESHOT is not set # CONFIG_NO_HZ is not set # CONFIG_HIGH_RES_TIMERS is not set # CONFIG_SMP is not set CONFIG_X86_PC=y # CONFIG_X86_ELAN is not set # CONFIG_X86_VOYAGER is not set # CONFIG_X86_NUMAQ is not set # CONFIG_X86_SUMMIT is not set # CONFIG_X86_BIGSMP is not set # CONFIG_X86_VISWS is not set # CONFIG_X86_GENERICARCH is not set # CONFIG_X86_ES7000 is not set # CONFIG_PARAVIRT is not set # CONFIG_M386 is not set # CONFIG_M486 is not set # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set # CONFIG_MPENTIUMII is not set # CONFIG_MPENTIUMIII is not set # CONFIG_MPENTIUMM is not set # CONFIG_MCORE2 is not set # CONFIG_MPENTIUM4 is not set # CONFIG_MK6 is not set # CONFIG_MK7 is not set # CONFIG_MK8 is not set # CONFIG_MCRUSOE is not set # CONFIG_MEFFICEON is not set # CONFIG_MWINCHIPC6 is not set # CONFIG_MWINCHIP2 is not set # CONFIG_MWINCHIP3D is not set CONFIG_MGEODEGX1=y # CONFIG_MGEODE_LX is not set # CONFIG_MCYRIXIII is not set # CONFIG_MVIAC3_2 is not set # CONFIG_MVIAC7 is not set # CONFIG_X86_GENERIC is not set CONFIG_X86_CMPXCHG=y CONFIG_X86_L1_CACHE_SHIFT=4 CONFIG_X86_XADD=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y # CONFIG_ARCH_HAS_ILOG2_U32 is not set # CONFIG_ARCH_HAS_ILOG2_U64 is not set CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_X86_PPRO_FENCE=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_X86_ALIGNMENT_16=y CONFIG_X86_TSC=y CONFIG_X86_MINIMUM_CPU_FAMILY=4 CONFIG_HPET_TIMER=y CONFIG_HPET_EMULATE_RTC=y # CONFIG_PREEMPT_NONE is not set CONFIG_PREEMPT_VOLUNTARY=y # CONFIG_PREEMPT is not set # CONFIG_X86_UP_APIC is not set CONFIG_X86_MCE=y # CONFIG_X86_MCE_NONFATAL is not set CONFIG_VM86=y #
Re: [PATCH] mtdsuper: licensce = GPL
Hi, On Thu, 2 Aug 2007, Rafał Bilski wrote: block2mtd: version $Revision: 1.30 $ block2mtd: mtd0: [d: /dev/sdc2] erase_size = 64KiB [65536] mtdsuper: module license 'unspecified' taints kernel. mtdsuper: Unknown symbol get_mtd_device mtdsuper: Unknown symbol put_mtd_device jffs2: Unknown symbol get_sb_mtd jffs2: Unknown symbol kill_mtd_super That's weird. I'm wondering how did you manage to build mtdsuper as a separate module in the first place? It always gets linked with mtdcore (which has all the necessary module decoration stuff) into the mtd module itself, at least that;s what the Makefile says ... I don't know. Just make oldconfig (~2.6.21) and make. I have mtdcore as a separate module too. That's weird: /Makefile claims that it is 2.6.22.1, but looking at the sources I see changes present in 2.6.23-rc1. I have downloaded 2.6.22.1 in the first place and patched it with -rc1 and -rc1-git3 patch. You should apply -rcN or -gitX patches on the previous Linus' kernel (2.6.x) and not the 2.6.x.y -stable ones -- those are a parallel tree. # ls *.ko ftl.ko mtd_blkdevs.ko mtdblock.ko mtdchar.ko mtdcore.ko mtdpart.ko mtdsuper.ko Hmm, you've got mtdpart build separately as well. Could you redo as per what I suggested above (take 2.6.22, apply -rc1, then -rc1-git3) and then rebuild after make oldconfig ... and let us know if you still end up with these modules? Could also be a make/toolchain issue at your end, for all I know. Satyam
Re: [PATCH] mtdsuper: licensce = GPL
You should apply -rcN or -gitX patches on the previous Linus' kernel (2.6.x) and not the 2.6.x.y -stable ones -- those are a parallel tree. Done. Hmm, you've got mtdpart build separately as well. Could you redo as per what I suggested above (take 2.6.22, apply -rc1, then -rc1-git3) and then rebuild after make oldconfig ... and let us know if you still end up with these modules? This time I used Linux-2.6.23-rc1-git11 with config for my desktop plus MTD selected as M. Previous config was for my router. Let me know if You need desktop config too. CC [M] drivers/mtd/mtdcore.o CC [M] drivers/mtd/mtdsuper.o CC [M] drivers/mtd/mtdchar.o CC [M] drivers/mtd/mtd_blkdevs.o CC [M] drivers/mtd/mtdblock.o [...] CC drivers/mtd/chips/chipreg.mod.o LD [M] drivers/mtd/chips/chipreg.ko CC drivers/mtd/devices/block2mtd.mod.o LD [M] drivers/mtd/devices/block2mtd.ko CC drivers/mtd/mtd_blkdevs.mod.o LD [M] drivers/mtd/mtd_blkdevs.ko CC drivers/mtd/mtdblock.mod.o LD [M] drivers/mtd/mtdblock.ko CC drivers/mtd/mtdchar.mod.o LD [M] drivers/mtd/mtdchar.ko CC drivers/mtd/mtdcore.mod.o LD [M] drivers/mtd/mtdcore.ko CC drivers/mtd/mtdsuper.mod.o LD [M] drivers/mtd/mtdsuper.ko % ls *.ko mtd_blkdevs.ko mtdblock.ko mtdchar.ko mtdcore.ko mtdsuper.ko Could also be a make/toolchain issue at your end, for all I know. I'm using Arch Linux now. % make -v GNU Make 3.81 [...] This program built for i686-pc-linux-gnu % gcc -v Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../configure --prefix=/usr --enable-shared --enable-languages=c,c++,objc --enable-threads=posix --enable-__cxa_atexit --disable-multilib --libdir=/usr/lib --libexecdir=/usr/lib --enable-clocale=gnu --disable-libstdcxx-pch --with-tune=generic Thread model: posix gcc version 4.2.1 20070704 (prerelease) % ld -v GNU ld version 2.17 Satyam Rafał -- Jak najszybciej dostac sie na wymarzona plaze? Znajdz trase ekspresowa http://link.interia.pl/f1b0d - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] mtd: Makefile fix (was Re: [PATCH] mtdsuper: licensce = GPL)
Hi, On Thu, 2 Aug 2007, Rafał Bilski wrote: [...] CC drivers/mtd/chips/chipreg.mod.o LD [M] drivers/mtd/chips/chipreg.ko CC drivers/mtd/devices/block2mtd.mod.o LD [M] drivers/mtd/devices/block2mtd.ko CC drivers/mtd/mtd_blkdevs.mod.o LD [M] drivers/mtd/mtd_blkdevs.ko CC drivers/mtd/mtdblock.mod.o LD [M] drivers/mtd/mtdblock.ko CC drivers/mtd/mtdchar.mod.o LD [M] drivers/mtd/mtdchar.ko CC drivers/mtd/mtdcore.mod.o LD [M] drivers/mtd/mtdcore.ko CC drivers/mtd/mtdsuper.mod.o LD [M] drivers/mtd/mtdsuper.ko % ls *.ko mtd_blkdevs.ko mtdblock.ko mtdchar.ko mtdcore.ko mtdsuper.ko Yup, I end up with the above situation myself. Please try the patch below. David, are mtdcore, mtdsuper, mtdpart (and I also noticed mtdbdi.c in -mm kernel) supposed to be linked into the same module or are they supposed to be built as separate modules? If separate, we need to apply Rafal's patch and ensure MODULE_LICENSE (at least) in all the above files. If the same module, then please consider applying the patch below. [PATCH] mtd: Makefile fix We want drivers/mtd/{mtdcore, mtdsuper, mtdpart}.c to be built and linked into the same mtd.ko module. Fix the Makefile to ensure this, and remove duplicate MODULE_ declarations in mtdpart.c, as mtdcore.c already has them. Signed-off-by: Satyam Sharma [EMAIL PROTECTED] --- drivers/mtd/Makefile |2 +- drivers/mtd/mtdpart.c |4 2 files changed, 1 insertions(+), 5 deletions(-) diff --git a/drivers/mtd/Makefile b/drivers/mtd/Makefile index 451adcc..6d958a4 100644 --- a/drivers/mtd/Makefile +++ b/drivers/mtd/Makefile @@ -3,9 +3,9 @@ # # Core functionality. +obj-$(CONFIG_MTD) += mtd.o mtd-y := mtdcore.o mtdsuper.o mtd-$(CONFIG_MTD_PARTITIONS) += mtdpart.o -obj-$(CONFIG_MTD) += $(mtd-y) obj-$(CONFIG_MTD_CONCAT) += mtdconcat.o obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c index 9c62368..6174a97 100644 --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c @@ -560,7 +560,3 @@ int parse_mtd_partitions(struct mtd_info *master, const char **types, EXPORT_SYMBOL_GPL(parse_mtd_partitions); EXPORT_SYMBOL_GPL(register_mtd_parser); EXPORT_SYMBOL_GPL(deregister_mtd_parser); - -MODULE_LICENSE(GPL); -MODULE_AUTHOR(Nicolas Pitre [EMAIL PROTECTED]); -MODULE_DESCRIPTION(Generic support for partitioning of MTD devices);
Re: [PATCH] mtdsuper: licensce = GPL
On Wed, 1 Aug 2007, Rafał Bilski wrote: > block2mtd: version $Revision: 1.30 $ > block2mtd: mtd0: [d: /dev/sdc2] erase_size = 64KiB [65536] > mtdsuper: module license 'unspecified' taints kernel. > mtdsuper: Unknown symbol get_mtd_device > mtdsuper: Unknown symbol put_mtd_device > jffs2: Unknown symbol get_sb_mtd > jffs2: Unknown symbol kill_mtd_super That's weird. I'm wondering how did you manage to build mtdsuper as a separate module in the first place? It always gets linked with mtdcore (which has all the necessary module decoration stuff) into the "mtd" module itself, at least that;s what the Makefile says ...
Re: [PATCH] mtdsuper: licensce = GPL
On Wed, 1 Aug 2007, Rafał Bilski wrote: block2mtd: version $Revision: 1.30 $ block2mtd: mtd0: [d: /dev/sdc2] erase_size = 64KiB [65536] mtdsuper: module license 'unspecified' taints kernel. mtdsuper: Unknown symbol get_mtd_device mtdsuper: Unknown symbol put_mtd_device jffs2: Unknown symbol get_sb_mtd jffs2: Unknown symbol kill_mtd_super That's weird. I'm wondering how did you manage to build mtdsuper as a separate module in the first place? It always gets linked with mtdcore (which has all the necessary module decoration stuff) into the mtd module itself, at least that;s what the Makefile says ...