On Thu, 1 Nov 2007, Mauro Carvalho Chehab wrote:Mauro, read the first message I linked too: http://lkml.org/lkml/2007/4/3/209 or http://article.gmane.org/gmane.linux.kernel/511684 Randy had this exact same problem with the md driver and a different ip checksum function. ip_compute_csum() _isn't_ defined under NET. It's part of the kernel's arch specific library. So it should be available for all modules to use as part of the kernel core. Except due to a flaw in the build system, symbols that are part of a library can't be used by modules unless there is at least one non-module user. There would be the same problem with strcat() or tons of other functions, if one were able to compile all users of these functions are modules. I wonder if the build system could be modified to take every object that's part of lib-y an turn it into a .ko file? The process would be something like this: build lib-y objects like they are and make lib.a filter out of lib-y all objects that don't export symbols. Since the objects are already compiled, this shouldn't be hard. obj-m += lib-y Now all the lib files will be modules, and if any module needs a symbol from one and it's not in the kernel, modprobe will load it. Minimum bloat, since the library code isn't loaded into the kernel until something is in the kernel that needs it. And we don't need to create kconfig symbols for library functions and remember to select them. Let depmod keep track of what library functions a module needs. -
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| debian developer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Adrian Bunk | Re: LSM conversion to static interface |
git: | |
| Gerrit Renker | [PATCH 26/37] dccp: Integration of dynamic feature activation - part 1 (socket set... |
| Jarek Poplawski | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Frans Pop | svc: failed to register lockdv1 RPC service (errno 97). |
| Linus Torvalds | Re: [GIT]: Networking |
