Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp6794432yba; Wed, 1 May 2019 21:06:01 -0700 (PDT) X-Google-Smtp-Source: APXvYqwbtgkg/Kueby0EIc6ad/NZWlvWSImZnpMKsvE3zPc3quyiVKMLPKjC0KxtdjwqPrbOtVME X-Received: by 2002:a65:6688:: with SMTP id b8mr1579671pgw.81.1556769961372; Wed, 01 May 2019 21:06:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556769961; cv=none; d=google.com; s=arc-20160816; b=vEbsjl7EG/e+ujPBjUCt5wGdumuQQ1LEMJe/XorCg9wJRcDlaobCOqorPH7r0UJSsT k4yJtev4f6Gt3W5ARIUL0ZFwimqnvUMQ3bnHQG+jvD8LHDZGukMCzirkTj8YjEToD1U3 0sPbcB9T7XPu6R7sBginMwabXR+Un6HFiFxqXa8BH5RzCwzsMdY9qUj3f07+H0SIYzPx /ZnopkzglQhVsXM6hAe+7fwZdvLdqQS0/J8RKiAabHj9KLh/pfJNuogKj08tOMCK1OG7 APwdVEtH2PZRXS0P/43GHa+k7/Dfo3dLwqaiK4YTqaZY/EZJdzzjPsVprJT5FoaZI183 5xgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature; bh=rM4F3y1QRq9xFsJANLJ2PQUCgusKq4bJmMsIhz12PE0=; b=oMjyk0cJv7M00CjGNWJx7IfGMgQxkAyUxlaI1b7NQf42v0BhP46N7zdh0KWzg+g1W1 38Np/MKF7aCpF5NsyR4hUNqlLx1fN++LJIWeFxptEgdzWS5hEUEthqBFpVUUXYoihPXD FfQ1A+H109Omuq9qpWz/WAnPECXOIW+0bNTbNMpbUOXTH5kYn3DbBm3EhMWKi6LVucfZ QTa0tv5VzI4BPm3mmcNLBS31jjndfN7fQTaQqkrWs9w08IYxs6ov5XiYrTkcsspMJC6z o7ylOoWKAmGTBVCnKdEy86DjZmXWLkF9rRUeWAJlfycsJp3saKBgv/V1OM2MdwhUquiJ UYqA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=Ts+TRyYT; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t16si42499060plr.63.2019.05.01.21.05.46; Wed, 01 May 2019 21:06:01 -0700 (PDT) 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=@gmail.com header.s=20161025 header.b=Ts+TRyYT; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726159AbfEBEEw (ORCPT + 99 others); Thu, 2 May 2019 00:04:52 -0400 Received: from mail-pl1-f193.google.com ([209.85.214.193]:42450 "EHLO mail-pl1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725372AbfEBEEw (ORCPT ); Thu, 2 May 2019 00:04:52 -0400 Received: by mail-pl1-f193.google.com with SMTP id x15so397958pln.9; Wed, 01 May 2019 21:04:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=rM4F3y1QRq9xFsJANLJ2PQUCgusKq4bJmMsIhz12PE0=; b=Ts+TRyYTEECnYuiapH/JiLE3aOdUcKZNWtildqgDgHamRd1VdgzSGCAWO44xInhGdj +mSemGh+TE4HS0enaJJsBrtkBbEcqWjz1lpnryVQHRWMubhUVwQSTmS9EEIDPhXvjgjU 6g+o0scjwM2Wa4GBwJx9KfNyLLX34ZxZRDRKa2cvK6CWUZXFH0y6AEjV9qy3spZmahNA b+SQITUSMYLUc8ch/bNzxbVNjMDumR6A+WyTsRmnX8GEt5nMTj+WfPGejfq+coffthgc ++DUO+WcK0FirgVSRFVswobYbN0c12GGZ64G5JL7y1dbW1ZfpZpkx9vTuLSTED8o15Aa 1gWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=rM4F3y1QRq9xFsJANLJ2PQUCgusKq4bJmMsIhz12PE0=; b=PIQfgCDkuK6JeaM8WapizqgQYIoEHVzR4evwt9U4hEUUPDxqCNDlSguhadEdALMLh1 a2AQEtCa6FgXBLYjkUbo6JtMUoSf+NKSeYyODoeWeZq1F2UL1ChnjgyhTSKrCABE3PiB ahrglisHc/uQp0lJ321PI0qoKfi+ttaSiBSvznCX2PlZJaK3AZrUHbfpRuRpT3my1lg2 IwW1rVUW3gofKfZ9J12BsogSYPK0P6Fk4OioyRRd30B49wpqj4hB+Rhci4mcLqPtangr 6kuXjFbt2wZB0RQYAQ5QASeALElXZpDSBl1wlLR3efH6M5yxoLzjowDufz4iO9QMZjy0 iNzg== X-Gm-Message-State: APjAAAUhdwqVlMuycEHwAssfkVJPYJEbEz22/zHr4S752TayfVZcK/3G QUiBNFaZLmeFJi9PmEhatfc= X-Received: by 2002:a17:902:b28:: with SMTP id 37mr1260911plq.322.1556769891072; Wed, 01 May 2019 21:04:51 -0700 (PDT) Received: from linux-l9pv.suse ([202.47.205.198]) by smtp.gmail.com with ESMTPSA id k4sm1107687pgh.27.2019.05.01.21.04.46 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 01 May 2019 21:04:50 -0700 (PDT) From: "Lee, Chun-Yi" X-Google-Original-From: "Lee, Chun-Yi" To: Ard Biesheuvel , James Morris , "Serge E . Hallyn" , David Howells , Josh Boyer , Nayna Jain , Mimi Zohar Cc: linux-efi@vger.kernel.org, linux-security-module@vger.kernel.org, linux-kernel@vger.kernel.org, "Lee, Chun-Yi" , Kees Cook , Anton Vorontsov , Colin Cross , Tony Luck Subject: [PATCH 1/2 v2] efi: add a function to convert the status value to string Date: Thu, 2 May 2019 12:04:39 +0800 Message-Id: <20190502040441.30372-1-jlee@suse.com> X-Mailer: git-send-email 2.12.3 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This function can be used to convert EFI status value to string for printing out debug message. Using this function can improve the readability of log. v2. - Changed the wording in subject and description. - Moved the marco immediately after the status value definitions. - Turned into a proper function instead of inline. Cc: Ard Biesheuvel Cc: Kees Cook Cc: Anton Vorontsov Cc: Colin Cross Cc: Tony Luck Signed-off-by: "Lee, Chun-Yi" --- include/linux/efi.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/include/linux/efi.h b/include/linux/efi.h index 54357a258b35..6f3f89a32eef 100644 --- a/include/linux/efi.h +++ b/include/linux/efi.h @@ -42,6 +42,34 @@ #define EFI_ABORTED (21 | (1UL << (BITS_PER_LONG-1))) #define EFI_SECURITY_VIOLATION (26 | (1UL << (BITS_PER_LONG-1))) +#define EFI_STATUS_STR(_status) \ +case EFI_##_status: \ + return "EFI_" __stringify(_status); + +static __attribute__((unused)) char * +efi_status_to_str(unsigned long status) +{ + switch (status) { + EFI_STATUS_STR(SUCCESS) + EFI_STATUS_STR(LOAD_ERROR) + EFI_STATUS_STR(INVALID_PARAMETER) + EFI_STATUS_STR(UNSUPPORTED) + EFI_STATUS_STR(BAD_BUFFER_SIZE) + EFI_STATUS_STR(BUFFER_TOO_SMALL) + EFI_STATUS_STR(NOT_READY) + EFI_STATUS_STR(DEVICE_ERROR) + EFI_STATUS_STR(WRITE_PROTECTED) + EFI_STATUS_STR(OUT_OF_RESOURCES) + EFI_STATUS_STR(NOT_FOUND) + EFI_STATUS_STR(ABORTED) + EFI_STATUS_STR(SECURITY_VIOLATION) + default: + pr_warn("Unknown efi status: 0x%lx", status); + } + + return "Unknown efi status"; +} + typedef unsigned long efi_status_t; typedef u8 efi_bool_t; typedef u16 efi_char16_t; /* UNICODE character */ -- 2.16.4