[PATCH] tiny: Make *[ug]id16 support optional
authorMatt Mackall <mpm@selenic.com>
Sun, 8 Jan 2006 09:05:24 +0000 (01:05 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 9 Jan 2006 04:14:11 +0000 (20:14 -0800)
Configurable 16-bit UID and friends support

This allows turning off the legacy 16 bit UID interfaces on embedded platforms.

   text    data     bss     dec     hex filename
3330172  529036  190556 4049764  3dcb64 vmlinux-baseline
3328268  529040  190556 4047864  3dc3f8 vmlinux

From: Adrian Bunk <bunk@stusta.de>

    UID16 was accidentially disabled for !EMBEDDED.

Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 files changed:
arch/alpha/Kconfig
arch/arm/Kconfig
arch/arm26/Kconfig
arch/cris/Kconfig
arch/h8300/Kconfig
arch/i386/Kconfig
arch/m68k/Kconfig
arch/m68knommu/Kconfig
arch/parisc/Kconfig
arch/powerpc/Kconfig
arch/ppc/Kconfig
arch/sh/Kconfig
arch/sparc/Kconfig
arch/sparc64/Kconfig
arch/um/Kconfig
arch/v850/Kconfig
arch/x86_64/Kconfig
init/Kconfig
kernel/sys_ni.c

index 153337ff1d7b32b688b00659a7f54c5c7c3a0d5e..eedf41bf7057567b182ab221c64908da1685c98d 100644 (file)
@@ -18,9 +18,6 @@ config MMU
        bool
        default y
 
-config UID16
-       bool
-
 config RWSEM_GENERIC_SPINLOCK
        bool
 
index 16a5d522b2f2d93a2fcb097aeed620b3fd4090de..7a74e3e5f9161941d9d3e3613053332ec7e342a5 100644 (file)
@@ -46,10 +46,6 @@ config MCA
          <file:Documentation/mca.txt> (and especially the web page given
          there) before attempting to build an MCA bus kernel.
 
-config UID16
-       bool
-       default y
-
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
index 1f00b3d03a076a9a9f70a694198c42e96d9277ba..274e07019b461040660a0f10d6ed308c742813b9 100644 (file)
@@ -34,10 +34,6 @@ config FORCE_MAX_ZONEORDER
         int
         default 9
 
-config UID16
-       bool
-       default y
-
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
index e5979d68e3524d595f6a108fd122d30020f9b660..b832619497372a6336b8ad46f1b21f01728d98bf 100644 (file)
@@ -9,10 +9,6 @@ config MMU
        bool
        default y
 
-config UID16
-       bool
-       default y
-
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
index 26698a49f1535883d01a4a6031db7d08aeda284c..80940d712acf76b6bea39df0cc27a618d0f632b1 100644 (file)
@@ -21,10 +21,6 @@ config FPU
        bool
        default n
 
-config UID16
-       bool
-       default y
-
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
index 810ba8c37a5f70c220ec984a8b9bd3c0ee849632..d849c6870e3a3a7e7a44014020f709a3286874bf 100644 (file)
@@ -29,10 +29,6 @@ config MMU
 config SBUS
        bool
 
-config UID16
-       bool
-       default y
-
 config GENERIC_ISA_DMA
        bool
        default y
index 1dd5d18b22019b47eb60117f918510484433b8a6..96b91982805316769128ac8e5a00791b5b4cf8bf 100644 (file)
@@ -10,10 +10,6 @@ config MMU
        bool
        default y
 
-config UID16
-       bool
-       default y
-
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
index b96498120fe9aed0c3dc9565c89e9b93c92bb8d2..e2a6e864896080a42b2cd76e98e43b63d67dc92e 100644 (file)
@@ -17,10 +17,6 @@ config FPU
        bool
        default n
 
-config UID16
-       bool
-       default y
-
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
index 874a283edb958c72968258ba13cce826e0884e75..e77a06e9621ec54278ed6c440866e5e9205031c4 100644 (file)
@@ -19,9 +19,6 @@ config MMU
 config STACK_GROWSUP
        def_bool y
 
-config UID16
-       bool
-
 config RWSEM_GENERIC_SPINLOCK
        def_bool y
 
index db93dbc0e21a9896ee25c8dcc1c517f8f330d5cd..331483ace0d98120177f13e2718265e477f91b3d 100644 (file)
@@ -26,9 +26,6 @@ config MMU
        bool
        default y
 
-config UID16
-       bool
-
 config GENERIC_HARDIRQS
        bool
        default y
index cc3f64c084c5e886b29eadd081c77edc5bcace91..e396f4591d59a3083c1c42f8fdd3ca771b5498a4 100644 (file)
@@ -8,9 +8,6 @@ config MMU
        bool
        default y
 
-config UID16
-       bool
-
 config GENERIC_HARDIRQS
        bool
        default y
index 64f5ae0ff96d1474c3f4052848ced900c78d5a1f..8cf6d437a630e704a86a1c1ad1de3892753af4ec 100644 (file)
@@ -14,10 +14,6 @@ config SUPERH
          gaming console.  The SuperH port has a home page at
          <http://www.linux-sh.org/>.
 
-config UID16
-       bool
-       default y
-
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
index 56c34e7fd4ee8f6b0bd7481c438eaa19f66b6eb9..f944b58cdfe79fde99ab07fc2348f2af059875f6 100644 (file)
@@ -9,10 +9,6 @@ config MMU
        bool
        default y
 
-config UID16
-       bool
-       default y
-
 config HIGHMEM
        bool
        default y
index c4b7ad70cd7c5d1b756d46987ae90c5e536324ac..b775ceb4cf989e38ad2f186cc05566e331c4752b 100644 (file)
@@ -309,11 +309,6 @@ config COMPAT
        depends on SPARC32_COMPAT
        default y
 
-config UID16
-       bool
-       depends on SPARC32_COMPAT
-       default y
-
 config BINFMT_ELF32
        tristate "Kernel support for 32-bit ELF binaries"
        depends on SPARC32_COMPAT
index cdaa2ab19258e8cdbf8d88ec04b1469b4eb36d72..b4ff2e5760215460fcaa79fa859c826d479d26e3 100644 (file)
@@ -22,10 +22,6 @@ config SBUS
 config PCI
        bool
 
-config UID16
-       bool
-       default y
-
 config GENERIC_CALIBRATE_DELAY
        bool
        default y
index 310865903234750fc4599d7782f5ac0b3e6000a2..04494638b96387203fefc91aebab3be1045bf681 100644 (file)
@@ -10,9 +10,6 @@ mainmenu "uClinux/v850 (w/o MMU) Kernel Configuration"
 config MMU
                bool
        default n
-config UID16
-       bool
-       default n
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
index 6ece645e4dbea691191ccdaa8d49ec42025ab25f..4f3e925962c36576f9d2c7ee04fedbcdaf591d21 100644 (file)
@@ -542,11 +542,6 @@ config SYSVIPC_COMPAT
        depends on COMPAT && SYSVIPC
        default y
 
-config UID16
-       bool
-       depends on IA32_EMULATION
-       default y
-
 endmenu
 
 source "net/Kconfig"
index 0eb65f2ad8c91195b82a3e9717f1fc3a66e117fa..1a1f114a37e85e6756548ab03564293b9fb63bbd 100644 (file)
@@ -228,6 +228,15 @@ config CPUSETS
 
 source "usr/Kconfig"
 
+config UID16
+       bool "Enable 16-bit UID system calls" if EMBEDDED
+       depends !ALPHA && !PPC && !PPC64 && !PARISC && !V850 && !ARCH_S390X
+       depends !X86_64 || IA32_EMULATION
+       depends !SPARC64 || SPARC32_COMPAT
+       default y
+       help
+         This enables the legacy 16-bit UID syscall wrappers.
+
 config CC_OPTIMIZE_FOR_SIZE
        bool "Optimize for size (Look out for broken compilers!)"
        default y
index 7a8bc7f60d914e8a2e3bb5581e3667048a85d33e..72cafc922d39a85cb8ae4af63b9a525fab9e328e 100644 (file)
@@ -83,6 +83,25 @@ cond_syscall(sys_inotify_init);
 cond_syscall(sys_inotify_add_watch);
 cond_syscall(sys_inotify_rm_watch);
 cond_syscall(sys_migrate_pages);
+cond_syscall(sys_chown16);
+cond_syscall(sys_fchown16);
+cond_syscall(sys_getegid16);
+cond_syscall(sys_geteuid16);
+cond_syscall(sys_getgid16);
+cond_syscall(sys_getgroups16);
+cond_syscall(sys_getresgid16);
+cond_syscall(sys_getresuid16);
+cond_syscall(sys_getuid16);
+cond_syscall(sys_lchown16);
+cond_syscall(sys_setfsgid16);
+cond_syscall(sys_setfsuid16);
+cond_syscall(sys_setgid16);
+cond_syscall(sys_setgroups16);
+cond_syscall(sys_setregid16);
+cond_syscall(sys_setresgid16);
+cond_syscall(sys_setresuid16);
+cond_syscall(sys_setreuid16);
+cond_syscall(sys_setuid16);
 
 /* arch-specific weak syscall entries */
 cond_syscall(sys_pciconfig_read);