Fwd: Problem: plist_add undefined!
Jonathan Neuschäfer
j.neuschaefer at gmx.net
Wed Dec 21 17:34:11 EST 2011
Monica Puig-Pey <puigpeym at unican.es> wrote:
> An error is produced when using the MACROs:
> - PLIST_HEAD_INIT(head, _lock)
In the version i'm looking at (v3.2-rc5) PLIST_NODE_INIT takes only
one argument.
> - PLIST_NODE_INIT(node, __prio)
>
> it says :
>
>
> /home/monica/Escritorio/plists/priolist.c: In function 'init_module':
> /home/monica/Escritorio/plists/priolist.c:67: error: expected
> expression before '.' token
You need to use it like this:
struct plist_head head = PLIST_HEAD_INIT(head);
(it can only be used for static initializations)
> “WARNING: "plist_add" [/home/monica/Escritorio/plists/priolist.ko] undefined! ”
>
> I made the module GPL, I don't know what am I doing wrong.
>
> Does anybody have an idea what is happening?
Hmm. plist_add and plist_del seem to be lacking EXPORT_SYMBOL
alltogether; could you try compiling with this patch as a workaround?
----------------------------------------
diff --git a/lib/plist.c b/lib/plist.c
index a0a4da4..e9cca99 100644
--- a/lib/plist.c
+++ b/lib/plist.c
@@ -133,6 +133,9 @@ void plist_del(struct plist_node *node, struct plist_head *head)
plist_check_head(head);
}
+EXPORT_SYMBOL(plist_add);
+EXPORT_SYMBOL(plist_del);
+
#ifdef CONFIG_DEBUG_PI_LIST
#include <linux/sched.h>
#include <linux/module.h>
----------------------------------------
Hope This Helps,
Jonathan Neuschäfer
More information about the Kernelnewbies
mailing list