From: Ray Lehtiniemi <rayl@mail.com>
To: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Andrew Morton <akpm@osdl.org>,
linux-kernel@vger.kernel.org, containers@lists.osdl.org,
Oleg Nesterov <oleg@tv-sign.ru>
Subject: Re: [PATCH 6/7] vt: Update spawnpid to be a struct pid_t
Date: Tue, 15 Aug 2006 13:38:45 -0600 [thread overview]
Message-ID: <200608151338.46046.rayl@mail.com> (raw)
In-Reply-To: <1155666193191-git-send-email-ebiederm@xmission.com>
On Tuesday 15 August 2006 12:23, Eric W. Biederman wrote:
> This keeps the wrong process from being notified if the
> daemon to spawn a new console dies.
>
> Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
> ---
> drivers/char/keyboard.c | 9 ++++++---
> drivers/char/vt_ioctl.c | 5 +++--
> 2 files changed, 9 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/char/keyboard.c b/drivers/char/keyboard.c
> index 3e90aac..9acd142 100644
> --- a/drivers/char/keyboard.c
> +++ b/drivers/char/keyboard.c
> @@ -108,7 +108,8 @@ const int NR_TYPES = ARRAY_SIZE(max_vals
> struct kbd_struct kbd_table[MAX_NR_CONSOLES];
> static struct kbd_struct *kbd = kbd_table;
>
> -int spawnpid, spawnsig;
> +struct pid *spawnpid;
> +int spawnsig;
>
> /*
> * Variables exported for vt.c
> @@ -579,8 +580,10 @@ static void fn_compose(struct vc_data *v
> static void fn_spawn_con(struct vc_data *vc, struct pt_regs *regs)
> {
> if (spawnpid)
> - if (kill_proc(spawnpid, spawnsig, 1))
> - spawnpid = 0;
> + if (kill_pid(spawnpid, spawnsig, 1)) {
> + put_pid(spawnpid);
> + spawnpid = NULL;
> + }
> }
>
> static void fn_SAK(struct vc_data *vc, struct pt_regs *regs)
> diff --git a/drivers/char/vt_ioctl.c b/drivers/char/vt_ioctl.c
> index 28eff1a..d7e0187 100644
> --- a/drivers/char/vt_ioctl.c
> +++ b/drivers/char/vt_ioctl.c
> @@ -645,12 +645,13 @@ #endif
> */
> case KDSIGACCEPT:
> {
> - extern int spawnpid, spawnsig;
> + struct pid *spawnpid;
> + extern int spawnsig;
shouldn't spawnpid also be declared 'extern' here?
> if (!perm || !capable(CAP_KILL))
> return -EPERM;
> if (!valid_signal(arg) || arg < 1 || arg == SIGKILL)
> return -EINVAL;
> - spawnpid = current->pid;
> + spawnpid = get_pid(task_pid(current));
> spawnsig = arg;
> return 0;
> }
next prev parent reply other threads:[~2006-08-15 19:40 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-08-15 18:21 Start using struct pid Eric W. Biederman
2006-08-15 18:23 ` [PATCH 1/7] pid: Implement access helpers for a tacks various process groups Eric W. Biederman
2006-08-15 18:40 ` Dave Hansen
2006-08-15 19:03 ` Eric W. Biederman
2006-08-16 8:04 ` [Containers] " Kirill Korotaev
2006-08-15 18:23 ` [PATCH 2/7] pid: Add do_each_pid_task Eric W. Biederman
2006-08-16 3:10 ` [Containers] " Serge E. Hallyn
2006-08-16 4:28 ` Andrew Morton
2006-08-16 6:15 ` Eric W. Biederman
2006-08-16 6:34 ` Eric W. Biederman
2006-08-16 11:57 ` Serge E. Hallyn
2006-08-16 19:17 ` Oleg Nesterov
2006-08-17 21:16 ` [PATCH -mm] simplify pid iterators Oleg Nesterov
2006-08-15 18:23 ` [PATCH 3/7] pid: Implement signal functions that take a struct pid * Eric W. Biederman
2006-08-15 18:23 ` [PATCH 4/7] pid: Export the symbols needed to use " Eric W. Biederman
2006-08-15 18:23 ` [PATCH 5/7] pid: Implement pid_nr Eric W. Biederman
2006-08-15 18:37 ` Dave Hansen
2006-08-15 19:00 ` Eric W. Biederman
2006-08-15 19:15 ` [Containers] " Dave Hansen
2006-08-16 6:29 ` Eric W. Biederman
2006-08-16 16:27 ` Jan Engelhardt
2006-08-16 17:48 ` Eric W. Biederman
2006-08-16 18:19 ` Oleg Nesterov
2006-08-16 16:18 ` Eric W. Biederman
2006-08-16 21:03 ` Oleg Nesterov
2006-08-16 17:18 ` Eric W. Biederman
2006-08-15 18:23 ` [PATCH 6/7] vt: Update spawnpid to be a struct pid_t Eric W. Biederman
2006-08-15 18:53 ` Alan Cox
2006-08-15 18:45 ` Eric W. Biederman
2006-08-16 8:04 ` [Containers] " Kirill Korotaev
2006-08-16 14:23 ` Eric W. Biederman
2006-08-15 19:38 ` Ray Lehtiniemi [this message]
2006-08-16 19:35 ` Oleg Nesterov
2006-08-16 15:43 ` Andrew Morton
2006-08-16 17:55 ` Eric W. Biederman
2006-08-15 18:23 ` [PATCH 7/7] file: Modify struct fown_struct to use a struct pid Eric W. Biederman
2006-08-16 18:45 ` Oleg Nesterov
2006-08-16 18:48 ` Oleg Nesterov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200608151338.46046.rayl@mail.com \
--to=rayl@mail.com \
--cc=akpm@osdl.org \
--cc=containers@lists.osdl.org \
--cc=ebiederm@xmission.com \
--cc=linux-kernel@vger.kernel.org \
--cc=oleg@tv-sign.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.