Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp4124427pxu; Mon, 30 Nov 2020 18:41:02 -0800 (PST) X-Google-Smtp-Source: ABdhPJwzAPBhn6kmSsbE2oHq69HMjXAZJYV/zQpwSLZVPQS6HCnWOiHfiPWNt20C36f6fi4rAH/t X-Received: by 2002:a17:906:1e0c:: with SMTP id g12mr959260ejj.214.1606790462629; Mon, 30 Nov 2020 18:41:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1606790462; cv=none; d=google.com; s=arc-20160816; b=NgYnL3ahaD96s3V+7WM6I64I+CPNMEhjQ/OYwi3WbEIYBl3h4v+4fPO1qGqrrdcTb7 KGxR7HgGV6VafMXN6k8Gixyj+qyhsEHb0G2yblsXhjII+efGwH2zU8y8nDTaMcHOU/m2 1emUQyeNsdLCV+3X4B0xNIqk5jqbygzoFz6UfdAZfCilq8d/tXZhg5uMByxHdAaNLkF/ GXZz0s5haP+roxRkrtFJCj7K3KkkbH5vx/3q1RDBIxa9O7yKxuC9Qwozhgbie3KNudtN HO+jrrYa7cXx9zwaXcxn99+3CI9Dw13BYzO6tSpkTySmZMpwuAFbmle5KKF6UjgzvboN uqeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-language:content-transfer-encoding :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:ironport-sdr:ironport-sdr; bh=fMWScP3t/nIUoCncquPEl8GCwjP88K+uSFYkGvxy6IY=; b=L89jhNhPjgtYAM78d+o6u9fF0A82qKXh8FjSVvWu5pqhrxNpBGkKVNiqwGtb9GLBNu kXSIpYVGX1I9geI3EubfYVqcThaLwDINsRtgsdlUxCQ4rGwfhFb/ISy6h1nyS7U6sP4L XY8/g/aKjeUnI+VCKvDv4ostb4j9Ov3ANf5HWaNTnxEq9ArO5YvUYNFvDyei3cuB/fge GlR3OsmBW+bYVLakGZA53+vlrIxT35emXKLhyd46GrIyEQD3lAUcY4VejV8Q1ZevNJEU ye/0VCNr7B6iwFrUz/qqGCe4kod2uK3Ofe/1IYYjAoPbdjAwwFpJLa4ryelmT12gzMUn CoeA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v28si244100edd.415.2020.11.30.18.40.40; Mon, 30 Nov 2020 18:41:02 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388690AbgK3Xze (ORCPT + 99 others); Mon, 30 Nov 2020 18:55:34 -0500 Received: from mga07.intel.com ([134.134.136.100]:49414 "EHLO mga07.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729078AbgK3Xze (ORCPT ); Mon, 30 Nov 2020 18:55:34 -0500 IronPort-SDR: rsbKIkT3owHAMiYnf5ZVx3VzSdCz8e13V14K86D0tZocTmbmPMmeolZkOgdig5Bw31bZd/9bdl 52UuHKQRk8ow== X-IronPort-AV: E=McAfee;i="6000,8403,9821"; a="236859437" X-IronPort-AV: E=Sophos;i="5.78,382,1599548400"; d="scan'208";a="236859437" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Nov 2020 15:54:53 -0800 IronPort-SDR: Qi+TkTOoMuATfeEMce6g+dzdiZ2QKiuFtlGgg7RLKcP4NUOeYAHOBAPPhBohpbHNRWKSn84SPI koNp1kg8sfoA== X-IronPort-AV: E=Sophos;i="5.78,382,1599548400"; d="scan'208";a="480858895" Received: from rhweight-mobl2.amr.corp.intel.com (HELO [10.0.2.4]) ([10.209.71.254]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Nov 2020 15:54:52 -0800 Subject: Re: [PATCH v6 2/7] fpga: sec-mgr: enable secure updates To: =?UTF-8?Q?Martin_Hundeb=c3=b8ll?= , mdf@kernel.org, linux-fpga@vger.kernel.org, linux-kernel@vger.kernel.org Cc: trix@redhat.com, lgoncalv@redhat.com, yilun.xu@intel.com, hao.wu@intel.com, matthew.gerlach@intel.com References: <20201106010905.11935-1-russell.h.weight@intel.com> <20201106010905.11935-3-russell.h.weight@intel.com> <9dd75daf-eb73-4008-ca65-6f7ea3923e35@silicom.dk> From: Russ Weight Message-ID: Date: Mon, 30 Nov 2020 15:54:50 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <9dd75daf-eb73-4008-ca65-6f7ea3923e35@silicom.dk> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Language: en-US Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Thanks Martin. I'll work on a fix for this. - Russ On 11/26/20 6:02 AM, Martin Hundebøll wrote: > Hi Russ, > > I found another thing while testing this... > > On 06/11/2020 02.09, Russ Weight wrote: > > > >> +static ssize_t filename_store(struct device *dev, struct device_attribute *attr, >> +                  const char *buf, size_t count) >> +{ >> +    struct fpga_sec_mgr *smgr = to_sec_mgr(dev); >> +    int ret = count; >> + >> +    if (count == 0 || count >= PATH_MAX) >> +        return -EINVAL; >> + >> +    mutex_lock(&smgr->lock); >> +    if (smgr->driver_unload || smgr->progress != FPGA_SEC_PROG_IDLE) { >> +        ret = -EBUSY; >> +        goto unlock_exit; >> +    } >> + >> +    smgr->filename = kstrndup(buf, count - 1, GFP_KERNEL); > > The `count - 1` is meant to remove a trailing newline, but opae-sdk writes the filename without newline, so better do it conditionally... > >> +    if (!smgr->filename) { >> +        ret = -ENOMEM; >> +        goto unlock_exit; >> +    } >> + >> +    smgr->err_code = FPGA_SEC_ERR_NONE; >> +    smgr->progress = FPGA_SEC_PROG_READING; >> +    reinit_completion(&smgr->update_done); >> +    schedule_work(&smgr->work); >> + >> +unlock_exit: >> +    mutex_unlock(&smgr->lock); >> +    return ret; >> +} >> +static DEVICE_ATTR_WO(filename); >> + >> +static struct attribute *sec_mgr_update_attrs[] = { >> +    &dev_attr_filename.attr, >> +    NULL, >> +}; > > Thanks, > Martin