From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: None (no SPF record) identity=mailfrom; client-ip=134.134.136.126; helo=mga18.intel.com; envelope-from=ryszard.knop@linux.intel.com; receiver=edk2-devel@lists.01.org Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 40B6E211BD612 for ; Wed, 30 Jan 2019 07:31:20 -0800 (PST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Jan 2019 07:31:20 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,540,1539673200"; d="scan'208";a="122586521" Received: from linux.intel.com ([10.54.29.200]) by orsmga003.jf.intel.com with ESMTP; 30 Jan 2019 07:31:20 -0800 Received: from torii (torii.igk.intel.com [10.102.24.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by linux.intel.com (Postfix) with ESMTPS id 64F6B580550; Wed, 30 Jan 2019 07:31:18 -0800 (PST) Message-ID: <57c7b1f235c18812da7986a9ae147463e13b2dfb.camel@linux.intel.com> From: Ryszard Knop To: Ard Biesheuvel Cc: "edk2-devel@lists.01.org" , "Kacperski, Kamil" , "Jin, Eric" , "Orlowski, Pawel" , "Kinney, Michael D" , "Hsiung, Harry L" Date: Wed, 30 Jan 2019 16:31:16 +0100 In-Reply-To: References: <20181106175833.26964-1-ard.biesheuvel@linaro.org> <20181106175833.26964-19-ard.biesheuvel@linaro.org> Organization: Intel Corporation User-Agent: Evolution 3.30.4 Mime-Version: 1.0 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:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 X-List-Received-Date: Wed, 30 Jan 2019 15:31:21 -0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Builds were fine, the result didn't work. Adding proper EFIAPIs fixed that, so should be okay everywhere. 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 > > > )