I haven't yet seen any messages relating to non-i386 architectures, so if
this is old news I apologise.

Tonight I installed debian woody on a Sun Sparc Ultra 5, copied my
2.4.19-ctx13 source tree from an Intel box, changed three files in the
arch/sparc(64)/kernel directories, compiled, installed, rebooted and have
just happily built my first Sparc-based virtual server:

sparc:~# uname -m
sparc64
sparc:~# vserver-stat
CTX#   PROC QTY       VSZ        RSS  userTIME   sysTIME    UPTIME NAME
0            18      27MB        1kB  13m09.33   1m55.01   1h24m17 root
server
3             5      10MB       605B    m08.02    m00.50  32m05.59 template

A relatively painless experience, I must congratulate Jacques on his
efforts.

Cheers, Mark.
--
Mark Lawrence ([EMAIL PROTECTED])


--
My apologies if my mailer screws this up, if it looks bad when I get the
mailing list version I will resend.
--

diff -cr sparc/kernel/entry.S linux-2.4.19ctx-13/arch/sparc/kernel/entry.S
*** sparc/kernel/entry.S        Tue Nov 13 17:16:05 2001
--- linux-2.4.19ctx-13/arch/sparc/kernel/entry.S        Wed Feb 19 18:23:59
2003
***************
*** 36,42 ****

  #define curptr      g6

! #define NR_SYSCALLS 256      /* Each OS is different... */

  /* First, KGDB low level things.  This is a rewrite
   * of the routines found in the sparc-stub.c asm() statement
--- 36,42 ----

  #define curptr      g6

! #define NR_SYSCALLS 258      /* Each OS is different... */

  /* First, KGDB low level things.  This is a rewrite
   * of the routines found in the sparc-stub.c asm() statement



diff -cr sparc64/kernel/ptrace.c
linux-2.4.19ctx-13/arch/sparc64/kernel/ptrace.c
*** sparc64/kernel/ptrace.c     Sat Aug  3 00:39:43 2002
--- linux-2.4.19ctx-13/arch/sparc64/kernel/ptrace.c     Wed Feb 19 15:52:22
2003
***************
*** 156,162 ****
                get_task_struct(child);
        read_unlock(&tasklist_lock);

!       if (!child) {
                pt_error_return(regs, ESRCH);
                goto out;
        }
--- 156,162 ----
                get_task_struct(child);
        read_unlock(&tasklist_lock);

!       if (!child || child->s_context != current->s_context) {
                pt_error_return(regs, ESRCH);
                goto out;
        }
diff -cr sparc64/kernel/systbls.S
linux-2.4.19ctx-13/arch/sparc64/kernel/systbls.S
*** sparc64/kernel/systbls.S    Sat Aug  3 00:39:43 2002
--- linux-2.4.19ctx-13/arch/sparc64/kernel/systbls.S    Wed Feb 19 18:22:53
2003
***************
*** 70,76 ****
  /*240*/       .word sys_munlockall, sys_sched_setparam,
sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler
        .word sys_sched_yield, sys_sched_get_priority_max,
sys_sched_get_priority_min, sys32_sched_rr_get_interval, sys32_nanosleep
  /*250*/       .word sys32_mremap, sys32_sysctl, sys_getsid,
sys_fdatasync, sys32_nfsservctl
!       .word sys_aplib

        /* Now the 64-bit native Linux syscall table. */

--- 70,76 ----
  /*240*/       .word sys_munlockall, sys_sched_setparam,
sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler
        .word sys_sched_yield, sys_sched_get_priority_max,
sys_sched_get_priority_min, sys32_sched_rr_get_interval, sys32_nanosleep
  /*250*/       .word sys32_mremap, sys32_sysctl, sys_getsid,
sys_fdatasync, sys32_nfsservctl
!       .word sys_aplib, sys_new_s_context, sys_set_ipv4root

        /* Now the 64-bit native Linux syscall table. */

***************
*** 129,135 ****
  /*240*/       .word sys_munlockall, sys_sched_setparam,
sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler
        .word sys_sched_yield, sys_sched_get_priority_max,
sys_sched_get_priority_min, sys_sched_rr_get_interval, sys_nanosleep
  /*250*/       .word sys64_mremap, sys_sysctl, sys_getsid, sys_fdatasync,
sys_nfsservctl
!       .word sys_aplib

  #if defined(CONFIG_SUNOS_EMUL) || defined(CONFIG_SOLARIS_EMUL) || \
      defined(CONFIG_SOLARIS_EMUL_MODULE)
--- 129,135 ----
  /*240*/       .word sys_munlockall, sys_sched_setparam,
sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler
        .word sys_sched_yield, sys_sched_get_priority_max,
sys_sched_get_priority_min, sys_sched_rr_get_interval, sys_nanosleep
  /*250*/       .word sys64_mremap, sys_sysctl, sys_getsid, sys_fdatasync,
sys_nfsservctl
!       .word sys_aplib, sys_new_s_context, sys_set_ipv4root

  #if defined(CONFIG_SUNOS_EMUL) || defined(CONFIG_SOLARIS_EMUL) || \
      defined(CONFIG_SOLARIS_EMUL_MODULE)

Reply via email to