History

[sysctl] Fix breakage on systems with older glibc

As predicted during code review, the sysctl(2) changes made systems with old glibc nearly unusable. About every command gives a: warning: process `ls' used the deprecated sysctl system call with 1.4 warning in the log. I see this on a SUSE 10.0 system with glibc 2.3.5. Don't warn for this common case.

Andi Kleen committed 16 years ago

Commit 61cf6931 parent 288f02b1 file · +7 −0Browse files

Showing the changes to kernel/sysctl_binary.c (1 of 1 file). Show all

Unified · Split

kernel/sysctl_binary.c+7−0
@@ -1399,6 +1399,13 @@ static void deprecated_sysctl_warning(const int *name, int nlen) · 1398 unmodified lines
13991399 {
14001400 int i;
14011401
1402+ /*
1403+ * CTL_KERN/KERN_VERSION is used by older glibc and cannot
1404+ * ever go away.
1405+ */
1406+ if (name[0] == CTL_KERN && name[1] == KERN_VERSION)
1407+ return;
1408+
14021409 if (printk_ratelimit()) {
14031410 printk(KERN_INFO
14041411 "warning: process `%s' used the deprecated sysctl "