Hi all, Starting with 2.6.18, the official kernels do not have the sysctl syscall anymore [1] or rather it has been replaced by a dummy syscall that always fail and print a message in the log, and thus the sysctl() function will not work anymore.
It already started to annoy some people having their log filled with such messages. I have checked the whole archive (i386 only for now), and verified each dynamically linked object that use the __sysctl symbol. The list of package is quite small: - glibc (woody, sarge, etch, sid, experimental) - newlib (sarge, etch, sid) I have investigated the glibc case, and there are two places where sysctl() is used. The first one is in libpthread (both linuxthreads and nptl), that explains why the number of message in the log is important, it occurs for every binary using threads! It appears the message is actually harmless, as there is a fallback to /proc/sys instead. I have already checked a patch in our SVN to use /proc/sys directly. I also added a warning at link time so that so users are warned not to use sysctl(). The second is in ioperm and concerns arm only. I will try to do a patch in the next few days. I haven't investigated newlib yet. I will try to check for binaries on other architectures, but it takes a long time for each of them, so it will probably last a few days. I think such fixes are something to have, as they are rumors that etch may be shipped with 2.6.18, and as 2.6.18 will be out before etch! Bye, Aurelien [1] http://lkml.org/lkml/2006/7/15/54 -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `- people.debian.org/~aurel32 | www.aurel32.net -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]