From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2607:f8b0:4864:20::142; helo=mail-it1-x142.google.com; envelope-from=ard.biesheuvel@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-it1-x142.google.com (mail-it1-x142.google.com [IPv6:2607:f8b0:4864:20::142]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 66212211BD612 for ; Wed, 30 Jan 2019 07:33:38 -0800 (PST) Received: by mail-it1-x142.google.com with SMTP id z7so10837717iti.0 for ; Wed, 30 Jan 2019 07:33:38 -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=f2v6sEs7cSLJc5ITdaV9PT7vqARE5cNdUrzZW8Y6Vog=; b=a409riWLH5wVVMc8aBhvkjLGtwlHLTMDdpHdzOE8DJk0LbiJKU1zTqHKPY4X79LHVZ SK49ojN5DiesRttBqvrvtSsYbruU9+wjxroG73I8pqU7Z72+nUF2i5/AeU2XvgDBrMFT qBEdBrs93tZ5JBriDEr39u56f2DdjBz+17MsY= 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=f2v6sEs7cSLJc5ITdaV9PT7vqARE5cNdUrzZW8Y6Vog=; b=Pw2h3hAJB+BQuFDyUp8wxWeIZhN2TQjmz/u3NcnMamivUr/9VED3/0ho7NAOqWXyKv Ho+MAJXtp2NYZ0gAAu2JXHmUllfDLnJ4Lpa+K/sVylpQmqhoI7EeQefEKsPsl5+WUvkH CSeNCMp3iBdlwa2dzVBV1PkWshpyDUl2dYMqntx0fz8u9ncvYStS4jeQtKtFZDXFUsD8 DfellrcWUj1PpXJktI/ukRSuJ9dVgi4195Hcy6hE42Emqw7edXshnKf7AVsUiREhxgJ8 EkwMaCZKHsOhFd86P8IvTWlO0BRpHnA+5ox3nzef2knzE119ns/TLsowoGwQoXCh9SaG MNYA== X-Gm-Message-State: AJcUuke8Q+uCC6m0sRDOxjjEd+DoJiaFkMMJgrdadBmXODAI60hb+Mwr NohYsTbvU24PAWG15MZC784bciBqOs5Q7qyZ96Uf7Q== X-Google-Smtp-Source: ALg8bN4YdLj0RxBX3/Q6ZdFLNM1woySN9ruNfxURbldy/Z7bsBUCxxWRXDB4LmLQuKbwgyDVYupndFjj3TM+BIb52aU= X-Received: by 2002:a24:edc4:: with SMTP id r187mr17885182ith.158.1548862416399; Wed, 30 Jan 2019 07:33:36 -0800 (PST) MIME-Version: 1.0 References: <20181106175833.26964-1-ard.biesheuvel@linaro.org> <20181106175833.26964-19-ard.biesheuvel@linaro.org> <57c7b1f235c18812da7986a9ae147463e13b2dfb.camel@linux.intel.com> In-Reply-To: <57c7b1f235c18812da7986a9ae147463e13b2dfb.camel@linux.intel.com> From: Ard Biesheuvel Date: Wed, 30 Jan 2019 16:33:24 +0100 Message-ID: To: Ryszard Knop Cc: "edk2-devel@lists.01.org" , "Kacperski, Kamil" , "Jin, Eric" , "Orlowski, Pawel" , "Kinney, Michael D" , "Hsiung, Harry L" Subject: Re: [PATCH edk2-staging 18/19] IntelUndiPkg/GigUndiDxe: add missing EFIAPI modifiers X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:33:38 -0000 Content-Type: text/plain; charset="UTF-8" On Wed, 30 Jan 2019 at 16:31, Ryszard Knop wrote: > > Builds were fine, the result didn't work. Adding proper EFIAPIs fixed > that, so should be okay everywhere. > Right. No I didn't spot that - I did build tests of all architectures, and boot tests on 64-bit ARM. (I don't have x86 hardware with PCIe slots) > On Wed, 2019-01-30 at 16:20 +0100, Ard Biesheuvel wrote: > > On Wed, 30 Jan 2019 at 16:15, Ryszard Knop < > > ryszard.knop@linux.intel.com> wrote: > > > I'm going through all the protocols we have defined/used and in > > > Decode.c/h there's [E1000]UndiApiEntry for PXE/UNDI callbacks. I've > > > tested an X64 GCC build under OVMF and these calls were broken due > > > to > > > mismatched calling conventions. Did this work correctly for your > > > builds > > > on your platforms? > > > > > > > Do you mean the builds were broken? Or the resulting builds didn't > > work? > > > > In any case, that issue only exists on X64, since there are different > > SysV and MS calling conventions. and GCC uses the former by default. > > On ARM, there is no such difference. > > > > > Reviewed-by: Ryszard Knop > > > > > > On Tue, 2018-11-06 at 18:58 +0100, ard.biesheuvela wrote: > > > > Contributed-under: TianoCore Contribution Agreement 1.1 > > > > Signed-off-by: Ard Biesheuvel > > > > --- > > > > IntelUndiPkg/GigUndiDxe/AdapterInformation.c | 3 +++ > > > > IntelUndiPkg/GigUndiDxe/ComponentName.c | 2 ++ > > > > IntelUndiPkg/GigUndiDxe/ComponentName.h | 1 + > > > > IntelUndiPkg/GigUndiDxe/DriverConfiguration.c | 3 +++ > > > > IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c | 1 + > > > > IntelUndiPkg/GigUndiDxe/DriverHealth.c | 2 ++ > > > > IntelUndiPkg/GigUndiDxe/StartStop.c | 2 ++ > > > > 7 files changed, 14 insertions(+) > > > > > > > > diff --git a/IntelUndiPkg/GigUndiDxe/AdapterInformation.c > > > > b/IntelUndiPkg/GigUndiDxe/AdapterInformation.c > > > > index 8918c538e447..1cece79911b1 100644 > > > > --- a/IntelUndiPkg/GigUndiDxe/AdapterInformation.c > > > > +++ b/IntelUndiPkg/GigUndiDxe/AdapterInformation.c > > > > @@ -123,6 +123,7 @@ GetIpv6SupportInformationBlock ( > > > > **/ > > > > STATIC > > > > EFI_STATUS > > > > +EFIAPI > > > > GetInformation ( > > > > IN EFI_ADAPTER_INFORMATION_PROTOCOL *This, > > > > IN EFI_GUID * InformationType, > > > > @@ -188,6 +189,7 @@ GetInformation ( > > > > **/ > > > > STATIC > > > > EFI_STATUS > > > > +EFIAPI > > > > SetInformation ( > > > > IN EFI_ADAPTER_INFORMATION_PROTOCOL *This, > > > > IN EFI_GUID * InformationType, > > > > @@ -234,6 +236,7 @@ SetInformation ( > > > > **/ > > > > STATIC > > > > EFI_STATUS > > > > +EFIAPI > > > > GetSupportedTypes ( > > > > IN EFI_ADAPTER_INFORMATION_PROTOCOL *This, > > > > OUT EFI_GUID ** InfoTypesBuffer, > > > > diff --git a/IntelUndiPkg/GigUndiDxe/ComponentName.c > > > > b/IntelUndiPkg/GigUndiDxe/ComponentName.c > > > > index 70baf00f4a5d..2bf9bbfbe0e4 100644 > > > > --- a/IntelUndiPkg/GigUndiDxe/ComponentName.c > > > > +++ b/IntelUndiPkg/GigUndiDxe/ComponentName.c > > > > @@ -112,6 +112,7 @@ ComponentNameInitializeControllerName ( > > > > language specified by > > > > Language. > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > ComponentNameGetDriverName ( > > > > IN EFI_COMPONENT_NAME_PROTOCOL *This, > > > > IN CHAR8 * Language, > > > > @@ -182,6 +183,7 @@ ComponentNameGetDriverName ( > > > > language specified by > > > > Language. > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > ComponentNameGetControllerName ( > > > > IN EFI_COMPONENT_NAME_PROTOCOL > > > > * This, > > > > IN EFI_HANDLE > > > > Co > > > > ntrollerHandle, > > > > diff --git a/IntelUndiPkg/GigUndiDxe/ComponentName.h > > > > b/IntelUndiPkg/GigUndiDxe/ComponentName.h > > > > index 5a3d414c6970..0b93a5410fc0 100644 > > > > --- a/IntelUndiPkg/GigUndiDxe/ComponentName.h > > > > +++ b/IntelUndiPkg/GigUndiDxe/ComponentName.h > > > > @@ -65,6 +65,7 @@ ComponentNameInitializeControllerName ( > > > > language specified by > > > > Language. > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > ComponentNameGetDriverName ( > > > > IN EFI_COMPONENT_NAME_PROTOCOL *This, > > > > IN CHAR8 * Language, > > > > diff --git a/IntelUndiPkg/GigUndiDxe/DriverConfiguration.c > > > > b/IntelUndiPkg/GigUndiDxe/DriverConfiguration.c > > > > index 20d40ab672ef..99e086d81044 100644 > > > > --- a/IntelUndiPkg/GigUndiDxe/DriverConfiguration.c > > > > +++ b/IntelUndiPkg/GigUndiDxe/DriverConfiguration.c > > > > @@ -310,6 +310,7 @@ GigUndiDriverConfigurationDisplayMenu ( > > > > @retval EFI_SUCCESS Configuration was successful > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > GigUndiDriverConfigurationSetOptions ( > > > > IN EFI_DRIVER_CONFIGURATION_PROTOCOL * This, > > > > IN > > > > EFI_HANDLE ControllerHandle, > > > > @@ -418,6 +419,7 @@ GigUndiDriverConfigurationSetOptions ( > > > > @retval EFI_SUCCESS Always returned > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > GigUndiDriverConfigurationOptionsValid ( > > > > IN EFI_DRIVER_CONFIGURATION_PROTOCOL * This, > > > > IN EFI_HANDLE ControllerHandle, > > > > @@ -442,6 +444,7 @@ GigUndiDriverConfigurationOptionsValid ( > > > > @retval EFI_SUCCESS Configuration was successful > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > GigUndiDriverConfigurationForceDefaults ( > > > > IN EFI_DRIVER_CONFIGURATION_PROTOCOL * This, > > > > IN > > > > EFI_HANDLE ControllerH > > > > andl > > > > e, > > > > diff --git a/IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c > > > > b/IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c > > > > index aceb015e480f..f6152cd24c59 100644 > > > > --- a/IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c > > > > +++ b/IntelUndiPkg/GigUndiDxe/DriverDiagnostics.c > > > > @@ -1394,6 +1394,7 @@ Error: > > > > ChildHandle did not pass the > > > > diagnostic. > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > GigUndiDriverDiagnosticsRunDiagnostics ( > > > > IN EFI_DRIVER_DIAGNOSTICS_PROTOCOL * This, > > > > IN > > > > EFI_HANDLE ControllerHandle, > > > > diff --git a/IntelUndiPkg/GigUndiDxe/DriverHealth.c > > > > b/IntelUndiPkg/GigUndiDxe/DriverHealth.c > > > > index b5b7db5fd814..ea306843679a 100644 > > > > --- a/IntelUndiPkg/GigUndiDxe/DriverHealth.c > > > > +++ b/IntelUndiPkg/GigUndiDxe/DriverHealth.c > > > > @@ -44,6 +44,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE > > > > POSSIBILITY OF SUCH DAMAGE. > > > > @retval !EFI_SUCCESS Failure to retrieve health > > > > status > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > GetHealthStatus ( > > > > IN EFI_DRIVER_HEALTH_PROTOCOL * This, > > > > IN EFI_HANDLE ControllerHandle, > > > > OPTIONAL > > > > @@ -119,6 +120,7 @@ GetHealthStatus ( > > > > @retval EFI_UNSUPPORTED This function is unsupported > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > Repair ( > > > > IN EFI_DRIVER_HEALTH_PROTOCOL *This, > > > > IN EFI_HANDLE ControllerHandle > > > > , > > > > diff --git a/IntelUndiPkg/GigUndiDxe/StartStop.c > > > > b/IntelUndiPkg/GigUndiDxe/StartStop.c > > > > index 32bed7ce288d..a788da247e6d 100644 > > > > --- a/IntelUndiPkg/GigUndiDxe/StartStop.c > > > > +++ b/IntelUndiPkg/GigUndiDxe/StartStop.c > > > > @@ -38,6 +38,7 @@ EFI_GUID gEfiStartStopProtocolGuid = > > > > EFI_DRIVER_STOP_PROTOCOL_GUID; > > > > @retval EFI_SUCCESS Driver is stopped successfully > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > StopDriver ( > > > > IN EFI_DRIVER_STOP_PROTOCOL *This > > > > ) > > > > @@ -62,6 +63,7 @@ StopDriver ( > > > > @retval EFI_SUCCESS If driver has restarted successfully > > > > **/ > > > > EFI_STATUS > > > > +EFIAPI > > > > StartDriver ( > > > > IN EFI_DRIVER_STOP_PROTOCOL *This > > > > ) >