Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp631393ybl; Fri, 13 Dec 2019 02:04:59 -0800 (PST) X-Google-Smtp-Source: APXvYqxpSSAY/nGRHBji5i0SM2dfOKB65BJA28ywAVwEXlurz7EXgGBJb/jnqSyJXCEufLXG+dGt X-Received: by 2002:a9d:6652:: with SMTP id q18mr13976046otm.321.1576231499694; Fri, 13 Dec 2019 02:04:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1576231499; cv=none; d=google.com; s=arc-20160816; b=xafLv2a7SFa+1dVyM7w7brURwMz18tQDOYlgAppWX217fs92qJiRqslejg8e8Rw4Zb iJUfSAEwUJykW4k6FucH3ycN8+WcrCGAVud7twjKaClGhcBa3NiVbu2N8V3ojLkDRBO5 ZtnjdHJlxvGnAGl1WA1JomRsfd0/jGt2axLVHeYKTMT7FKER3TXOLg61bPIXZ3pxZuQT cJMsiIa5wNYF9Defg57M/JIUDSkeDZtWJ94KyAtEEE0Dkw4aqYCqdB6Jq75zbQWGTclv M0JCzKve4mNQ4saJz4cH3xdWzQcjQu77aR/5mSQw9BefJ/45R1x8bqiC+oC84JlQnUcI 30Lg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=YBwjg8KYKl96mggL33baldfDiIMn3TQvg81waFm29R8=; b=a++Jf/wA2l2csr5tLCubMmsT/6ec4aT3p5oD8iJbly2V7ffRBVj/ZjsO/j6f0IimY1 daE+vsrjJrZsxGZeJILuREmiErXI6vtNd9q8AvG+qO3cLuUy0UynqjSx1bFyVS09GvZ1 q+rrGmuO6NDKclndQSVNpEi+T/2HO/4XiPYp7RR4Ol8mJIDHsPusFkN2/LJg7gwxSiYy HQPa1EV+0BM66U2DPtKEQB9ZLbzzPMb9Ei8RIBW8CvxhdPewFv2VdZ+Wn0QpofSfOnby C74M9CFBT8HCa4jQmjGceKlwQ6vJG5P1qH4jL/QZ6Egk3JVotAHw6m/MOQcEfTvo16JZ PK5A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=JykxmuTS; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o2si4818905oig.41.2019.12.13.02.04.48; Fri, 13 Dec 2019 02:04:59 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=JykxmuTS; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726620AbfLMKDc (ORCPT + 99 others); Fri, 13 Dec 2019 05:03:32 -0500 Received: from mail-wr1-f66.google.com ([209.85.221.66]:37047 "EHLO mail-wr1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725946AbfLMKDc (ORCPT ); Fri, 13 Dec 2019 05:03:32 -0500 Received: by mail-wr1-f66.google.com with SMTP id w15so5993183wru.4 for ; Fri, 13 Dec 2019 02:03:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=YBwjg8KYKl96mggL33baldfDiIMn3TQvg81waFm29R8=; b=JykxmuTSac6P2wO4GXkGPNQbDUE55BBEP7c50jnvheyrIuu3lWGD6GCp44IcvxKn8B S/CVdePKbtsCHh4N6FFLXn1yUPBp23AEpQNyM1sPTX3EkgSXCl4Sokt82rCrbDJVHXaD NkgCv6OQPk80QtppE8DNTdx7lBldxB/mLorjsto7Ud3yCbCs7S2tf4d2gb4BfG47sHBU UroOxPh2v8SS1Eoh+rF8O0lcSRntWkqf9KRaKOj61rBslxKk5esR2TPQwt3iKuHua/WY EOpU+YQ3T/a9uk20vmcFOlxxTSyTGZyggmBruWsKjrNtLlYrcZAQ95tS81RE4KGQD3gB ulTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YBwjg8KYKl96mggL33baldfDiIMn3TQvg81waFm29R8=; b=udKLaf77iJQ9qVajMTfAdhjuBwMxHLMXljBdqAB5y6vbeK+d9m9B8Vvk0Mx30MEBBk pi5kYZnfh9SXuZVpHml6BdS973YNYTnROFIyMi/x5hQRUy8G6iJ6B6tMtu+PRPLeu8RS DrxbX1yJekETDieo+T84jQwQpTzzk8d9AJDZlyf95yKdFP4RO6NhGvnskREV/I+e8bRb 2b4loEEbiHRNwuI5YRvq8d54fa2VbPPsIhTRH324z4/Uerq79hiTQrxEc0Ln0MItIDhk dGTPVG1RlbFzhHCvSf4EAmo7sMJ+WJyfhEyR53AnscX5R79ijqvebSKcpFpLzejgRXkC U2/g== X-Gm-Message-State: APjAAAVvlkoKvoWrWridCs7nFdZ3zUeW8pbaHU8M4Zb/KCqN5K5iVIjH H0W7SqTAcG56MFW779ytJ4F4i0FClpfzYztbJbAWzg== X-Received: by 2002:adf:cf0a:: with SMTP id o10mr11220760wrj.325.1576231409604; Fri, 13 Dec 2019 02:03:29 -0800 (PST) MIME-Version: 1.0 References: <20191213090646.12329-1-jlee@suse.com> <20191213090646.12329-2-jlee@suse.com> In-Reply-To: <20191213090646.12329-2-jlee@suse.com> From: Ard Biesheuvel Date: Fri, 13 Dec 2019 10:03:27 +0000 Message-ID: Subject: Re: [PATCH 1/2 v2] efi: add a function to convert the status code to a string To: "Lee, Chun-Yi" Cc: James Morris , "Serge E . Hallyn" , David Howells , Josh Boyer , Nayna Jain , Mimi Zohar , linux-efi , linux-security-module , Linux Kernel Mailing List , "Lee, Chun-Yi" Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 13 Dec 2019 at 10:07, Lee, Chun-Yi wrote: > > This function can be used to convert EFI status code to a string > to improve the readability of log. > > v2: > Moved the convert function to efi.c > Please put the patch series revision log below the --- > Signed-off-by: "Lee, Chun-Yi" Acked-by: Ard Biesheuvel > --- > drivers/firmware/efi/efi.c | 32 ++++++++++++++++++++++++++++++++ > include/linux/efi.h | 1 + > 2 files changed, 33 insertions(+) > > diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c > index e98bbf8e56d9..8bdc1c17eb5d 100644 > --- a/drivers/firmware/efi/efi.c > +++ b/drivers/firmware/efi/efi.c > @@ -954,6 +954,38 @@ int efi_status_to_err(efi_status_t status) > return err; > } > > +#define EFI_STATUS_STR(_status) \ > + EFI_##_status : return "EFI_" __stringify(_status) > + > +const char *efi_status_to_str(efi_status_t status) > +{ > + switch (status) { > + case EFI_STATUS_STR(SUCCESS); > + case EFI_STATUS_STR(LOAD_ERROR); > + case EFI_STATUS_STR(INVALID_PARAMETER); > + case EFI_STATUS_STR(UNSUPPORTED); > + case EFI_STATUS_STR(BAD_BUFFER_SIZE); > + case EFI_STATUS_STR(BUFFER_TOO_SMALL); > + case EFI_STATUS_STR(NOT_READY); > + case EFI_STATUS_STR(DEVICE_ERROR); > + case EFI_STATUS_STR(WRITE_PROTECTED); > + case EFI_STATUS_STR(OUT_OF_RESOURCES); > + case EFI_STATUS_STR(NOT_FOUND); > + case EFI_STATUS_STR(ABORTED); > + case EFI_STATUS_STR(SECURITY_VIOLATION); > + } > + /* > + * There are two possibilities for this message to be exposed: > + * - Caller feeds a unknown status code from firmware. > + * - A new status code be defined in efi.h but we forgot to update > + * this function. > + */ > + pr_warn("Unknown efi status: 0x%lx\n", status); > + > + return "Unknown efi status"; > +} > +EXPORT_SYMBOL(efi_status_to_str); > + > static DEFINE_SPINLOCK(efi_mem_reserve_persistent_lock); > static struct linux_efi_memreserve *efi_memreserve_root __ro_after_init; > > diff --git a/include/linux/efi.h b/include/linux/efi.h > index d87acf62958e..2c6848d2b112 100644 > --- a/include/linux/efi.h > +++ b/include/linux/efi.h > @@ -1228,6 +1228,7 @@ efi_capsule_pending(int *reset_type) > #endif > > extern int efi_status_to_err(efi_status_t status); > +extern const char *efi_status_to_str(efi_status_t status); > > /* > * Variable Attributes > -- > 2.16.4 >