linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Luca Barbieri <ldb@ldb.ods.org>
To: trond.myklebust@fys.uio.no
Cc: Linus Torvalds <torvalds@transmeta.com>,
	Linux FSdevel <linux-fsdevel@vger.kernel.org>,
	Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] Initial support for struct vfs_cred   [0/1]
Date: 01 Sep 2002 20:54:48 +0200	[thread overview]
Message-ID: <1030906488.2145.104.camel@ldb> (raw)
In-Reply-To: <15730.17171.162970.367575@charged.uio.no>

[-- Attachment #1: Type: text/plain, Size: 1539 bytes --]

On Sun, 2002-09-01 at 18:40, Trond Myklebust wrote:
> >>>>> " " == Luca Barbieri <ldb@ldb.ods.org> writes:
> 
>     >> You are forgetting that the fscred might simultaneously be
>     >> referenced by an open struct file. Are you saying that this
>     >> file should suddenly see its credential change?
>      > No, it cannot be referenced by an open struct file because you
>      > copy the structure, not pointers to it.
> 
> So you are proposing to optimize for the rare case of setuid(),
> instead of the more common case of file open()?
No, this does not optimize for a setuid. It allows to easily make
temporary modifications to the credentials but that's not the main
focus.
Permanent modifications, if credentials are shared, would need to walk
the shared-cred tasklist and set the propagation flag on all tasks on it
so I'm surely not proposing to optimize for them.

And, in the common case of open, why do you need to copy the structure
to check permissions?
I think that open should just check the current values.
open might want to copy credentials in case you want to do the inode
lookup asynchronously but then it doesn't make sense to optimize for
this since you already have the huge disk read penalty.
BTW, the 2.5.32 open does the check in vfs_permission without copying
anything.
Anyway it's just a 3 long copy plus an atomic inc vs. 1 long copy and
atomic inc.
And if you don't need the groups array, it's just a 2 longs copy that on
some architectures with very slow atomic operations (e.g. sparc) is much
better.


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

  parent reply	other threads:[~2002-09-01 18:54 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1030820234.4408.119.camel@ldb>
2002-08-31 19:36 ` [PATCH] Initial support for struct vfs_cred [0/1] Linus Torvalds
2002-08-31 19:38   ` Luca Barbieri
2002-08-31 22:30     ` Trond Myklebust
2002-08-31 23:13       ` Luca Barbieri
2002-09-01 13:03         ` Trond Myklebust
2002-09-01 14:10           ` Trond Myklebust
2002-09-01 14:20             ` Luca Barbieri
     [not found]             ` <1030890022.2145.52.camel@ldb>
2002-09-01 16:40               ` Trond Myklebust
     [not found]               ` <15730.17171.162970.367575@charged.uio.no>
2002-09-01 18:54                 ` Luca Barbieri [this message]
2002-09-01 19:40                   ` Trond Myklebust
     [not found]                   ` <15730.27952.29723.552617@charged.uio.no>
2002-09-01 21:34                     ` Luca Barbieri
     [not found]                     ` <1030916061.2145.344.camel@ldb>
2002-09-01 21:56                       ` Trond Myklebust
     [not found]                       ` <15730.36080.987645.452664@charged.uio.no>
2002-09-01 22:50                         ` Luca Barbieri
2002-09-01 14:33           ` Luca Barbieri
2002-09-01 16:38             ` Trond Myklebust
2002-09-01 18:42               ` Luca Barbieri
2002-09-01 19:25                 ` Trond Myklebust
2002-09-01 21:36                   ` Luca Barbieri
2002-09-01 15:15         ` Daniel Phillips
2002-09-01 15:35           ` Luca Barbieri
     [not found] <15728.61345.184030.293634@charged.uio.no>
2002-08-31 18:57 ` Luca Barbieri
2002-08-31 19:51 ` Luca Barbieri
2002-08-31 16:32 Trond Myklebust

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=1030906488.2145.104.camel@ldb \
    --to=ldb@ldb.ods.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.com \
    --cc=trond.myklebust@fys.uio.no \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).