extern int send_sig(int, struct task_struct *, int);
extern void zap_other_threads(struct task_struct *p);
extern int kill_pg(pid_t, int, int);
-extern int kill_sl(pid_t, int, int);
extern int kill_proc(pid_t, int, int);
extern struct sigqueue *sigqueue_alloc(void);
extern void sigqueue_free(struct sigqueue *);
#endif
#define remove_parent(p) list_del_init(&(p)->sibling)
-#define add_parent(p, parent) list_add_tail(&(p)->sibling,&(parent)->children)
+#define add_parent(p) list_add_tail(&(p)->sibling,&(p)->parent->children)
#define REMOVE_LINKS(p) do { \
if (thread_group_leader(p)) \
#define SET_LINKS(p) do { \
if (thread_group_leader(p)) \
list_add_tail(&(p)->tasks,&init_task.tasks); \
- add_parent(p, (p)->parent); \
+ add_parent(p); \
} while (0)
#define next_task(p) list_entry((p)->tasks.next, struct task_struct, tasks)