Re: [PATCH 00/59] Introduce credentials

From: Alan Cox
Date: Thu Aug 28 2008 - 06:04:21 EST


On Thu, 28 Aug 2008 10:19:44 +0100
David Howells <dhowells@xxxxxxxxxx> wrote:

> Alan Cox <alan@xxxxxxxxxxxxxxxxxxx> wrote:
>
> > > We get a number of things:
> > >
> > > (1) Multiple credential changes all happen simultaneously (setresuid() for
> > > example). The new set of credentials is committed with a single RCU
> > > assignment.
> >
> > Makes sense - except for the question of bounding memory utilisation.
>
> Would it make sense to call synchronise_rcu() from commit_creds() or from
> setuid()/setresuid()/setgroups()/etc. to make sure that some user process
> doing:
>
> while (1)
> alter_credentials();
>
> doesn't run the system out of memory by having loads of frees waiting in RCU's
> queues because put_cred() uses call_rcu() to defer the destruction.

I suspect you to - or every "nth" event - building up a small queue as
would occur in normal usage probably isn't a problem.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/