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
1399{1399{
1400 int i;1400 int i;
1401 1401
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
1402 if (printk_ratelimit()) {1409 if (printk_ratelimit()) {
1403 printk(KERN_INFO1410 printk(KERN_INFO
1404 "warning: process `%s' used the deprecated sysctl "1411 "warning: process `%s' used the deprecated sysctl "