vserver 1.9.3
[linux-2.6.git] / kernel / exec_domain.c
index a5686ae..5fba353 100644 (file)
@@ -44,29 +44,7 @@ struct exec_domain default_exec_domain = {
 static void
 default_handler(int segment, struct pt_regs *regp)
 {
-       u_long                  pers = 0;
-
-       /*
-        * This may have been a static linked SVr4 binary, so we would
-        * have the personality set incorrectly. Or it might have been
-        * a Solaris/x86 binary. We can tell which because the former
-        * uses lcall7, while the latter used lcall 0x27.
-        * Try to find or load the appropriate personality, and fall back
-        * to just forcing a SEGV.
-        *
-        * XXX: this is IA32-specific and should be moved to the MD-tree.
-        */
-       switch (segment) {
-#ifdef __i386__
-       case 0x07:
-               pers = abi_defhandler_lcall7;
-               break;
-       case 0x27:
-               pers = PER_SOLARIS;
-               break;
-#endif
-       }
-       set_personality(pers);
+       set_personality(0);
 
        if (current_thread_info()->exec_domain->handler != default_handler)
                current_thread_info()->exec_domain->handler(segment, regp);
@@ -228,100 +206,3 @@ sys_personality(u_long personality)
 EXPORT_SYMBOL(register_exec_domain);
 EXPORT_SYMBOL(unregister_exec_domain);
 EXPORT_SYMBOL(__set_personality);
-
-/*
- * We have to have all sysctl handling for the Linux-ABI
- * in one place as the dynamic registration of sysctls is
- * horribly crufty in Linux <= 2.4.
- *
- * I hope the new sysctl schemes discussed for future versions
- * will obsolete this.
- *
- *                             --hch
- */
-
-u_long abi_defhandler_coff = PER_SCOSVR3;
-u_long abi_defhandler_elf = PER_LINUX;
-u_long abi_defhandler_lcall7 = PER_SVR4;
-u_long abi_defhandler_libcso = PER_SVR4;
-u_int abi_traceflg;
-int abi_fake_utsname;
-
-static struct ctl_table abi_table[] = {
-       {
-               .ctl_name       = ABI_DEFHANDLER_COFF,
-               .procname       = "defhandler_coff",
-               .data           = &abi_defhandler_coff,
-               .maxlen         = sizeof(int),
-               .mode           = 0644,
-               .proc_handler   = &proc_doulongvec_minmax,
-       },
-       {
-               .ctl_name       = ABI_DEFHANDLER_ELF,
-               .procname       = "defhandler_elf",
-               .data           = &abi_defhandler_elf,
-               .maxlen         = sizeof(int),
-               .mode           = 0644,
-               .proc_handler   = &proc_doulongvec_minmax,
-       },
-       {
-               .ctl_name       = ABI_DEFHANDLER_LCALL7,
-               .procname       = "defhandler_lcall7",
-               .data           = &abi_defhandler_lcall7,
-               .maxlen         = sizeof(int),
-               .mode           = 0644,
-               .proc_handler   = &proc_doulongvec_minmax,
-       },
-       {
-               .ctl_name       = ABI_DEFHANDLER_LIBCSO,
-               .procname       = "defhandler_libcso",
-               .data           = &abi_defhandler_libcso,
-               .maxlen         = sizeof(int),
-               .mode           = 0644,
-               .proc_handler   = &proc_doulongvec_minmax,
-       },
-       {
-               .ctl_name       = ABI_TRACE,
-               .procname       = "trace",
-               .data           = &abi_traceflg,
-               .maxlen         = sizeof(u_int),
-               .mode           = 0644,
-               .proc_handler   = &proc_dointvec,
-       },
-       {
-               .ctl_name       = ABI_FAKE_UTSNAME,
-               .procname       = "fake_utsname",
-               .data           = &abi_fake_utsname,
-               .maxlen         = sizeof(int),
-               .mode           = 0644,
-               .proc_handler   = &proc_dointvec,
-       },
-       { .ctl_name = 0 }
-};
-
-static struct ctl_table abi_root_table[] = {
-       {
-               .ctl_name       = CTL_ABI,
-               .procname       = "abi",
-               .mode           = 0555,
-               .child          = abi_table,
-       },
-       { .ctl_name = 0 }
-};
-
-static int __init
-abi_register_sysctl(void)
-{
-       register_sysctl_table(abi_root_table, 1);
-       return 0;
-}
-
-__initcall(abi_register_sysctl);
-
-
-EXPORT_SYMBOL(abi_defhandler_coff);
-EXPORT_SYMBOL(abi_defhandler_elf);
-EXPORT_SYMBOL(abi_defhandler_lcall7);
-EXPORT_SYMBOL(abi_defhandler_libcso);
-EXPORT_SYMBOL(abi_traceflg);
-EXPORT_SYMBOL(abi_fake_utsname);