*
* Virtual Server: Signal Support
*
- * Copyright (C) 2003-2004 Herbert Pötzl
+ * Copyright (C) 2003-2005 Herbert Pötzl
*
* V0.01 broken out from vcontext V0.05
*
#include <asm/errno.h>
#include <asm/uaccess.h>
-#include <linux/vs_base.h>
#include <linux/vs_context.h>
#include <linux/vserver/signal.h>
retval = -ESRCH;
read_lock(&tasklist_lock);
switch (vc_data.pid) {
- case -1:
case 0:
+ info.si_code = SI_KERNEL;
+ case -1:
for_each_process(p) {
int err = 0;
}
break;
+ case 1:
+ if (vxi->vx_initpid) {
+ vc_data.pid = vxi->vx_initpid;
+ info.si_code = SI_KERNEL;
+ }
+ /* fallthrough */
default:
- p = find_task_by_real_pid(vc_data.pid);
+ p = find_task_by_real_pid(vc_data.pid);
if (p) {
if (!thread_group_leader(p)) {
struct task_struct *tg;