From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B3997C5B543 for ; Tue, 10 Jun 2025 09:22:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 497AB6B0092; Tue, 10 Jun 2025 05:22:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 46F596B0093; Tue, 10 Jun 2025 05:22:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 35DF96B0095; Tue, 10 Jun 2025 05:22:07 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 168AE6B0092 for ; Tue, 10 Jun 2025 05:22:07 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id C0749141647 for ; Tue, 10 Jun 2025 09:22:06 +0000 (UTC) X-FDA: 83538949452.09.9633306 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf09.hostedemail.com (Postfix) with ESMTP id 36AB6140006 for ; Tue, 10 Jun 2025 09:22:05 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=svACTFx0; spf=pass (imf09.hostedemail.com: domain of arnd@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=arnd@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749547325; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=NGdGk8GFVUn/OUAua609DthN/AyLiaeVZpnX3uqmrSc=; b=vZLJ0nN8XuZHicyX559lMuD+uRuN5rnzAyonLmltcTk03Rb/Ug6b6H+2V0u038+Eb9oRf+ LfhKdMpiKsAfC9/CHJZmrBAujjIigziG4mOgRsKM+699aa0OQDVSCrUBhuFEedTUUFOfs5 u8in7ijOfAlkJ4qAARN+XHFw8e+BXy8= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=svACTFx0; spf=pass (imf09.hostedemail.com: domain of arnd@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=arnd@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749547325; a=rsa-sha256; cv=none; b=EPQul9wSMNt5ZW+3QJoDYNztYhZLOzRg0QLMN8nBKyXV89deLnpIul/WRceqIEdTcIkT5x dEhz9FxEZ6ny69u3oOnuhUr352BpK3LEPUsr4FLJQy5irby6C49KbP32j2oW2wrjTXCEOG k/i8t+dqtxC8wm/41/KC5iIThmLTt6w= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 7C31C5C53EE; Tue, 10 Jun 2025 09:19:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E9C35C4CEEF; Tue, 10 Jun 2025 09:22:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1749547323; bh=YGXBP9lwMZfji91RKvnUA24jkXgM6whNm6o4hq7TUoM=; h=From:To:Cc:Subject:Date:From; b=svACTFx09ibq9oXJmJ5KtYYuSNq+csVKSuSUFl0u+XBinwGs078V0humsqDKKCwEX FjWoMA/LrI51XhkQ9JNaocFw3mfRzWRJAZeJy32EWwV4D1vcQ8pV1J92cCq5o5z8ta XFIOJuib7imHaaxDV6RjcHX1yYVfePRuf0M1PJueMiFN3oiJD8dWJ4rBb/W5JEAmls KpkMp2vWAY43Yn4RIRmBlGlaDfLwRFpD6b+FJQv8KCNGIoQYqI8up0qne7yaEiZBVC m5KCHidQ7h07//TeBMRQYOTL/3Nr7bHAfAf91sXjVaJkDu8679kn6gOqV8fKrWJRLu zHjDRTJY05IVA== From: Arnd Bergmann To: Andrew Morton , =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= Cc: Arnd Bergmann , David Hildenbrand , Alistair Popple , Jason Gunthorpe , Thorsten Blum , Jeff Johnson , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH] lib/test_hmm: reduce stack usage Date: Tue, 10 Jun 2025 11:21:50 +0200 Message-Id: <20250610092159.2639515-1-arnd@kernel.org> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 36AB6140006 X-Stat-Signature: gbq44p3yeacyfa4xhnrttckgzso7zitb X-Rspam-User: X-Rspamd-Server: rspam07 X-HE-Tag: 1749547325-440428 X-HE-Meta: U2FsdGVkX19zOkX3abZNVcYSPjGbsoG5CUUb/ZLxhrFlCN9UIgX5+P6t5Gp3E3ufbNQssCUKjulIFY8621NFoI0iyRK7KYaD8faHgt/wRnSifrb4Onc78ODDu/voxDqyaHTX3YmXPWGgyFG77d32e/l0k9cVFDEDfVcKvi6Ku6NoLXN3bCG/gFyGqPdI2VarFzi12zJBDP4VROIHXYnQhz9VmndLxYJPurYuGED76fP0hU+9M8vH6KisEIC32HR4VHvTaC6fEI9+vvM9ew6YpP2uuUPSW5El+wtIcLhu6MPhAsBooTMtpHW3nsQWBgxvBr8yOJziLDiaSBgmA3FMjqq1jFPXr1XW2OkxNahifZTx6Gf+3EGTQajPFroDnMdS7Bxtk/o7USvsSvOB9XSMT/rxYuuVM1sCQ6k/aUDPutJRQcRS2fMStgSPKMSIfy2HeOMTalR1THSY/DWKMAMwEkmK3tuv7oJv3Qi7mjoIOwwc2hTToM5riAvi1C1g1vsNz9Ys7pwqeNrKMpmD/3nsCkBTiyep5Uf4nk2BGXleu3pgsWJSshu+lyNEk4dokfXu4sd9Ljyv9JBREDVI4PM584/bYVRgEeVqlj3TYuOtZwRgWxIy//qQmsqaY0oUD7V/rKYa4JFwoY/DESeUkWPyBvqGRyW/Pc41/4GeFXZiX6w51UcbZ6XgtpoxGjtPuWU99sdwpui6DWXvp3net94ilg57DGxMVEaIXiYZ0S1O7tmdFdKj31BCA9+phY/KnP+m66B7H5RQaE/n2AmLxs8+nEgyLouRN64yh+qYg6Vy021MfVW5E2iek827zGcefaS17hxCHPV8krN722ze7sf/EHrRWnqDyPWCq2aEKKJxdLsFYV1K2cYIIYrlvdOLrMDqqWT5Qo3tHKF5Im0SHFxANb+Ymv6rLzO8XdqwXFBG4FzEkcTQ9wDlWMGlwKN0F1HiAa3ib7tBLEAw4JFLnHC ahYmr6+0 9DZ3p2Q1PjN7bYooqLhy3gi+YmAbUV3YdGm6HTc9V0V+7+stlFVlqXxPtGCSkqxg2ZTWzHjM7guGUSf/3wMXfBkWJblO9GZu4x0k4zjPOpPFHjbw39fNX2TtxebQCDwxZiYALQ0vwyXAA8FJWzPDOAGGG0jV8JQ4nIl1je6oqsxS3qtWEB+6ABewdpuYEVZOM268TXSzZGR5nS7FhWU6cbuRXGRdURey9ChOx/QDrfz5D4XDVXhRevd3Th6NOrD9bQNyV X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Arnd Bergmann The various test ioctl handlers use arrays of 64 integers that add up to 1KiB of stack data, which in turn leads to exceeding the warning limit in some configurations: lib/test_hmm.c:935:12: error: stack frame size (1408) exceeds limit (1280) in 'dmirror_migrate_to_device' [-Werror,-Wframe-larger-than] Use half the size for these arrays, in order to stay under the warning limits. The code can already deal with arbitrary lengths, but this may be a little less efficient. Signed-off-by: Arnd Bergmann --- lib/test_hmm.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/test_hmm.c b/lib/test_hmm.c index 5b144bc5c4ec..761725bc713c 100644 --- a/lib/test_hmm.c +++ b/lib/test_hmm.c @@ -330,7 +330,7 @@ static int dmirror_fault(struct dmirror *dmirror, unsigned long start, { struct mm_struct *mm = dmirror->notifier.mm; unsigned long addr; - unsigned long pfns[64]; + unsigned long pfns[32]; struct hmm_range range = { .notifier = &dmirror->notifier, .hmm_pfns = pfns, @@ -879,8 +879,8 @@ static int dmirror_migrate_to_system(struct dmirror *dmirror, unsigned long size = cmd->npages << PAGE_SHIFT; struct mm_struct *mm = dmirror->notifier.mm; struct vm_area_struct *vma; - unsigned long src_pfns[64] = { 0 }; - unsigned long dst_pfns[64] = { 0 }; + unsigned long src_pfns[32] = { 0 }; + unsigned long dst_pfns[32] = { 0 }; struct migrate_vma args = { 0 }; unsigned long next; int ret; @@ -939,8 +939,8 @@ static int dmirror_migrate_to_device(struct dmirror *dmirror, unsigned long size = cmd->npages << PAGE_SHIFT; struct mm_struct *mm = dmirror->notifier.mm; struct vm_area_struct *vma; - unsigned long src_pfns[64] = { 0 }; - unsigned long dst_pfns[64] = { 0 }; + unsigned long src_pfns[32] = { 0 }; + unsigned long dst_pfns[32] = { 0 }; struct dmirror_bounce bounce; struct migrate_vma args = { 0 }; unsigned long next; @@ -1144,8 +1144,8 @@ static int dmirror_snapshot(struct dmirror *dmirror, unsigned long size = cmd->npages << PAGE_SHIFT; unsigned long addr; unsigned long next; - unsigned long pfns[64]; - unsigned char perm[64]; + unsigned long pfns[32]; + unsigned char perm[32]; char __user *uptr; struct hmm_range range = { .hmm_pfns = pfns, -- 2.39.5