From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 9AEDCAC4EDF for ; Wed, 7 Feb 2024 14:21:40 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=EC0RzF7zbe4sktee2qZeR+TywcwKWgsquTSf1ijzWSY=; c=relaxed/simple; d=groups.io; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From:In-Reply-To:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-Transfer-Encoding; s=20140610; t=1707315699; v=1; b=I3K4IYqQ3i8e0np5aubit0ro/vInTnxO45kLaDGNLsrQmzJs0c/dM/rerm1rbDzPgChha0GZ bqFpI4k7+uSQmmCUa/ssRi0jva3GOcAH47VebJLwLa8TGISTKBiGYVpghVc2UInZjun/JsT3HCy Y0+4GV4xZpn9hM1OxHlCdmgc= X-Received: by 127.0.0.2 with SMTP id uQcIYY7687511xLv0uUKal6E; Wed, 07 Feb 2024 06:21:39 -0800 X-Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.groups.io with SMTP id smtpd.web10.21515.1707315698474756041 for ; Wed, 07 Feb 2024 06:21:38 -0800 X-Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-487-kZGCUUzENz20v9K5IylIPg-1; Wed, 07 Feb 2024 09:21:35 -0500 X-MC-Unique: kZGCUUzENz20v9K5IylIPg-1 X-Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com [10.11.54.8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 224793C2E0B6; Wed, 7 Feb 2024 14:21:35 +0000 (UTC) X-Received: from [10.39.195.126] (unknown [10.39.195.126]) by smtp.corp.redhat.com (Postfix) with ESMTPS id C24B1C09A0B; Wed, 7 Feb 2024 14:21:33 +0000 (UTC) Message-ID: Date: Wed, 7 Feb 2024 15:21:31 +0100 MIME-Version: 1.0 Subject: Re: [edk2-devel] [edk2 Patch 1/1] EmbeddedPkg: compiler error due to arithmetic operation on void pointer To: "Jayaprakash, N" , Ard Biesheuvel , "devel@edk2.groups.io" Cc: Rebecca Cran , "Kinney, Michael D" , Leif Lindholm , Ard Biesheuvel , Abner Chang References: <20240206052320.1233-1-n.jayaprakash@intel.com> <20240206052320.1233-2-n.jayaprakash@intel.com> From: "Laszlo Ersek" In-Reply-To: X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.8 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,lersek@redhat.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: QqoA1C7wX6Q69xk9XTkyIG4zx7686176AA= Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=I3K4IYqQ; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=redhat.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io On 2/6/24 16:55, Jayaprakash, N wrote: > Thank you Laszlo and Ard Biesheuvel for your inputs. > 2 type cast operations are not needed.=20 > Shall I send an updated patch for review and merger? Yes, please send a new version. It's a build error fix with low regression risk, so it should qualify for merging during the hard freeze even, IMO. BTW, do you have an idea why this issue has popped up only now? The code comes from commit 0d39caefb95e ("EmbeddedPkg/PrePiMemoryAllocationLib: Add ReallocatePool", 2024-01-03), so it's a month old. Is this perhaps the first time that the new ReallocatePool() function has been built with MSVC? (I suspect that because the compiler error message in BZ 4668 seems to come from MSVC.) Laszlo >=20 > Regards, > JP=20 >=20 > -----Original Message----- > From: Laszlo Ersek =20 > Sent: Tuesday, February 6, 2024 8:07 PM > To: Ard Biesheuvel ; devel@edk2.groups.io; Jayaprakash, = N > Cc: Rebecca Cran ; Kinney, Michael D ; Leif Lindholm ; Ard Biesheuvel ; Abner Chang > Subject: Re: [edk2-devel] [edk2 Patch 1/1] EmbeddedPkg: compiler error du= e to arithmetic operation on void pointer >=20 > On 2/6/24 13:57, Ard Biesheuvel wrote: >> On Tue, 6 Feb 2024 at 05:23, Jayaprakash, N wr= ote: >>> >>> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D4668 >>> >>> This commit fixes the issue reported in the BZ4668. >>> The EmbeddedPkg fails to compile with a compiler error generated due=20 >>> to invalid/illegal arithmetic operation on void pointers. It has been= =20 >>> fixed by using explicit type conversion of the void pointer to UINTN. >>> >>> Cc: Rebecca Cran >>> Cc: Michael D Kinney >>> Cc: Laszlo Ersek >>> Cc: Leif Lindholm >>> Cc: Ard Biesheuvel >>> Cc: Abner Chang >>> Cc: Jayaprakash N >>> Signed-off-by: Jayaprakash N >>> --- >>> .../Library/PrePiMemoryAllocationLib/MemoryAllocationLib.c | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git=20 >>> a/EmbeddedPkg/Library/PrePiMemoryAllocationLib/MemoryAllocationLib.c=20 >>> b/EmbeddedPkg/Library/PrePiMemoryAllocationLib/MemoryAllocationLib.c >>> index fa81cc9d59..11566cf57f 100644 >>> ---=20 >>> a/EmbeddedPkg/Library/PrePiMemoryAllocationLib/MemoryAllocationLib.c >>> +++ b/EmbeddedPkg/Library/PrePiMemoryAllocationLib/MemoryAllocationLi >>> +++ b.c >>> @@ -308,7 +308,7 @@ ReallocatePool ( >>> if (OldBuffer !=3D NULL) { >>> HandOffHob =3D GetHobList (); >>> ASSERT (((EFI_PHYSICAL_ADDRESS)(UINTN)OldBuffer >=3D HandOffHob->E= fiMemoryBottom)); >>> - ASSERT (((EFI_PHYSICAL_ADDRESS)(UINTN)(OldBuffer + OldSize) <=3D H= andOffHob->EfiFreeMemoryBottom)); >>> + ASSERT (((EFI_PHYSICAL_ADDRESS)(UINTN)((UINTN)OldBuffer +=20 >>> + OldSize) <=3D HandOffHob->EfiFreeMemoryBottom)); >> >> >> Do we really need two UINTN casts here? >> >=20 > No, that should not be necessary. In > (msgid <01296486-5b14-4b7= 3-b9dc-777a723548cf@redhat.com>), I recommended: >=20 > -------------- > We should replace (UINTN)(OldBuffer + OldSize) with ((UINTN)OldBuffer + O= ldSize). > -------------- >=20 > Note that the text to remove includes the original (UINTN) cast. >=20 > Laszlo >=20 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#115235): https://edk2.groups.io/g/devel/message/115235 Mute This Topic: https://groups.io/mt/104193285/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-