All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chuck Lever <chuck.lever@oracle.com>
To: "David P. Quigley" <dpquigl@tycho.nsa.gov>
Cc: hch@infradead.org, viro@zeniv.linux.org.uk,
	casey@schaufler-ca.com, sds@tycho.nsa.gov,
	matthew.dodd@sparta.com, trond.myklebust@fys.uio.no,
	bfields@fieldses.org, linux-kernel@vger.kernel.org,
	linux-fsdevel@vger.kernel.org,
	linux-security-module@vger.kernel.org, selinux@tycho.nsa.gov,
	linux-nfs@vger.kernel.org
Subject: Re: [PATCH 07/10] NFSv4: Introduce new label structure
Date: Wed, 07 Jul 2010 13:49:46 -0400	[thread overview]
Message-ID: <4C34BE3A.3050806@oracle.com> (raw)
In-Reply-To: <1278519727.2494.92.camel@moss-terrapins.epoch.ncsc.mil>

On 07/ 7/10 12:22 PM, David P. Quigley wrote:
> Hello Chuck,
>     Thank you for the comments. I'll go through and address them inline
> (Sorry for the top post).
>
> On Wed, 2010-07-07 at 12:01 -0400, Chuck Lever wrote:
>> My comments below apply to the other NFS client patches as well.  This
>> seemed like the right one to use for code examples.
>>
>> On 07/ 7/10 10:31 AM, David P. Quigley wrote:

   [ ... snipped ... ]

>> It seems to me you want something more generic, just like nfs_fh or
>> nfs_fattr, to represent these.  Over time, I'm guessing label support
>> won't be tied to a specific NFS version.  And, you are passing these
>> around in the generic NFS functions (for post-op updates and inode
>> revalidation, and what not).
>>
>> Can I recommend "struct nfs_seclabel" instead?  Then have
>> nfs_seclabel_alloc() and nfs_seclabel_free().
>
> I can definitely rename them to be more generic. I don't see anything
> else besides NFSv4 using them but its fine with me to rename them. The
> reason we call them nfs4_label is because we modeled it after the NFSv4
> acl support code. I spoke with Christoph a long time ago and he
> suggested that it should be handled the same way that the NFSv4 ACLs are
> handled as opposed to the iattr thing we were trying.
>
>>
>> Does it make sense to deduplicate these in the client's memory?  It
>> seems to me that you could have hundreds or thousands that all contain
>> the same label information.
>
> I don't think it is worth the effort. We are only using these structures
> until the security label is crammed into the inode. Once that happens
> they get freed. You shouldn't have them sitting around for very long.

OK, the lifetime of these things wasn't clear.

