Re: [PATCH 22/23] sysctl arm: Remove binary sysctl support

Russell King
2009-11-08T22:57:11Z

On Sun, Nov 08, 2009 at 02:45:36PM -0800, Eric W. Biederman wrote:
> Russell King <rmk+lkml@arm.linux.org.uk> writes:
>
> >
> > NAK. Glibc uses these numeric sysctls to support ioperm emulation on ARM.
> > Therefore, removal of these numeric sysctls breaks that user interface:
> >
> > static int iobase_name[] = { CTL_BUS, BUS_ISA, BUS_ISA_PORT_BASE };
> > static int ioshift_name[] = { CTL_BUS, BUS_ISA, BUS_ISA_PORT_SHIFT };
> > if (! sysctl (iobase_name, 3, &io.io_base, &len, NULL, 0)
> > && ! sysctl (ioshift_name, 3, &io.shift, &len, NULL, 0))
> > {
> > io.initdone = 1;
> > return 0;
> > }
>
> Those still exist in sysctl_binary.c are provided by reading
> /proc/sys/bus/isa/membase, /proc/sys/bus/isa/portbase, and
> /proc/sys/bus/isa/portshift.
>
> The practical difference is that /proc support now must be compiled
> in to support sys_sysctl.

Have you checked whether glibc supports reading these from procfs rather
than sysfs using the code as it stands above?

If not, continued NAK due to user visible ABI change which will cause
breakage.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/