difficulty with symbol export

From: V. Guruprasad (prasad@watson.ibm.com)
Date: Mon Apr 29 2002 - 07:35:14 EST


Hi all,

Just playing with the kernel code, I added a silly function

        struct file_operations *get_socket_fileops ()
        {
                return &socket_file_ops;
        }

at the bottom of net/socket.c, and

        EXPORT_SYMBOL(get_socket_fileops);

into net/netsyms.c, expecting to be able to call this function
from a loadable module and to printk the function addresses
from the file_operations struct.

However, on rebooting into this modified kernel, my test module
fails to load, saying

        foo.o: unresolved symbol get_socket_fileops

even though the symbol looks exported in vmlinux (nm) and
in /boot/System.map:

        c020ca90 T get_socket_fileops
        0c2b52bf ? __kstrtab_get_socket_fileops
        0c2ba358 ? __ksymtab_get_socket_fileops

which looks exactly like sock_create, which the module *is*
able to address.

Any pointers?

thanks,
-prasad.

------------------------
V. Guruprasad ('prasad'),
http://www.columbia.edu/~vg96
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Apr 30 2002 - 22:00:17 EST