From patchwork Thu Mar 15 14:08:16 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Graf X-Patchwork-Id: 131795 Delivered-To: patch@linaro.org Received: by 10.80.210.197 with SMTP id q5csp1524045edg; Thu, 15 Mar 2018 07:08:42 -0700 (PDT) X-Google-Smtp-Source: AG47ELtHzXwb9ZiEC6VrR+AKTCS/D4JRGeaDjsxSwzNrV48m8b97caRUM7XucrEIrUpF+dGJ/Gm+ X-Received: by 10.80.164.14 with SMTP id u14mr2899645edb.115.1521122922777; Thu, 15 Mar 2018 07:08:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521122922; cv=none; d=google.com; s=arc-20160816; b=jWMv+iR4176FxQVz5bFMFktNr3Xl+dvtzeK5PDoVTL+CT9pWmpHNfTAATX+yvU/Mcq bZW/4olBxev88IYfqn7vvqeQ8th/0pbrzMXHqV7k6qfrks/oqr4VJQ7a6DfarKJvMoVU Mo/KgsA6vsVvJMIoFSyRUih5xf4C3BS9HBG5liPFW8usLUACFQM0qYQQEUtv9imnOTCI kMtdEPBJsIj55QD9y93zFt3Kj4/ddhZMAg1MLbJQ40onr5Y/hsKjOYwM2rA1F1PfqCT+ EeMKlkATB9sgnnCiBMj1YwJSV97u0mdkDMnVOiEGczVRYzAuCREw0tBE13/gw/7LyRpM kKAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:cc:message-id:date:to:from :arc-authentication-results; bh=rX1m0UNcs/p/LfOgJKuMK9t+2KyiJb5+TWknVAYanA4=; b=yXgNv5c2fiUerC0Rdwj+xHsHyuXqNPHbzdg4Tqk43OZIa0AIo4RrgbJiWyByvdJ7wO LwNWQMAkGN3+YHzY32fJEvl2n3wuW/r8Fkrxg9P50dQbP39YpO38gfAKgzwavcJnsVaT KPaQp9KriOUFSN1DZIZ8I/BaHKjefQpatR93n+fo04Ybi9hSzr7TvV+kOZXs2rIe6Cvj w+X26Bwovegw6ugwJKqh8TR3TBtjAXQDjFbbj+tZj3WHRtVXmDr1VMv3NM3wkIoV1CkT 2M0tmD7HWtdGkUoeqvjKZcxOhbgAwENhzqw2hkG1xjn2Yhm8USdsYIgaU1Gu20BTx5bX Z0sQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Return-Path: Received: from lists.denx.de (dione.denx.de. [81.169.180.215]) by mx.google.com with ESMTP id w30si2071556edc.393.2018.03.15.07.08.22; Thu, 15 Mar 2018 07:08:42 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) client-ip=81.169.180.215; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Received: by lists.denx.de (Postfix, from userid 105) id AE1DBC21C29; Thu, 15 Mar 2018 14:08:20 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_IN_DNSWL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 59F05C21C2F; Thu, 15 Mar 2018 14:08:18 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 1F3D7C21C2F; Thu, 15 Mar 2018 14:08:17 +0000 (UTC) Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by lists.denx.de (Postfix) with ESMTPS id CB2E2C21C29 for ; Thu, 15 Mar 2018 14:08:16 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 87BB8AFD2; Thu, 15 Mar 2018 14:08:16 +0000 (UTC) From: Alexander Graf To: u-boot@lists.denx.de Date: Thu, 15 Mar 2018 15:08:16 +0100 Message-Id: <20180315140816.10844-1-agraf@suse.de> X-Mailer: git-send-email 2.12.3 Cc: Heinrich Schuchardt Subject: [U-Boot] [PATCH] efi_loader: Fix return value for efi_add_runtime_mmio X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" The efi_add_runtime_mmio function incorrectly returned the added address as return value rather than EFI_SUCCESS. Fix it by checking the return value of efi_add_memory_map properly. Fixes: f057cfef5dc ("efi_loader: exit status for efi_reset_system_init") Signed-off-by: Alexander Graf --- lib/efi_loader/efi_runtime.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/efi_loader/efi_runtime.c b/lib/efi_loader/efi_runtime.c index 0888316140..8558124c0a 100644 --- a/lib/efi_loader/efi_runtime.c +++ b/lib/efi_loader/efi_runtime.c @@ -349,13 +349,13 @@ static efi_status_t EFIAPI efi_set_virtual_address_map( efi_status_t efi_add_runtime_mmio(void *mmio_ptr, u64 len) { struct efi_runtime_mmio_list *newmmio; - efi_status_t ret; - u64 pages = (len + EFI_PAGE_MASK) >> EFI_PAGE_SHIFT; - ret = efi_add_memory_map(*(uintptr_t *)mmio_ptr, pages, EFI_MMAP_IO, - false); - if (ret != EFI_SUCCESS) - return ret; + uint64_t addr = *(uintptr_t *)mmio_ptr; + uint64_t retaddr; + + retaddr = efi_add_memory_map(addr, pages, EFI_MMAP_IO, false); + if (retaddr != addr) + return EFI_OUT_OF_RESOURCES; newmmio = calloc(1, sizeof(*newmmio)); if (!newmmio) @@ -365,7 +365,7 @@ efi_status_t efi_add_runtime_mmio(void *mmio_ptr, u64 len) newmmio->len = len; list_add_tail(&newmmio->link, &efi_runtime_mmio); - return ret; + return EFI_SUCCESS; } /*