From nobody Mon May 25 05:58:57 2026 Received: from mailgw.kylinos.cn (mailgw.kylinos.cn [124.126.103.232]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 67BA537D104; Mon, 18 May 2026 08:21:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=124.126.103.232 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779092475; cv=none; b=Mssut57Pe0pr4bixwm/xkJkTdAHgtZFJ6mf9PnAWVkjGRNnKD2xV5wipLAn2GDivs1zRihvmKBPLi0hWNVOkcrs/POg266uocq+siMZ5rMlJzsPhGHhM6NwDq8CwCR3FFOROwlOvJzqI5mk03/lWG1NUZ9KTWqo+P5lEz01ijkk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779092475; c=relaxed/simple; bh=fa1niQ8KA4AEe+k5cwpjO5vJ7osWOjSGGExyw7jfec8=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=dGqiS7oB/Msdxk+/u+ALTmHFxR8na/mCZVI7bBoJimYSD/w2MWdFc04bw0SC7TVmpxCDyJ2OVdMBlTYkRGWpMKNiwhW6ae1tvm9XAJ+veVwulK0vu1H5dH11XtXvFB1m8hsi844Ir8HwlNVoG8I5T8XI5CSACgakMgLQbzoEra4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=kylinos.cn; spf=pass smtp.mailfrom=kylinos.cn; arc=none smtp.client-ip=124.126.103.232 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=kylinos.cn Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=kylinos.cn X-UUID: 84798ff4529211f1aa26b74ffac11d73-20260518 X-CTIC-Tags: HR_CC_COUNT, HR_CC_DOMAIN_COUNT, HR_CC_NAME, HR_CC_NO_NAME, HR_CTE_8B HR_CTT_MISS, HR_DATE_H, HR_DATE_WKD, HR_DATE_ZONE, HR_FROM_NAME HR_SJ_LANG, HR_SJ_LEN, HR_SJ_LETTER, HR_SJ_NOR_SYM, HR_SJ_PHRASE HR_SJ_PHRASE_LEN, HR_SJ_WS, HR_TO_COUNT, HR_TO_DOMAIN_COUNT, HR_TO_NO_NAME IP_TRUSTED, SRC_TRUSTED, DN_TRUSTED, SA_TRUSTED, SA_EXISTED SN_TRUSTED, SN_EXISTED, SPF_NOPASS, DKIM_NOPASS, DMARC_NOPASS CIE_GOOD, CIE_GOOD_SPF, GTI_FG_BS, GTI_RG_INFO, GTI_C_BU AMN_GOOD, ABX_MISS_RDNS X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.3.12,REQID:c43c0ae4-c94b-46a4-88a5-2b37133bb355,IP:10, URL:0,TC:0,Content:-25,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTI ON:release,TS:-15 X-CID-INFO: VERSION:1.3.12,REQID:c43c0ae4-c94b-46a4-88a5-2b37133bb355,IP:10,UR L:0,TC:0,Content:-25,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION :release,TS:-15 X-CID-META: VersionHash:e7bac3a,CLOUDID:4e25d0cca9c87494f8cb9aa16d37c8e7,BulkI D:2605181621085YHCR8YL,BulkQuantity:0,Recheck:0,SF:17|19|38|66|78|102|127| 850|865|898,TC:nil,Content:0|15|50,EDM:-3,IP:-2,URL:0,File:nil,RT:nil,Bulk :nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES:1,SPR:NO,DKR:0,DKP:0,BRR:0, BRE:0,ARC:0 X-CID-BVR: 2,SSN|SDN X-CID-BAS: 2,SSN|SDN,0,_ X-CID-FACTOR: TF_CID_SPAM_SNR,TF_CID_SPAM_FAS,TF_CID_SPAM_FSD X-CID-RHF: D41D8CD98F00B204E9800998ECF8427E X-UUID: 84798ff4529211f1aa26b74ffac11d73-20260518 X-User: lihongfu@kylinos.cn Received: from localhost.localdomain [(223.70.159.239)] by mailgw.kylinos.cn (envelope-from ) (Generic MTA with TLSv1.3 TLS_AES_256_GCM_SHA384 256/256) with ESMTP id 1102519821; Mon, 18 May 2026 16:21:06 +0800 From: Hongfu Li To: akpm@linux-foundation.org, david@kernel.org, ljs@kernel.org, liam@infradead.org, vbabka@kernel.org, rppt@kernel.org, surenb@google.com, mhocko@suse.com, shuah@kernel.org Cc: linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, Hongfu Li Subject: [PATCH] selftests/mm: add missing mmap() return checks in pkey tests Date: Mon, 18 May 2026 16:21:20 +0800 Message-Id: <20260518082120.3890552-1-lihongfu@kylinos.cn> X-Mailer: git-send-email 2.25.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Several mmap() calls lack error checks and would crash on failure. Add the missing checks. Also replace bare (void *)-1 with the standard MAP_FAILED macro in protection_keys.c for consistency. Signed-off-by: Hongfu Li --- tools/testing/selftests/mm/pkey_sighandler_tests.c | 2 ++ tools/testing/selftests/mm/protection_keys.c | 9 +++++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/mm/pkey_sighandler_tests.c b/tools/tes= ting/selftests/mm/pkey_sighandler_tests.c index 302fef54049c..4637809192f9 100644 --- a/tools/testing/selftests/mm/pkey_sighandler_tests.c +++ b/tools/testing/selftests/mm/pkey_sighandler_tests.c @@ -317,6 +317,7 @@ static void test_sigsegv_handler_with_different_pkey_fo= r_stack(void) /* Set up alternate signal stack that will use the default MPK */ sigstack.ss_sp =3D mmap(0, STACK_SIZE, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); + assert(sigstack.ss_sp !=3D MAP_FAILED); sigstack.ss_flags =3D 0; sigstack.ss_size =3D STACK_SIZE; =20 @@ -490,6 +491,7 @@ static void test_pkru_sigreturn(void) /* Set up alternate signal stack that will use the default MPK */ sigstack.ss_sp =3D mmap(0, STACK_SIZE, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); + assert(sigstack.ss_sp !=3D MAP_FAILED); sigstack.ss_flags =3D 0; sigstack.ss_size =3D STACK_SIZE; =20 diff --git a/tools/testing/selftests/mm/protection_keys.c b/tools/testing/s= elftests/mm/protection_keys.c index 2085982dba69..d53bdc540a74 100644 --- a/tools/testing/selftests/mm/protection_keys.c +++ b/tools/testing/selftests/mm/protection_keys.c @@ -667,7 +667,7 @@ static void *malloc_pkey_with_mprotect(long size, int p= rot, u16 pkey) size, prot, pkey); pkey_assert(pkey < NR_PKEYS); ptr =3D mmap(NULL, size, prot, MAP_ANONYMOUS|MAP_PRIVATE, -1, 0); - pkey_assert(ptr !=3D (void *)-1); + pkey_assert(ptr !=3D MAP_FAILED); ret =3D mprotect_pkey((void *)ptr, PAGE_SIZE, prot, pkey); pkey_assert(!ret); record_pkey_malloc(ptr, size, prot); @@ -690,7 +690,7 @@ static void *malloc_pkey_anon_huge(long size, int prot,= u16 pkey) */ size =3D ALIGN_UP(size, HPAGE_SIZE * 2); ptr =3D mmap(NULL, size, PROT_NONE, MAP_ANONYMOUS|MAP_PRIVATE, -1, 0); - pkey_assert(ptr !=3D (void *)-1); + pkey_assert(ptr !=3D MAP_FAILED); record_pkey_malloc(ptr, size, prot); mprotect_pkey(ptr, size, prot, pkey); =20 @@ -770,7 +770,7 @@ static void *malloc_pkey_hugetlb(long size, int prot, u= 16 pkey) size =3D ALIGN_UP(size, HPAGE_SIZE * 2); pkey_assert(pkey < NR_PKEYS); ptr =3D mmap(NULL, size, PROT_NONE, flags, -1, 0); - pkey_assert(ptr !=3D (void *)-1); + pkey_assert(ptr !=3D MAP_FAILED); mprotect_pkey(ptr, size, prot, pkey); =20 record_pkey_malloc(ptr, size, prot); @@ -1217,6 +1217,7 @@ static void arch_force_pkey_reg_init(void) * doing the XSAVE size enumeration dance. */ buf =3D mmap(NULL, 1*MB, PROT_READ|PROT_WRITE, MAP_ANONYMOUS|MAP_PRIVATE,= -1, 0); + pkey_assert(buf !=3D MAP_FAILED); =20 /* These __builtins require compiling with -mxsave */ =20 @@ -1775,7 +1776,7 @@ int main(void) printf("running PKEY tests for unsupported CPU/OS\n"); =20 ptr =3D mmap(NULL, size, PROT_NONE, MAP_ANONYMOUS|MAP_PRIVATE, -1, 0); - assert(ptr !=3D (void *)-1); + assert(ptr !=3D MAP_FAILED); test_mprotect_pkey_on_unsupported_cpu(ptr, 1); exit(0); } --=20 2.25.1