Re: [PATCH v3 13/17] lockd: use new hashtable implementation
From: Mathieu Desnoyers <hidden>
Date: 2012-08-22 13:22:52
Also in:
dm-devel, linux-mm, linux-nfs, lkml
* Sasha Levin (levinsasha928-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org) wrote:
On 08/22/2012 01:47 PM, J. Bruce Fields wrote:quoted
On Wed, Aug 22, 2012 at 04:27:08AM +0200, Sasha Levin wrote:quoted
+static int __init nlm_init(void) +{ + hash_init(nlm_files); + return 0; +} + +module_init(nlm_init);That's giving me: fs/lockd/svcsubs.o: In function `nlm_init': /home/bfields/linux-2.6/fs/lockd/svcsubs.c:454: multiple definition of `init_module' fs/lockd/svc.o:/home/bfields/linux-2.6/fs/lockd/svc.c:606: first defined here make[2]: *** [fs/lockd/lockd.o] Error 1 make[1]: *** [fs/lockd] Error 2 make[1]: *** Waiting for unfinished jobs....I tested this entire patch set both with linux-next and Linus' latest master, and it worked fine in both places. Is it possible that lockd has a -next tree which isn't pulled into linux-next? (there's nothing listed in MAINTAINERS that I could see).
fs/lockd/Makefile:
obj-$(CONFIG_LOCKD) += lockd.o
lockd-objs-y := clntlock.o clntproc.o clntxdr.o host.o svc.o svclock.o \
svcshare.o svcproc.o svcsubs.o mon.o xdr.o grace.o
your patch adds a module_init to svcsubs.c.
However, there is already one in svc.c, pulled into the same module.
in your test build, is CONFIG_LOCKD defined as "m" or "y" ? You should
always test both.
One solution here is to create a "local" init function in svcsubs.c and
expose it to svc.c, so the latter can call it from its module init
function.
Thanks,
Mathieu
--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html