> They will be pulled again when the inode attributes expire and need to
> be revalidated. For things like SELinux you could argue that the LSM
> might benefit from this (and it might already do it but I'm not sure)
> but I think that is something to be handled by the LSM itself or the
> credentials code (since it already supports COW credentials it should be
> possible).

I think the lifetime of the label structure then is about the same as 
the lifetime of an nfs_attr, and not at all the same as an ACL.  I'm 
just guessing here.

Would it then make sense to add a field that refers to the security 
label to struct nfs_fattr instead?  That might simplify or eliminate all 
of the internal API changes.

  reply	other threads:[~2010-07-07 17:51 UTC|newest]

Thread overview: 94+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-07 14:31 Labeled-NFS: Security Label support in NFSv4 David P. Quigley
2010-07-07 14:31 ` David P. Quigley
2010-07-07 14:31 ` [PATCH 01/10] Security: Add hook to calculate context based on a negative dentry David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-08 12:51   ` Stephen Smalley
2010-07-08 12:51     ` Stephen Smalley
2010-07-07 14:31 ` [PATCH 02/10] Security: Add Hook to test if the particular xattr is part of a MAC model David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-07 16:49   ` J. Bruce Fields
2010-07-07 16:49     ` J. Bruce Fields
2010-07-07 14:31 ` [PATCH 03/10] LSM: Add flags field to security_sb_set_mnt_opts for in kernel mount data David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-07 14:31 ` [PATCH 04/10] SELinux: Add new labeling type native labels David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-07 23:23   ` James Morris
2010-07-07 23:23     ` James Morris
2010-07-08 13:31     ` David P. Quigley
2010-07-08 13:31       ` David P. Quigley
2010-07-08 22:33       ` James Morris
2010-07-08 22:33         ` James Morris
2010-07-09 14:09         ` David P. Quigley
2010-07-09 14:09           ` David P. Quigley
2010-07-07 14:31 ` [PATCH 05/10] KConfig: Add KConfig entries for Labeled NFS David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-07 16:56   ` J. Bruce Fields
2010-07-07 16:56     ` J. Bruce Fields
2010-07-07 17:05     ` David P. Quigley
2010-07-07 17:05       ` David P. Quigley
2010-07-07 17:05       ` David P. Quigley
2010-07-07 17:53     ` Chuck Lever
2010-07-07 17:53       ` Chuck Lever
2010-07-07 14:31 ` [PATCH 06/10] NFSv4: Add label recommended attribute and NFSv4 flags David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-07 17:00   ` J. Bruce Fields
2010-07-07 23:30     ` James Morris
2010-07-07 23:30       ` James Morris
2010-07-08 13:39       ` David P. Quigley
2010-07-08 13:39         ` David P. Quigley
2010-07-08 13:39         ` David P. Quigley
2010-07-08 13:39         ` David P. Quigley
2010-07-08 22:48         ` James Morris
2010-07-08 22:48           ` James Morris
2010-07-09 13:47           ` Stephen Smalley
2010-07-09 13:47             ` Stephen Smalley
2010-07-09 13:47             ` Stephen Smalley
2010-07-09 14:05           ` David P. Quigley
2010-07-09 14:05             ` David P. Quigley
2010-07-09 14:05             ` David P. Quigley
2010-07-11  5:02             ` Kyle Moffett
2010-07-11  5:02               ` Kyle Moffett
2010-07-11  5:02               ` Kyle Moffett
2010-07-11  5:02               ` Kyle Moffett
2010-07-11  5:12               ` Casey Schaufler
2010-07-11  5:12                 ` Casey Schaufler
2010-07-11  5:12                 ` Casey Schaufler
2010-07-12 14:36                 ` Stephen Smalley
2010-07-12 14:36                   ` Stephen Smalley
2010-07-17  0:09                   ` Kyle Moffett
2010-07-17  0:09                     ` Kyle Moffett
2010-07-17  0:09                     ` Kyle Moffett
2010-07-17  0:09                     ` Kyle Moffett
2010-07-07 14:31 ` [PATCH 07/10] NFSv4: Introduce new label structure David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-07 16:01   ` Chuck Lever
2010-07-07 16:21     ` Casey Schaufler
2010-07-07 16:21       ` Casey Schaufler
2010-07-07 16:21       ` Casey Schaufler
2010-07-07 16:24       ` David P. Quigley
2010-07-07 16:24         ` David P. Quigley
2010-07-07 16:24         ` David P. Quigley
2010-07-07 17:42       ` Chuck Lever
2010-07-07 17:42         ` Chuck Lever
2010-07-07 16:22     ` David P. Quigley
2010-07-07 16:22       ` David P. Quigley
2010-07-07 16:22       ` David P. Quigley
2010-07-07 17:49       ` Chuck Lever [this message]
2010-07-07 18:11         ` David P. Quigley
2010-07-07 18:11           ` David P. Quigley
2010-07-07 14:31 ` [PATCH 08/10] NFS: Client implementation of Labeled-NFS David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-07 14:31 ` [PATCH 09/10] NFS: Extend NFS xattr handlers to accept the security namespace David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-07 14:31 ` [PATCH 10/10] NFSD: Server implementation of MAC Labeling David P. Quigley
2010-07-07 14:31   ` David P. Quigley
2010-07-07 17:21   ` J. Bruce Fields
2010-07-07 18:03     ` David P. Quigley
2010-07-07 18:03       ` David P. Quigley
2010-07-07 18:03       ` David P. Quigley
2010-07-07 19:24       ` J. Bruce Fields
2010-07-08 13:27         ` David P. Quigley
2010-07-08 13:27           ` David P. Quigley
  -- strict thread matches above, loose matches on Subject: below --
2010-06-08 16:22 Labeled-NFS: Security Label support in NFSv4 David P. Quigley
2010-06-08 16:22 ` [PATCH 07/10] NFSv4: Introduce new label structure David P. Quigley
2010-06-08 16:22   ` David P. Quigley
2010-06-08 16:22   ` David P. Quigley

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=4C34BE3A.3050806@oracle.com \
    --to=chuck.lever@oracle.com \
    --cc=bfields@fieldses.org \
    --cc=casey@schaufler-ca.com \
    --cc=dpquigl@tycho.nsa.gov \
    --cc=hch@infradead.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=matthew.dodd@sparta.com \
    --cc=sds@tycho.nsa.gov \
    --cc=selinux@tycho.nsa.gov \
    --cc=trond.myklebust@fys.uio.no \
    --cc=viro@zeniv.linux.org.uk \
    /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.