From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0E33FC11F66 for ; Thu, 1 Jul 2021 01:20:59 +0000 (UTC) Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 11DBF613FC for ; Thu, 1 Jul 2021 01:20:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 11DBF613FC Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id D2E8482C18; Thu, 1 Jul 2021 03:20:55 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="KRn8GF4q"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id C0DA882C19; Thu, 1 Jul 2021 03:20:54 +0200 (CEST) Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id AD54482C15 for ; Thu, 1 Jul 2021 03:20:51 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=xypron.glpk@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1625102450; bh=IuxVRMzit/NJGYXXuhN+1Gii0yWfMPBlx8MkTsQhQ7o=; h=X-UI-Sender-Class:Date:In-Reply-To:References:Subject:To:CC:From; b=KRn8GF4qxCnn9sZstlHKkyPE43ZmuvpQV03bf4sR3Tc/uCyJEzu/LLqMkqOQxsw6L 2HzFf7u0j+UYp/XR1plyUS6bg/C2P6F9jvLmbFPQnwdJhvddRYQFoa43t3Rt29NGCe hVSPAXvng96geVG/ARZJaIeQVEr4z4J34vkRj0sI= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.0.172] ([88.152.144.157]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MY6Cb-1li4VA3cKb-00YOzO; Thu, 01 Jul 2021 03:20:49 +0200 Date: Thu, 01 Jul 2021 03:20:48 +0200 User-Agent: K-9 Mail for Android In-Reply-To: <20210701004909.GA7183@laputa> References: <20210630153116.26756-1-xypron.glpk@gmx.de> <20210630153116.26756-2-xypron.glpk@gmx.de> <20210701004909.GA7183@laputa> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [PATCH v2 1/2] efi_loader: fix set_capsule_result() To: AKASHI Takahiro CC: u-boot@lists.denx.de, Alexander Graf , Ilias Apalodimas From: Heinrich Schuchardt Message-ID: <3A4AF309-5C9F-4019-9390-B51D94FF58E4@gmx.de> X-Provags-ID: V03:K1:NFjVleK1oSqO/gEyPgJfDtPf8bnbSi1qj38Q+JyyImZ9jnW1S4c m25UPuFDDZXY9FQHYlmUL28gdorL9q5q6eysP3Jw9uMPiVXES0Q4pI0FmbkIwZCtjhOrTPP S/Cndz1PkaSyImUuCIY/aJ81Qgm4m3PWGOal8e18f6RTDyq+/PLvEy1JeB4QrZZLjUvdKE7 60nPkRzwpt7amalsz58rw== X-UI-Out-Filterresults: notjunk:1;V03:K0:ZNAZq4OsTKU=:f9WblyPsyyWo5XAJCsEZ1k wvWN815jxlcvE+z0t+8hYdGrAnhc1Z9pwokk3P7d05RPGnPvo+URVMYqGkrQeeJre0FTl349t Y2u1oqGwWvluxTG2+68vhUBEalEuV9tr/reeR7LprZG8QiH0Zx9MOP7gwCBewwXIqFo/ZwI+e LnuWSKvfnAX1KMqwnPE5JBAYXr9AGcAvSq+HnSPjK7X54Y0LCX0+obTOnlL6eT1pO55zLxwYO BexPpQP+z408028Nw92QvYdeo+Bkbr9D4UugdpWP8Y82aQmDxxrzeegtLqIsXc3quEzFXj1/d q1NyMG7dM/3yBUi/ZcJq5MxkoSo8X3+nK90Dnv3auXOB9ZA0mNRbs5NBsZMqzWLRTehLa9XyW 00dRzrcp6W14y1hjhMbiUUipZdySXOTKdzaYiWErbbHHKEPXeMIfEeC3CEbOD6ghxelfIf8un yh2ZEZBnzHgl7HT9J8tYo4DwT7xqHyxmfcoKNJDHZJyk7Jy0Ch4TIC03l+NSNsy9dBX4LDqHw CVnV8v1mr/qOR6noBCAKflH0hxSCzWZhYmgFyBWJBPI38CiU5A/GGAiwykZmvNPrBtYPuHKZ0 f6mskHcnIC7nUV9j3Z9yHfBVir+n0z1vrQu33VGcesjZksj/ThDx1ybBJmI5kET4weCBaV42F 21ZPYBJtDhYqhpBG+/dyQINARO6a/3A6l8Kava9oeN8d21CjqPpD/0KQsFxzVEk7eVasZfows Cc1vkJOnS1pMeiadpbFuzPN7qeMvaGGf9xw2AFcnQYSYL4XFJd8mGqW2gkLwCMmxTD72HewVp nPHYD8U6+64T6YROrYfVSIb/8FIfDWd4UP7kTnEzCyKhvP5bezS/uyRxT+AtIfyBymfkb0PQ8 LDQ+oh5+U+sbY5ngOubVD36VFTmC/TAyi5JXLGBlXaNxjgHl6GDEOAOXl8z5yNUwOXmvGfLMp 7TvR5xJCxBnvbXaBlavxouOumOAdphhyKPbSzVwWowb+Fh9k+GzAPOxvXfqqW7OCDaHLb01q0 Eh/2/Y4+TFcm5fAvP1H4Y82FF1zrB48ci4bJ6xn4FVc++0dSppdRcpJ8TR2AExjam+sADW1Ff IXA1BQzYSfEzVW2g6TeLxWZ2QQ5Mx55fLtr X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.2 at phobos.denx.de X-Virus-Status: Clean Am 1=2E Juli 2021 02:49:09 MESZ schrieb AKASHI Takahiro : >NAK=2E > >On Wed, Jun 30, 2021 at 05:31:15PM +0200, Heinrich Schuchardt wrote: >> The log category must be LOG_CATEGORY LOGC_EFI=2E >>=20 >> efi_set_variable() should be called with EFI_CALL()=2E Use >> efi_set_variable_int() instead=2E >>=20 >> A log text "Updating =2E=2E=2E" if SetVariable() fails does not make se= nse >for a >> variable that is not required to be preexisting=2E >>=20 >> CapsuleLast should always be immediately updated=2E > >As I said to your v1 in [1], > >You are trying to fix several irrelevant issues here=2E Why do you think the changes are irrelevant? >Please split them into separate patches as you have always >asked me before=2E Splitting does not change relevance=2E Do you want to play tit for tat? Best regards Heinrich > >[1] https://lists=2Edenx=2Ede/pipermail/u-boot/2021-June/453148=2Ehtml > >-Takahiro Akashi > > > >> Signed-off-by: Heinrich Schuchardt >> --- >> v2: >> don't update OsIndications in set_capsule_result() >> update CapsuleLast immediately >> --- >> lib/efi_loader/efi_capsule=2Ec | 39 >+++++++++++++++++++----------------- >> 1 file changed, 21 insertions(+), 18 deletions(-) >>=20 >> diff --git a/lib/efi_loader/efi_capsule=2Ec >b/lib/efi_loader/efi_capsule=2Ec >> index 2c37a0d97b=2E=2Ef87ef2a514 100644 >> --- a/lib/efi_loader/efi_capsule=2Ec >> +++ b/lib/efi_loader/efi_capsule=2Ec >> @@ -6,6 +6,8 @@ >> * Author: AKASHI Takahiro >> */ >>=20 >> +#define LOG_CATEGORY LOGC_EFI >> + >> #include >> #include >> #include >> @@ -95,13 +97,25 @@ void set_capsule_result(int index, struct >efi_capsule_header *capsule, >> else >> memset(&result=2Ecapsule_processed, 0, sizeof(time)); >> result=2Ecapsule_status =3D return_status; >> - ret =3D efi_set_variable(variable_name16, &efi_guid_capsule_report, >> - EFI_VARIABLE_NON_VOLATILE | >> - EFI_VARIABLE_BOOTSERVICE_ACCESS | >> - EFI_VARIABLE_RUNTIME_ACCESS, >> - sizeof(result), &result); >> - if (ret) >> - log_err("EFI: creating %ls failed\n", variable_name16); >> + ret =3D efi_set_variable_int(variable_name16, >&efi_guid_capsule_report, >> + EFI_VARIABLE_NON_VOLATILE | >> + EFI_VARIABLE_BOOTSERVICE_ACCESS | >> + EFI_VARIABLE_RUNTIME_ACCESS, >> + sizeof(result), &result, false); >> + if (ret !=3D EFI_SUCCESS) { >> + log_err("Setting %ls failed\n", variable_name16); >> + return; >> + } >> + >> + /* Variable CapsuleLast must not include terminating 0x0000 */ >> + ret =3D efi_set_variable_int(L"CapsuleLast", >&efi_guid_capsule_report, >> + EFI_VARIABLE_READ_ONLY | >> + EFI_VARIABLE_NON_VOLATILE | >> + EFI_VARIABLE_BOOTSERVICE_ACCESS | >> + EFI_VARIABLE_RUNTIME_ACCESS, >> + 22, variable_name16, false); >> + if (ret !=3D EFI_SUCCESS) >> + log_err("Setting %ls failed\n", L"CapsuleLast"); >> } >>=20 >> #ifdef CONFIG_EFI_CAPSULE_FIRMWARE_MANAGEMENT >> @@ -988,7 +1002,6 @@ efi_status_t efi_launch_capsules(void) >> struct efi_capsule_header *capsule =3D NULL; >> u16 **files; >> unsigned int nfiles, index, i; >> - u16 variable_name16[12]; >> efi_status_t ret; >>=20 >> if (!check_run_capsules()) >> @@ -1045,16 +1058,6 @@ efi_status_t efi_launch_capsules(void) >> free(files[i]); >> free(files); >>=20 >> - /* CapsuleLast */ >> - efi_create_indexed_name(variable_name16, sizeof(variable_name16), >> - "Capsule", index - 1); >> - efi_set_variable_int(L"CapsuleLast", &efi_guid_capsule_report, >> - EFI_VARIABLE_READ_ONLY | >> - EFI_VARIABLE_NON_VOLATILE | >> - EFI_VARIABLE_BOOTSERVICE_ACCESS | >> - EFI_VARIABLE_RUNTIME_ACCESS, >> - 22, variable_name16, false); >> - >> return ret; >> } >> #endif /* CONFIG_EFI_CAPSULE_ON_DISK */ >> -- >> 2=2E30=2E2 >>=20