Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754106AbcKIW3E (ORCPT ); Wed, 9 Nov 2016 17:29:04 -0500 Received: from mail-ua0-f196.google.com ([209.85.217.196]:35714 "EHLO mail-ua0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753183AbcKIW3C (ORCPT ); Wed, 9 Nov 2016 17:29:02 -0500 MIME-Version: 1.0 X-Originating-IP: [96.230.190.88] In-Reply-To: <20161109164854.GA27562@infradead.org> References: <1478551587-33892-1-git-send-email-david.graziano@rockwellcollins.com> <20161109164854.GA27562@infradead.org> From: Paul Moore Date: Wed, 9 Nov 2016 17:29:00 -0500 Message-ID: Subject: Re: [PATCH 1/1 V2] mqueue: Implment generic xattr support To: Christoph Hellwig , David Graziano Cc: golbi@mat.uni.torun.pl, michal.wronski@gmail.com, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, Stephen Smalley , seth.forshee@canonical.com, ebiederm@xmission.com, agruenba@redhat.com Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1721 Lines: 46 On Wed, Nov 9, 2016 at 11:48 AM, Christoph Hellwig wrote: >> +/* >> + * Callback for security_inode_init_security() for acquiring xattrs. >> + */ >> +static int mqueue_initxattrs(struct inode *inode, >> + const struct xattr *xattr_array, >> + void *fs_info) >> +{ >> + struct mqueue_inode_info *info = MQUEUE_I(inode); >> + const struct xattr *xattr; >> + struct simple_xattr *new_xattr; >> + size_t len; >> + >> + for (xattr = xattr_array; xattr->name != NULL; xattr++) { >> + new_xattr = simple_xattr_alloc(xattr->value, xattr->value_len); >> + if (!new_xattr) >> + return -ENOMEM; >> + len = strlen(xattr->name) + 1; >> + new_xattr->name = kmalloc(XATTR_SECURITY_PREFIX_LEN + len, >> + GFP_KERNEL); >> + if (!new_xattr->name) { >> + kfree(new_xattr); >> + return -ENOMEM; >> + } >> + >> + memcpy(new_xattr->name, XATTR_SECURITY_PREFIX, >> + XATTR_SECURITY_PREFIX_LEN); >> + memcpy(new_xattr->name + XATTR_SECURITY_PREFIX_LEN, >> + xattr->name, len); >> + >> + simple_xattr_list_add(&info->xattrs, new_xattr); >> + } >> + >> + return 0; >> +} > > This is a 1:1 copy of the shmem code, we rally should consolidate it > into a single place first, as people will want it for whatever virtual > fs they care about sooner or later. I don't disagree, but let's keep that patch separate from the mqueue enablement to make any future bisects cleaner. -- paul moore www.paul-moore.com