From: Rik van Riel (riel_at_surriel.com)
Date: Wed 01 Oct 2003 - 20:00:04 BST
OK, looks like we've got syscall number 273 allocated for
a sys_vserver or a more politically neutral sys_virtual_context
---------- Forwarded message ----------
Date: Wed, 01 Oct 2003 17:43:42 +0000
From: Linux Kernel Mailing List <linux-kernel_at_vger.kernel.org>
To: bk-commits-head_at_vger.kernel.org
Subject: [PATCH] syscall number for vserver
ChangeSet 1.1379, 2003/10/01 10:43:42-07:00, riel_at_surriel.com
[PATCH] syscall number for vserver
Vserver is a patch that implements BSD jail style virtual host semantics
inside Linux, where every process not only runs in its own namespace (it
reuses the chroot code for that, should switch to CLONE_NEWNS for 2.6),
but also its own hostname and IP address as well as its own view of
/proc.
Because of that added functionality, it needs more than what is
available in the LSM framework (which can only allow/deny permissions,
not alter return values).
The source code has been running stable for the last few years and is in
use at quite a few service providers. The Fedora project also wants to
use vserver for their build system. However, vserver for 2.4 just tacks
their syscalls onto the end of the syscall table and the userland tools
find those "dynamic numbers" somehow ... EWWWW.
For 2.6 I'd like to do things right. At the moment the vserver patch
has sys_new_s_context and sys_set_ipv4root calls, but since we'll
probably end up getting an ipv6 call too and people are planning future
functionality, I guess it would be more appropriate to multiplex these
through one sys_vserver patch, in the same way sys_ipc works.
For your reference, you can find more information about
vserver on these pages:
http://www.13thfloor.at/VServer/
http://www.solucorp.qc.ca/miscprj/s_context.hc
I estimate the project has about a dozen developers now. We are
planning on making the implementation for 2.6 fairly lightweight,
reusing infrastructure from other code where possible and only doing
things through sys_vserver where there is no other way.
This small change just adds sys_vserver to the syscall table.
# This patch includes the following deltas:
# ChangeSet 1.1378 -> 1.1379
# arch/i386/kernel/entry.S 1.68 -> 1.69
#
entry.S | 1 +
1 files changed, 1 insertion(+)
diff -Nru a/arch/i386/kernel/entry.S b/arch/i386/kernel/entry.S
--- a/arch/i386/kernel/entry.S Wed Oct 1 11:14:26 2003
+++ b/arch/i386/kernel/entry.S Wed Oct 1 11:14:26 2003
@@ -879,5 +879,6 @@
.long sys_tgkill /* 270 */
.long sys_utimes
.long sys_fadvise64_64
+ .long sys_ni_syscall /* sys_vserver */
nr_syscalls=(.-sys_call_table)/4
-
To unsubscribe from this list: send the line "unsubscribe bk-commits-head" in
the body of a message to majordomo_at_vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html