Re: [PATCH] sysctl: Allow /proc/sys without sys_sysctl

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Andi Kleen <[email protected]> writes:

> On Wednesday 12 July 2006 17:32, Eric W. Biederman wrote:
>> Andi Kleen <[email protected]> writes:
>> 
>> >> So it will correctly handle that sysctl being compiled out, and
>> >> the fallback to using /proc.  The code seems to have been
>> >> doing that since it was added to glibc in 2000.
>> >
>> > Using /proc is extremly slow for this.
>> 
>> How so it is the same code in the kernel.  Is open much slower than
>> sys_sysctl?
>
> Yes, the VFS adds quite a lot of overhead with its zillions of
> locks and other complicated things.
>
> I have also people complaining about /proc/cpuinfo overhead.

Yes. I just confirmed that /proc/sys access is about an order
of magnitude slower.  I goofed and forgot to add you to the
cc list but I just sent a patch to Ulrich to switch glibc to using
uname for this case.  uname is even faster than sysctl.

I am very curious to understand where the overhead is coming
from.  It may just be the VFS or it may be stupidities in
the /proc implementation.  If things are really as bad as
they appear it puts a serious damper on the plan9 style everything
is a filesystem approach.

>> > You added significant cost to each program startup.
>> 
>> Not each program only the ones that use pthreads.
>
> In modern glibc it's basically everything

It shouldn't be.   You can support be thread safe without pulling
in glibc.  But yes it is common.

>> > I still think it's a good idea to simulate that sysctl and printk
>> > the others.
>> 
>> To reduce the noise something like that makes sense.  I'm going to
>> see if I can get glibc to use uname which should have the same effect.
>
> And still printk for all old binaries?  Not a good idea.
>
> You have to check for  this case in the printk stub anyways and 
> if you check for it you can as well emulate it
> (with a big fat comment that this won't be done for any other sysctl)

I will see how it goes.

Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux