lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aRA6lEQmmrvmj2DX@kernel.org>
Date: Sun, 9 Nov 2025 08:54:12 +0200
From: Mike Rapoport <rppt@...nel.org>
To: Andrew Morton <akpm@...ux-foundation.org>,
	Nathan Chancellor <nathan@...nel.org>
Cc: "David Hildenbrand (Red Hat)" <david@...nel.org>,
	Ankit Khushwaha <ankitkhushwaha.linux@...il.com>,
	Lorenzo Stoakes <lorenzo.stoakes@...cle.com>,
	"Liam R. Howlett" <Liam.Howlett@...cle.com>,
	Vlastimil Babka <vbabka@...e.cz>,
	Suren Baghdasaryan <surenb@...gle.com>,
	Michal Hocko <mhocko@...e.com>, Shuah Khan <shuah@...nel.org>,
	linux-mm@...ck.org, linux-kselftest@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] selftest/mm: fix pointer comparison in mremap_test

(added Nathan for clang advice)

On Fri, Nov 07, 2025 at 04:08:55PM -0800, Andrew Morton wrote:
> On Fri, 7 Nov 2025 10:27:27 +0100 "David Hildenbrand (Red Hat)" <david@...nel.org> wrote:
> 
> > On 06.11.25 13:02, Ankit Khushwaha wrote:
> > > On Thu, Nov 06, 2025 at 12:18:57PM +0100, David Hildenbrand (Red Hat) wrote:
> > >> On 06.11.25 11:49, Ankit Khushwaha wrote:
> > >>> Pointer arthemitic with 'void * addr' and 'unsigned long long dest_alignment'
> > >>> triggers following warning:
> > >>>
> > >>> mremap_test.c:1035:31: warning: pointer comparison always evaluates to
> > >>> false [-Wtautological-compare]
> > >>>    1035 |                 if (addr + c.dest_alignment < addr) {
> > >>>         |                                             ^
> > >>>
> > >>> typecasting 'addr' to 'unsigned long long' to fix pointer comparison.
> > >>
> > >> With which compiler are you seeing this?
> > > 
> > > Hi David,
> > > 
> > > clang version 20.1.8 (Fedora 20.1.8-4.fc42) raised this warning.
> > > 
> > > To reproduce:
> > > 	make -C tools/testing/selftests/mm CC=clang
> > 
> > Thanks, and thanks to Lorenzo for the details.
> > 
> > Acked-by: David Hildenbrand (Red Hat) <david@...nel.org>
> 
> I must say, applying this would be an unhappy life event.
> 
> 	if (void* + ulong < void*)
> 
> makes perfect sense in a world which permits void* arithmetic (ie,
> ours).  So what the heck is clang doing??
> 
> If we do
> 
> 	void *addr2 = addr + c.dest_alignment;
> 	if (addr2 < addr)
> 		...
> 
> then which statement warns, and why?

-- 
Sincerely yours,
Mike.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