All of lore.kernel.org
 help / color / mirror / Atom feed
From: Oleg Nesterov <oleg@redhat.com>
To: Jiri Slaby <jirislaby@gmail.com>
Cc: akpm@linux-foundation.org, mingo@redhat.com,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 8/8] FS: proc, make limits writable
Date: Mon, 12 Oct 2009 17:13:55 +0200	[thread overview]
Message-ID: <20091012151355.GA1825@redhat.com> (raw)
In-Reply-To: <4ACE51A8.3030406@gmail.com>

On 10/08, Jiri Slaby wrote:
>
> On 09/04/2009 04:26 PM, Oleg Nesterov wrote:
> > One small nit, just to suggest the further 9/8 cleanup,
> >
> >> +static const struct file_operations proc_pid_limits_operations = {
> >> +	.read		= proc_info_read,
> >> +	.write		= limits_write,
> >> +};
> >
> > I think it makes sense to tweak proc_pid_limits() a little bit (and
> > rename it), so that we can do
> >
> > 	.read = limits_read,
> > 	.write = limits_write
> >
> > Then,
> >
> >> @@ -2501,7 +2571,9 @@ static const struct pid_entry tgid_base_stuff[] = {
> >> +	NOD("limits",	  S_IFREG|S_IRUSR|S_IWUSR, NULL,
> >> +			&proc_pid_limits_operations,
> >> +			{ .proc_read = proc_pid_limits }),
> >
> > We could use
> >
> > 	REG("limits", S_IRUSR|S_IWUSR, &proc_pid_limits_operations),
> >
> > instead, this looks a bit cleaner to me.
>
> Hi again, nobody picked them up yet, I waited till the end of the merge
> window and now I'll repost.
>
> Did you mean here to do the proc_info_read work (get/put task, alloc
> buf, simple_read) directly in limits_read?

limits_read() has to do get_proc_task(d_inode), yes. Otherwise I don't
see any additional complications, you can use simple_read_from_buffer(),
no need to allocate the buffer but of course you can you shouldn't
write more than "size_t count" bytes.

But perhaps I missed something, and in any case this is up to you. If
you don't like this - please forget.

> > And another minor nit (just in case you will re-submit this series for
> > some reason). Perhaps the changelog in 6/8 should mention that we do
> > not do any security checks when tsk != current (without selinux). We
> > assume that either the caller is sys_setrlimit(), or the caller should
> > verify it has rights to change the limits: in case of limits_write()
> > we rely on ->mode = S_IRUSR|S_IWUSR.
>
> I did it as a comment by the setrlimit. I think nobody would care about
> a changelog note ;).

Good ;)

Oleg.


  reply	other threads:[~2009-10-12 15:19 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-02  9:45 [PATCH 1/2] core: add lockless update_rlimit_cpu Jiri Slaby
2009-09-02  9:45 ` [PATCH 2/2] core: allow setrlimit to non-current tasks Jiri Slaby
2009-09-02  9:47   ` Jiri Slaby
2009-09-02 13:50   ` Oleg Nesterov
2009-09-02 18:44     ` Jiri Slaby
2009-09-02 21:51       ` Oleg Nesterov
2009-09-03 13:47         ` Jiri Slaby
2009-09-03 13:52           ` [PATCH] " Jiri Slaby
2009-09-03 17:41             ` Oleg Nesterov
2009-09-03 20:08               ` [PATCH v2 1/8] SECURITY: selinux, fix update_rlimit_cpu parameter Jiri Slaby
2009-09-03 20:08               ` [PATCH v2 2/8] SECURITY: add task_struct to setrlimit Jiri Slaby
2009-09-03 20:08               ` [PATCH v2 3/8] core: add task_struct to update_rlimit_cpu Jiri Slaby
2009-09-03 20:08               ` [PATCH v2 4/8] sys_setrlimit: make sure ->rlim_max never grows Jiri Slaby
2009-09-03 20:08               ` [PATCH v2 5/8] core: split sys_setrlimit Jiri Slaby
2009-09-03 20:08               ` [PATCH v2 6/8] core: allow setrlimit to non-current tasks Jiri Slaby
2009-09-03 20:08               ` [PATCH v2 7/8] core: optimize setrlimit for current task Jiri Slaby
2009-09-03 20:08               ` [PATCH v2 8/8] FS: proc, make limits writable Jiri Slaby
2009-09-04 14:26                 ` Oleg Nesterov
2009-10-08 20:55                   ` Jiri Slaby
2009-10-12 15:13                     ` Oleg Nesterov [this message]
2009-09-03 17:20           ` [PATCH 0/1] sys_setrlimit: make sure ->rlim_max never grows Oleg Nesterov
2009-09-03 17:21           ` [PATCH 1/1] " 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=20091012151355.GA1825@redhat.com \
    --to=oleg@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=jirislaby@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    /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.