From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6CB1C1F4192 for ; Fri, 29 Aug 2025 18:32:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492331; cv=none; b=eQFhRFPnOpj49RSuIBe0ND7PvpJb4qYfh8x8/ac/TIC2giMYQ5acpIJycjEMIXvCvIJkFj3Hm0tJIM6W+pnNOazSR6Pcnl9iHVMByhESiern3lsHZchNLt/kUK2Kl2YwVid1bbvR7GtZxVl1rGnTXL1UW9WFLuevC1pEvn3kXvw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492331; c=relaxed/simple; bh=TVUp5dA4IRX5BaG9cKIxs0AOGjT7jJ00wR6t0GEzsPo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=F9rWp2sRxeZk4uAhUA1M6q93ZT2tjqOX+GYyA48icL3/mEhxuiFWlXzmVO975A0ST8PLr0nYnw4+3puoAW1U9JDYsJZu1TZA0RLgSHsP4IebIvjWq6QmHGqTRFGvwb6VYXtoZrpTILbFv2L31IZnrbykw48ziZ/IDkhLwf99cM8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=c7nyHeOC; arc=none smtp.client-ip=209.85.218.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="c7nyHeOC" Received: by mail-ej1-f46.google.com with SMTP id a640c23a62f3a-afeceee8bb1so367323766b.3 for ; Fri, 29 Aug 2025 11:32:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492328; x=1757097128; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=TSo01xEtu7GaLlUrg3B9Uz1MDG42fOObUQbcFYUl6Tw=; b=c7nyHeOC+fpSQtuLOgLosbb/0XmDCe1vYZStb/pKoZN4Ef3gRLwWLvE5+pLvdgWsHp F7Zgnu635GEBKyRMJlcKq9T/yEn2aV7slCEBESuo88chyi+6DExN+5w0AsecrZ56tT/V GtJ3xWY9U1aIO7LS9G06ju7jl2e/wsL2GA+v/xoJuLieeZJVMTiPyTCqNtrfqlSkZDBi cmGniEBEqIo2JnoSP3u2KrCGuDIDopvVbQet4JZlM2seTsQtl5aMUdUCnag/reIB6fYo h0d3HCuxZo9MNs1Nhf9DSRnsc9OHP8GftRiyfUDf9CdSs+b0nXK7xgRl6rLfiKW0UmFv OPPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492328; x=1757097128; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TSo01xEtu7GaLlUrg3B9Uz1MDG42fOObUQbcFYUl6Tw=; b=ZLQaypyLqnlUgR3fCSGbhv7lc7AAF2rygZbLk/ts1QrTrP616ZL2yYQjwyoTKwV6jf ieTE3EU47OWmyRAFah4GRk9jEnwo3cLSOBypZwx0fQX0csI9rDGM2MqJsudTbq5Thuy9 ANYn1rzCDsqBa8v2tOmYJgVJVOTQXxsrloU+hieZaTN7+IbSSgQSAYs3K+FigLK/348S EwrLPuYLIdzLK6qVQzvzQo4JrmrqcYXt67zfpR16R/c8I7ePMjCTCiWDSPUg8TsCLCEX tudwNq7hwOdSZq2kP+K5kqyAN25h+pF1hcHNb+XdALALe97c1Nzx9hClHMz0gC4gy7ar fOrg== X-Forwarded-Encrypted: i=1; AJvYcCWl+ElM9Og44Ov2aLS4jVo/h/GNC62gRQAuqUZ4d7Py+UsdEJkEBpqFFvVKM1iBM0gOzY9vGQEjLb6/EBA=@vger.kernel.org X-Gm-Message-State: AOJu0YyWnDK/iemmpp3XLUCsf+mg6VtNX+irsy4AvBWupRWDUMH5031L dc8IyBrnP23CGrfsu+rPqxIdYqYW6Sjp8RElZjp1Q8sGvBfKFuIPofN86gBUmyqstoRwmlwKXhz g+rFO X-Gm-Gg: ASbGncvFmDCbodXYV7GFHD+HZQGBhEvFLp4Oh9+Qf3F7fsk0rlFNxCyNhjVwY2/g378 WQxcja8VjMIYfTLbwjJ63cNlietwwLoB6yaXK9lIyqkbhH6XhTBy5A+Jq0hScHP/hM9Fe75L/lf ZJ5xJmPKssx/EcxfxDZhtluOO0ipSJOi8LD1uqMen9Jvzq4o4MD/ev6CzsH+BHmaRapfaNKAR+/ dWo0zDEMr9OiXHKqdccZe/coeg3bskv9ovQnud9OgZKsP9QgLMHhTalkSyYXwVhwvF8u6eZhnrq X0p8mm+jhmOkSU47gNprd3Cg5Vm1UzvokT5vaB1EkaD8pcO0vDeZk1HgNe6uDnT0PwfjOPW8Tou lKMCsv4wslsmUCqHsTt52/xlOdSBfFFIGTJCNUBnS1lC2HtIhTKBDWQmeJ2Lm//Zp5mcZbZHyq9 aug1A4coRfkrWc/VIPW80zlA== X-Google-Smtp-Source: AGHT+IGgIyPvXdAAvfBmrm+euAdBjSIIwKAClvgKzuXio2hH7ieSXYoNrka6sHgGz0RCbGkrNqL78g== X-Received: by 2002:a17:907:3f07:b0:afe:35d:fd5d with SMTP id a640c23a62f3a-afe28f75d2cmr2585600666b.1.1756492327516; Fri, 29 Aug 2025 11:32:07 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:07 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 01/12] mm/shmem: add `const` to lots of pointer parameters Date: Fri, 29 Aug 2025 20:31:48 +0200 Message-ID: <20250829183159.2223948-2-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann Reviewed-by: Vishal Moola (Oracle) Reviewed-by: Yuanchu Xie --- include/linux/mm.h | 8 ++++---- include/linux/shmem_fs.h | 4 ++-- mm/shmem.c | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 00c8a54127d3..a40a3c42c904 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -979,11 +979,11 @@ static inline void vma_iter_set(struct vma_iterator *= vmi, unsigned long addr) * The vma_is_shmem is not inline because it is used only by slow * paths in userfault. */ -bool vma_is_shmem(struct vm_area_struct *vma); -bool vma_is_anon_shmem(struct vm_area_struct *vma); +bool vma_is_shmem(const struct vm_area_struct *vma); +bool vma_is_anon_shmem(const struct vm_area_struct *vma); #else -static inline bool vma_is_shmem(struct vm_area_struct *vma) { return false= ; } -static inline bool vma_is_anon_shmem(struct vm_area_struct *vma) { return = false; } +static inline bool vma_is_shmem(const struct vm_area_struct *vma) { return= false; } +static inline bool vma_is_anon_shmem(const struct vm_area_struct *vma) { r= eturn false; } #endif =20 int vma_is_stack_for_current(struct vm_area_struct *vma); diff --git a/include/linux/shmem_fs.h b/include/linux/shmem_fs.h index 6d0f9c599ff7..0e47465ef0fd 100644 --- a/include/linux/shmem_fs.h +++ b/include/linux/shmem_fs.h @@ -99,9 +99,9 @@ extern unsigned long shmem_get_unmapped_area(struct file = *, unsigned long addr, unsigned long len, unsigned long pgoff, unsigned long flags); extern int shmem_lock(struct file *file, int lock, struct ucounts *ucounts= ); #ifdef CONFIG_SHMEM -bool shmem_mapping(struct address_space *mapping); +bool shmem_mapping(const struct address_space *mapping); #else -static inline bool shmem_mapping(struct address_space *mapping) +static inline bool shmem_mapping(const struct address_space *mapping) { return false; } diff --git a/mm/shmem.c b/mm/shmem.c index 13cc51df3893..2a4476e223a3 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -275,18 +275,18 @@ static const struct vm_operations_struct shmem_vm_ops; static const struct vm_operations_struct shmem_anon_vm_ops; static struct file_system_type shmem_fs_type; =20 -bool shmem_mapping(struct address_space *mapping) +bool shmem_mapping(const struct address_space *mapping) { return mapping->a_ops =3D=3D &shmem_aops; } EXPORT_SYMBOL_GPL(shmem_mapping); =20 -bool vma_is_anon_shmem(struct vm_area_struct *vma) +bool vma_is_anon_shmem(const struct vm_area_struct *vma) { return vma->vm_ops =3D=3D &shmem_anon_vm_ops; } =20 -bool vma_is_shmem(struct vm_area_struct *vma) +bool vma_is_shmem(const struct vm_area_struct *vma) { return vma_is_anon_shmem(vma) || vma->vm_ops =3D=3D &shmem_vm_ops; } --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com [209.85.218.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6FF4E2749CA for ; Fri, 29 Aug 2025 18:32:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492332; cv=none; b=MAmBMBVKJl4fzHN4hPIYo0dAulEAlbUFvBPsj7bHVjPSWs+UCcrlIa/3nRJykSZWv6i3u0BkgZNqJM6YSAGrc1EC1zuF7BXQoA/UJDwTSnKRZGMgGpKH0cqFel2gk90+uQolLkswLSdiq+B4uAnk47EQywLzrN0H+v4SC+pEPv8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492332; c=relaxed/simple; bh=d53W0PAMwqxqDV7iqxU0J6guyLEFfIoIuFOwA5UdDXg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=oD/nHMAB1mZtcDVtybgqcxsFi5g3DpwEGPUtR/jH2yCy4XvkNwM6IJ1iql8tfdCpxtq9UEFTVnAyGJYBWEOMA8aR5amRY3Dm1J7ulc1gxUYsIawWo8IINiNDXz4fDARoOiTMuMpC28Ly6eCLIwCjKnAw/fXFZK+LMyp97Hb0Pn4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=Y/yLeIIE; arc=none smtp.client-ip=209.85.218.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="Y/yLeIIE" Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-afcb72d51dcso358060966b.0 for ; Fri, 29 Aug 2025 11:32:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492329; x=1757097129; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3EDFLxjASQVlPYlwefEaYkxxqYLA/xYc3thBaHxBLgU=; b=Y/yLeIIE/JA6s6eW2/+shCab9+z0nnHxMi91nR1OhGVbl6b44fBpdwkB2fEbhSxHSm iGSyBAeJgoeWZv/Jo14tCphhh/GObwHVmFcEy2rnnPPsKUKKXc9b5b5wd6m6uDy211Qb qQF2CR8XfiqIUQW0qV1HTKro3Gfmq4THa+vYkLnkhAyxVquXTvRC/Rc8JZjIq96luUbL bfKoYk9oAq3p9ISOSY6eiK7GdnQoidEBVnMJeCMUq2sk83qAL7VVUAJ8TNH3V/6lBAq2 C0gjcHWtIOw0pYaYVM5nPsYMaLZzbWLtFLFRx4HaKCdMr0pZKoYpYqpQp653kuhNO3Vs Wrlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492329; x=1757097129; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3EDFLxjASQVlPYlwefEaYkxxqYLA/xYc3thBaHxBLgU=; b=u9PagjeLCqhZd/1prC0oZyAKOagPoONkGOyNjkyA/3JqxzTIrzgT0xolngx3cVE+bm AN/MvaBJ3w9uqp6InV0vQvlTK07H8kVCRY/Otu3AjqDUwS1y9KkkflJ0nScMqWMIttEY zLA4YPYMTUl7lzw1OfomeENvr2ClBvCjhuPlSSbS5OuUHb5zzvNk3B+xFttee3qRlOck cmD0KSSFHhSolg0cFZ53zwMmeXUtpzDyaMZOUOsbP6pOugBrhr+vvEKsaZzRuT+sDAgy f3hPtHM079CVuulKZWD9GhgcS6mvjtMrfAgXu6JjzcT7VMh969MptNpKVN8vEam2Gyz8 Xn1w== X-Forwarded-Encrypted: i=1; AJvYcCX9W+KCsOW5r/Ypo2PF4c1ujNFhntO97hB75BLENwe64HtRPYfyfsxwRpCY+yZ2lonWZcSD9UFYyANkaMw=@vger.kernel.org X-Gm-Message-State: AOJu0YyK1T9VeZk9qXqGF9gNXUggbz6Sjpp7mcyvLceRhGIiLKgeinDI 527+yZRtmwMJY4b4QBeHIjuHonbu1RjL2mcviof9bwZByMemV93ZTQnUiDcwtMPxsH4= X-Gm-Gg: ASbGncvBD9thV9uSMUV472MYkQ2wZ2bmk7Mg+eNuFRjG0lxu1b+jZTrr0nZSHD3wrrW bVYgpocaBIZKD/RtK7Y3zkNLSiq8F02FFpMpgKqAaxf4a+2xkqCOwaO3hJofC1CymYSzAHXMVbL eUGG2zk/Zb7VjFvEXA7BN0e1bbGSmHLlaxD2YsYIL+TbsWxd9T9okPh7zSj+nEnAAU4yaGN+qvg 0jWq/xyO/c9C1xG4pXQ88LNKufprBoW9KW6S/rC0HaW09eHC7IfY6MNqquE5ymhydhmJMnOUBCl sN7YipXko23XITAwCBiTvVYckbHtx49KoF5zBA/p3dMN510a4XXXtV6Lq/14E3JVktDebzU26Sf nyIlzQ2Bw3+ENTDrsbbbgyUGuI6r44rbtdR5+dOLEMGLt6gMpWUh0kaue7oZSIutSNVyycM0sbk VbExIfnKdIw6rXpt/gpyX49CXfP6j8GLcw X-Google-Smtp-Source: AGHT+IFaQVLopBnCCBBDM0Romedws7uBJkIEz8t6oa7iUZXqU9TSme0dCXrhxot8zn/IF0CKbdciOQ== X-Received: by 2002:a17:907:7eaa:b0:afe:c795:9ad5 with SMTP id a640c23a62f3a-afec795cea3mr1008772366b.2.1756492328561; Fri, 29 Aug 2025 11:32:08 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:08 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 02/12] include/pagemap.h: add `const` to lots of pointer parameters Date: Fri, 29 Aug 2025 20:31:49 +0200 Message-ID: <20250829183159.2223948-3-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann Reviewed-by: Vishal Moola (Oracle) --- include/linux/pagemap.h | 52 ++++++++++++++++++++--------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h index c9ba69e02e3e..87411e7f2dba 100644 --- a/include/linux/pagemap.h +++ b/include/linux/pagemap.h @@ -140,7 +140,7 @@ static inline int inode_drain_writes(struct inode *inod= e) return filemap_write_and_wait(inode->i_mapping); } =20 -static inline bool mapping_empty(struct address_space *mapping) +static inline bool mapping_empty(const struct address_space *mapping) { return xa_empty(&mapping->i_pages); } @@ -166,7 +166,7 @@ static inline bool mapping_empty(struct address_space *= mapping) * refcount and the referenced bit, which will be elevated or set in * the process of adding new cache pages to an inode. */ -static inline bool mapping_shrinkable(struct address_space *mapping) +static inline bool mapping_shrinkable(const struct address_space *mapping) { void *head; =20 @@ -265,7 +265,7 @@ static inline void mapping_clear_unevictable(struct add= ress_space *mapping) clear_bit(AS_UNEVICTABLE, &mapping->flags); } =20 -static inline bool mapping_unevictable(struct address_space *mapping) +static inline bool mapping_unevictable(const struct address_space *mapping) { return mapping && test_bit(AS_UNEVICTABLE, &mapping->flags); } @@ -275,7 +275,7 @@ static inline void mapping_set_exiting(struct address_s= pace *mapping) set_bit(AS_EXITING, &mapping->flags); } =20 -static inline int mapping_exiting(struct address_space *mapping) +static inline int mapping_exiting(const struct address_space *mapping) { return test_bit(AS_EXITING, &mapping->flags); } @@ -285,7 +285,7 @@ static inline void mapping_set_no_writeback_tags(struct= address_space *mapping) set_bit(AS_NO_WRITEBACK_TAGS, &mapping->flags); } =20 -static inline int mapping_use_writeback_tags(struct address_space *mapping) +static inline int mapping_use_writeback_tags(const struct address_space *m= apping) { return !test_bit(AS_NO_WRITEBACK_TAGS, &mapping->flags); } @@ -331,7 +331,7 @@ static inline void mapping_set_inaccessible(struct addr= ess_space *mapping) set_bit(AS_INACCESSIBLE, &mapping->flags); } =20 -static inline bool mapping_inaccessible(struct address_space *mapping) +static inline bool mapping_inaccessible(const struct address_space *mappin= g) { return test_bit(AS_INACCESSIBLE, &mapping->flags); } @@ -341,18 +341,18 @@ static inline void mapping_set_writeback_may_deadlock= _on_reclaim(struct address_ set_bit(AS_WRITEBACK_MAY_DEADLOCK_ON_RECLAIM, &mapping->flags); } =20 -static inline bool mapping_writeback_may_deadlock_on_reclaim(struct addres= s_space *mapping) +static inline bool mapping_writeback_may_deadlock_on_reclaim(const struct = address_space *mapping) { return test_bit(AS_WRITEBACK_MAY_DEADLOCK_ON_RECLAIM, &mapping->flags); } =20 -static inline gfp_t mapping_gfp_mask(struct address_space * mapping) +static inline gfp_t mapping_gfp_mask(const struct address_space *mapping) { return mapping->gfp_mask; } =20 /* Restricts the given gfp_mask to what the mapping allows. */ -static inline gfp_t mapping_gfp_constraint(struct address_space *mapping, +static inline gfp_t mapping_gfp_constraint(const struct address_space *map= ping, gfp_t gfp_mask) { return mapping_gfp_mask(mapping) & gfp_mask; @@ -475,7 +475,7 @@ mapping_min_folio_order(const struct address_space *map= ping) } =20 static inline unsigned long -mapping_min_folio_nrpages(struct address_space *mapping) +mapping_min_folio_nrpages(const struct address_space *mapping) { return 1UL << mapping_min_folio_order(mapping); } @@ -495,7 +495,7 @@ mapping_min_folio_nrbytes(struct address_space *mapping) * new folio to the page cache and need to know what index to give it, * call this function. */ -static inline pgoff_t mapping_align_index(struct address_space *mapping, +static inline pgoff_t mapping_align_index(const struct address_space *mapp= ing, pgoff_t index) { return round_down(index, mapping_min_folio_nrpages(mapping)); @@ -505,7 +505,7 @@ static inline pgoff_t mapping_align_index(struct addres= s_space *mapping, * Large folio support currently depends on THP. These dependencies are * being worked on but are not yet fixed. */ -static inline bool mapping_large_folio_support(struct address_space *mappi= ng) +static inline bool mapping_large_folio_support(const struct address_space = *mapping) { /* AS_FOLIO_ORDER is only reasonable for pagecache folios */ VM_WARN_ONCE((unsigned long)mapping & FOLIO_MAPPING_ANON, @@ -520,7 +520,7 @@ static inline size_t mapping_max_folio_size(const struc= t address_space *mapping) return PAGE_SIZE << mapping_max_folio_order(mapping); } =20 -static inline int filemap_nr_thps(struct address_space *mapping) +static inline int filemap_nr_thps(const struct address_space *mapping) { #ifdef CONFIG_READ_ONLY_THP_FOR_FS return atomic_read(&mapping->nr_thps); @@ -934,7 +934,7 @@ static inline struct page *grab_cache_page_nowait(struc= t address_space *mapping, * * Return: The index of the folio which follows this folio in the file. */ -static inline pgoff_t folio_next_index(struct folio *folio) +static inline pgoff_t folio_next_index(const struct folio *folio) { return folio->index + folio_nr_pages(folio); } @@ -963,7 +963,7 @@ static inline struct page *folio_file_page(struct folio= *folio, pgoff_t index) * e.g., shmem did not move this folio to the swap cache. * Return: true or false. */ -static inline bool folio_contains(struct folio *folio, pgoff_t index) +static inline bool folio_contains(const struct folio *folio, pgoff_t index) { VM_WARN_ON_ONCE_FOLIO(folio_test_swapcache(folio), folio); return index - folio->index < folio_nr_pages(folio); @@ -1040,12 +1040,12 @@ static inline loff_t page_offset(struct page *page) /* * Get the offset in PAGE_SIZE (even for hugetlb folios). */ -static inline pgoff_t folio_pgoff(struct folio *folio) +static inline pgoff_t folio_pgoff(const struct folio *folio) { return folio->index; } =20 -static inline pgoff_t linear_page_index(struct vm_area_struct *vma, +static inline pgoff_t linear_page_index(const struct vm_area_struct *vma, unsigned long address) { pgoff_t pgoff; @@ -1466,7 +1466,7 @@ static inline unsigned int __readahead_batch(struct r= eadahead_control *rac, * readahead_pos - The byte offset into the file of this readahead request. * @rac: The readahead request. */ -static inline loff_t readahead_pos(struct readahead_control *rac) +static inline loff_t readahead_pos(const struct readahead_control *rac) { return (loff_t)rac->_index * PAGE_SIZE; } @@ -1475,7 +1475,7 @@ static inline loff_t readahead_pos(struct readahead_c= ontrol *rac) * readahead_length - The number of bytes in this readahead request. * @rac: The readahead request. */ -static inline size_t readahead_length(struct readahead_control *rac) +static inline size_t readahead_length(const struct readahead_control *rac) { return rac->_nr_pages * PAGE_SIZE; } @@ -1484,7 +1484,7 @@ static inline size_t readahead_length(struct readahea= d_control *rac) * readahead_index - The index of the first page in this readahead request. * @rac: The readahead request. */ -static inline pgoff_t readahead_index(struct readahead_control *rac) +static inline pgoff_t readahead_index(const struct readahead_control *rac) { return rac->_index; } @@ -1493,7 +1493,7 @@ static inline pgoff_t readahead_index(struct readahea= d_control *rac) * readahead_count - The number of pages in this readahead request. * @rac: The readahead request. */ -static inline unsigned int readahead_count(struct readahead_control *rac) +static inline unsigned int readahead_count(const struct readahead_control = *rac) { return rac->_nr_pages; } @@ -1502,12 +1502,12 @@ static inline unsigned int readahead_count(struct r= eadahead_control *rac) * readahead_batch_length - The number of bytes in the current batch. * @rac: The readahead request. */ -static inline size_t readahead_batch_length(struct readahead_control *rac) +static inline size_t readahead_batch_length(const struct readahead_control= *rac) { return rac->_batch_count * PAGE_SIZE; } =20 -static inline unsigned long dir_pages(struct inode *inode) +static inline unsigned long dir_pages(const struct inode *inode) { return (unsigned long)(inode->i_size + PAGE_SIZE - 1) >> PAGE_SHIFT; @@ -1521,8 +1521,8 @@ static inline unsigned long dir_pages(struct inode *i= node) * Return: the number of bytes in the folio up to EOF, * or -EFAULT if the folio was truncated. */ -static inline ssize_t folio_mkwrite_check_truncate(struct folio *folio, - struct inode *inode) +static inline ssize_t folio_mkwrite_check_truncate(const struct folio *fol= io, + const struct inode *inode) { loff_t size =3D i_size_read(inode); pgoff_t index =3D size >> PAGE_SHIFT; @@ -1553,7 +1553,7 @@ static inline ssize_t folio_mkwrite_check_truncate(st= ruct folio *folio, * Return: The number of filesystem blocks covered by this folio. */ static inline -unsigned int i_blocks_per_folio(struct inode *inode, struct folio *folio) +unsigned int i_blocks_per_folio(const struct inode *inode, const struct fo= lio *folio) { return folio_size(folio) >> inode->i_blkbits; } --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f42.google.com (mail-ej1-f42.google.com [209.85.218.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 60072342CA7 for ; Fri, 29 Aug 2025 18:32:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492333; cv=none; b=QdmUA4lnE4cumfQTnwZaUrdZ2q80HPpytFkfjwRxOuwADt0BKGsABHrZ3tQPRstcliEd5hi2LMcK42DLp650vujtCxn/5sAGU5zvLqkZ36jv8r/K4Wney03eIiX8PvEDQRztEDj85SD3JiN6wFK493W/q0116Jq1WRZzswluewU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492333; c=relaxed/simple; bh=aXwi7Ga+vY1+/XPJOpk+/THT/DrRsDPnsU7q5jxV2hk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=iRYeboATU3qLPmYtF02HgjOPnjOpyQIAqCGw/1/cdjtku10OdWlgJ3j+C6Z60YF2OipcU4hr0VlSB1/CeYEiDBAZINv0APiVPNnYLqaObKIBFIT5zAAFcNLhRELv0egcf4MJvLkRAHKq6FDrP2QYnxGrNf1RdRLFyS8ztSY6nfg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=XeMb6rzl; arc=none smtp.client-ip=209.85.218.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="XeMb6rzl" Received: by mail-ej1-f42.google.com with SMTP id a640c23a62f3a-afcb7ae31caso453203866b.3 for ; Fri, 29 Aug 2025 11:32:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492330; x=1757097130; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=oibqmI8v+HWCWZ9ViDRReAYoAk04POfRsF79xWQhEJY=; b=XeMb6rzlkRk+6lqykoG2kqkMubLoB3X+9A9mlDDvWv6qZ4fKsN4JtQ4Us9J7A1hl9d 5mw0947sZ0ZX1CZTPq1xLottFCtcYKxH8xobEShRlf066XnAQtZTv5eRb45Hl9zH8dzt cNPX3dKELeBURHRB6UXxv85TWu53JiwOB+vmUXaKLR6/nGPnssxbGnsS7piHd2pVlGq+ MewtVyCpeZc2PPREBghEf3igBxJlGjSJK/G3vbKnLvjf9GTc0ZLUnNVeIprlfe/MKcGm iu7yRZVNAy5e2wUl18yR41LBb682L06gHIRSagCmJ9qq616EwaA+bs3ESdRCNDLCWrr+ e6Nw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492330; x=1757097130; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=oibqmI8v+HWCWZ9ViDRReAYoAk04POfRsF79xWQhEJY=; b=Ola5Ukfk9/+SyVLf4TNU55+230q+oR4XIs19xDRRN6Jnvhe72bqEoyP8P1gOx+8nPO 0UKuHqRFELp4bczEzcuDcA1eblfqQIoUKahL42RE1/J3urBoUpXaAuvtPF+HXqVSdzUs KVow34n9wxprXCOGupyW+hRsRnTAjSc5OhhVxTT4GcNe86nXS1gH1xUenFyYpQu7B016 VnCCC7V/+p4gWksJkQStwStMN+oA4FBVzhzEDOgBYR0zrnCicyu3Nul1P/3hmpyzmHim XRn9BPEV2ADZWFvzezZQmLt8aT/tI0B5w7O2H/aLTF0WeHnGM6QzHgXA8bwd81eue8mZ 9haw== X-Forwarded-Encrypted: i=1; AJvYcCWIuIHAstCoVpw9raF7+1qixpW+V1YRKfx0V7kIRiQFkrRq68b498M361o9Lo+4MkcRa2BMTgYciD4hMkI=@vger.kernel.org X-Gm-Message-State: AOJu0YwEN/N6MtCYQC7IUu4F7URxdzjOxx79MVyEK2xCPQF08GkE3cOf RA6tgH/0rqJDQHHN5EH09FrAhItVC5f6KZ6TTUFCpmVB7agw356/Ar/8v5Y0wK0RhnM= X-Gm-Gg: ASbGncsjcFe19DEZz50yYV0i8GyVeaegF9KJQeAgBlK7bYPpyDyVYlghzrul3rB5K8w P48F82R/hdXi47xr1gethu53hAWDqJnp0GWQm/Ifg5AIkkWZ+xZlnPhgWsFCp2EU+zyLj/xGsrQ LZik2vJsV+Eop3HFXGSEbhmcKFHqERA7EK1wNhZHda+0UCyZbGT6Rg+TGpK2rACvb64njNSf5Ny l8zEES/awo+OItslA2nyFY/Ou7ezV9xmdHLfWySRYjoOHxOAiyOBy6S5fYwal0DOIj4gz6dkxR+ Ar8EYLEHIdIYZkwSQzxAkrokRo0RzKco5K1QrT0NOA1UU4apdApZ0i37C/TQCN4rC2o919tqRQG FURvDY7/tR969TC16fNi5w02s4CLoggX/CRyv1JEbfF06RET+DBiiyorj8WQF4ihti/wt/Bh3Cc OK5Cxo2FAnC6yN9KsFEvu7S/5gdued8i3v X-Google-Smtp-Source: AGHT+IGUw1aZ9x71ac6zJGO7aTmEWDSQk81WmXJEAyxTzFCvKu5HR8+0UP39oGUMJnx4qlOTNYHCGg== X-Received: by 2002:a17:907:3f12:b0:afe:c564:32e5 with SMTP id a640c23a62f3a-afec56519d3mr1113660366b.15.1756492329546; Fri, 29 Aug 2025 11:32:09 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:09 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 03/12] include/mmzone.h: add `const` to lots of pointer parameters Date: Fri, 29 Aug 2025 20:31:50 +0200 Message-ID: <20250829183159.2223948-4-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann Reviewed-by: Vishal Moola (Oracle) --- include/linux/mmzone.h | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index fe13ad175fed..3e16578767b0 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h @@ -1103,7 +1103,7 @@ static inline unsigned long promo_wmark_pages(const s= truct zone *z) return wmark_pages(z, WMARK_PROMO); } =20 -static inline unsigned long zone_managed_pages(struct zone *zone) +static inline unsigned long zone_managed_pages(const struct zone *zone) { return (unsigned long)atomic_long_read(&zone->managed_pages); } @@ -1127,12 +1127,12 @@ static inline bool zone_spans_pfn(const struct zone= *zone, unsigned long pfn) return zone->zone_start_pfn <=3D pfn && pfn < zone_end_pfn(zone); } =20 -static inline bool zone_is_initialized(struct zone *zone) +static inline bool zone_is_initialized(const struct zone *zone) { return zone->initialized; } =20 -static inline bool zone_is_empty(struct zone *zone) +static inline bool zone_is_empty(const struct zone *zone) { return zone->spanned_pages =3D=3D 0; } @@ -1272,7 +1272,7 @@ static inline bool folio_is_zone_movable(const struct= folio *folio) * Return true if [start_pfn, start_pfn + nr_pages) range has a non-empty * intersection with the given zone */ -static inline bool zone_intersects(struct zone *zone, +static inline bool zone_intersects(const struct zone *zone, unsigned long start_pfn, unsigned long nr_pages) { if (zone_is_empty(zone)) @@ -1580,12 +1580,12 @@ static inline int local_memory_node(int node_id) { = return node_id; }; #define zone_idx(zone) ((zone) - (zone)->zone_pgdat->node_zones) =20 #ifdef CONFIG_ZONE_DEVICE -static inline bool zone_is_zone_device(struct zone *zone) +static inline bool zone_is_zone_device(const struct zone *zone) { return zone_idx(zone) =3D=3D ZONE_DEVICE; } #else -static inline bool zone_is_zone_device(struct zone *zone) +static inline bool zone_is_zone_device(const struct zone *zone) { return false; } @@ -1597,19 +1597,19 @@ static inline bool zone_is_zone_device(struct zone = *zone) * populated_zone(). If the whole zone is reserved then we can easily * end up with populated_zone() && !managed_zone(). */ -static inline bool managed_zone(struct zone *zone) +static inline bool managed_zone(const struct zone *zone) { return zone_managed_pages(zone); } =20 /* Returns true if a zone has memory */ -static inline bool populated_zone(struct zone *zone) +static inline bool populated_zone(const struct zone *zone) { return zone->present_pages; } =20 #ifdef CONFIG_NUMA -static inline int zone_to_nid(struct zone *zone) +static inline int zone_to_nid(const struct zone *zone) { return zone->node; } @@ -1619,7 +1619,7 @@ static inline void zone_set_nid(struct zone *zone, in= t nid) zone->node =3D nid; } #else -static inline int zone_to_nid(struct zone *zone) +static inline int zone_to_nid(const struct zone *zone) { return 0; } @@ -1646,7 +1646,7 @@ static inline int is_highmem_idx(enum zone_type idx) * @zone: pointer to struct zone variable * Return: 1 for a highmem zone, 0 otherwise */ -static inline int is_highmem(struct zone *zone) +static inline int is_highmem(const struct zone *zone) { return is_highmem_idx(zone_idx(zone)); } @@ -1712,12 +1712,12 @@ static inline struct zone *zonelist_zone(struct zon= eref *zoneref) return zoneref->zone; } =20 -static inline int zonelist_zone_idx(struct zoneref *zoneref) +static inline int zonelist_zone_idx(const struct zoneref *zoneref) { return zoneref->zone_idx; } =20 -static inline int zonelist_node_idx(struct zoneref *zoneref) +static inline int zonelist_node_idx(const struct zoneref *zoneref) { return zone_to_nid(zoneref->zone); } @@ -2020,7 +2020,7 @@ static inline struct page *__section_mem_map_addr(str= uct mem_section *section) return (struct page *)map; } =20 -static inline int present_section(struct mem_section *section) +static inline int present_section(const struct mem_section *section) { return (section && (section->section_mem_map & SECTION_MARKED_PRESENT)); } @@ -2030,12 +2030,12 @@ static inline int present_section_nr(unsigned long = nr) return present_section(__nr_to_section(nr)); } =20 -static inline int valid_section(struct mem_section *section) +static inline int valid_section(const struct mem_section *section) { return (section && (section->section_mem_map & SECTION_HAS_MEM_MAP)); } =20 -static inline int early_section(struct mem_section *section) +static inline int early_section(const struct mem_section *section) { return (section && (section->section_mem_map & SECTION_IS_EARLY)); } @@ -2045,27 +2045,27 @@ static inline int valid_section_nr(unsigned long nr) return valid_section(__nr_to_section(nr)); } =20 -static inline int online_section(struct mem_section *section) +static inline int online_section(const struct mem_section *section) { return (section && (section->section_mem_map & SECTION_IS_ONLINE)); } =20 #ifdef CONFIG_ZONE_DEVICE -static inline int online_device_section(struct mem_section *section) +static inline int online_device_section(const struct mem_section *section) { unsigned long flags =3D SECTION_IS_ONLINE | SECTION_TAINT_ZONE_DEVICE; =20 return section && ((section->section_mem_map & flags) =3D=3D flags); } #else -static inline int online_device_section(struct mem_section *section) +static inline int online_device_section(const struct mem_section *section) { return 0; } #endif =20 #ifdef CONFIG_SPARSEMEM_VMEMMAP_PREINIT -static inline int preinited_vmemmap_section(struct mem_section *section) +static inline int preinited_vmemmap_section(const struct mem_section *sect= ion) { return (section && (section->section_mem_map & SECTION_IS_VMEMMAP_PREINIT)); @@ -2075,7 +2075,7 @@ void sparse_vmemmap_init_nid_early(int nid); void sparse_vmemmap_init_nid_late(int nid); =20 #else -static inline int preinited_vmemmap_section(struct mem_section *section) +static inline int preinited_vmemmap_section(const struct mem_section *sect= ion) { return 0; } --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 28EDD3451AF for ; Fri, 29 Aug 2025 18:32:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492333; cv=none; b=mKpTsTLV7/jFFjh2qXB6JQUdUvdes4v5SDItsOClvX1aMB+HHwV9ef7bsCKA0TRA9Do1YEJtXOhm7GzTf+UgFgCHNavzmtnXJqZ3p1sOezsuYQbOiZ50M2liUTBPEHA/VLtjlzg1fEFWMN68ASFEodiArNcczUJpY46aJ0skzI4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492333; c=relaxed/simple; bh=Yi7/9pPs/4YJP5XWNEE72LJQyu4KdkFKRApZVl/+X30=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pUbfFKscyIlUHbwODzW4ExQBb4PxEhR/701YlFw8Suso43e9iI6AwW/p0O2+HGVkhEgAJmB3Xeaul1AP3IeWiTOA3XxS5rKOlrPBKD8DyL20Ni3XPWCWut+VRsmcT0KaSfD6RfiHxaofzPGWjjtdQffOOVuXVUFPTF1K8Z6dq2Y= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=IVx2ExPh; arc=none smtp.client-ip=209.85.218.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="IVx2ExPh" Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-afec56519c4so318444266b.0 for ; Fri, 29 Aug 2025 11:32:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492330; x=1757097130; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=6ee45j59z6EpVLajLN9KzFmkYRTRnW8AGAmUZ4eXAOA=; b=IVx2ExPhYzd5zA9ay3Ing9cvSnG2rHvKjvAck7uEaIBcqvfUzG9kFV+eE1rg8URRen cfIjuuW8zZl2pWSdwcvtP0svt5FPLAZS9LLfl5Ti5dWVteo2RXIuzP5r+MRlwfMbErqZ m74JGqZTxHbTWX5QGMqJAuFuGNq54uZRuBqa0B8X1L7ySIhVKfq5rzcXDaeQaxensbmR Ll266V8uCWMO5N6SSawKsqwT0HeZZNgV/2hIEGNGFtZxQggc9Strf4vf7+ffbLhp0+kt K18x8IDnaEWmX4zTM1NsNhdw8NUJtvSMv+Oj1N6xTrolzskBjHPFjGzli19+3P25esaU /S0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492330; x=1757097130; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6ee45j59z6EpVLajLN9KzFmkYRTRnW8AGAmUZ4eXAOA=; b=VrV3bLLK/+UIsSYuxH21JBaejWPHyhH5evdvWea7lUMXLOsjA1sHUsRizNwGBH+gpp VZfiKgSg5D9E5sBsjGWjRD6l1C2yUfcWCML/ANZ85xnIPrX+9GhKby3NtHss3JP9YbRi 6VsnVmyxR4aTmx/TP26Ub7oj2XCgZetixDSJN0vp3XAM0lW9r155AhHKc6jGtjTPXz5I LQdzy6eVPY0Ecee/J5e0CLbLtKY2IlI5psOJM+r7s4hdBeMjam7IoJeUcW1giJaLAe/8 SfpQf4rkE9EESwNhbQbZXmuX87R9g/gfbJn321gr01J0RCoXfP2ShnngnR/wb9ZPYK/I Z0AQ== X-Forwarded-Encrypted: i=1; AJvYcCUVZ8hM8jCwlfu1aLfnedAOD9c0DA2ssYf/5lHMX0PC5zXpyueKcVE6lUWNOZD1KsRUxRr1oFcCMyoJQy0=@vger.kernel.org X-Gm-Message-State: AOJu0YyGX1Y5iaAEVjLEE7yQBewsYEe7d0fWGJydyOdoa4NBNEwglaD+ jX4wWRidMaQBo95Zgb4j2PBaoMggVceDK305kmkG/0+O1uhaC7VpllaLmEVUvW+GX2U= X-Gm-Gg: ASbGncsDnIJsYBdzWCTqD4Twowlt1YTvgoHXmVX3zbTW/5pUGh20ctL7zpmH9rQRqBX 5mBeTgl0ploK5ybDc94iV47sYJRjG/Qb8jhQXo42eahApNO5wrHWGDlR0TC5KG00djvvoXB5qwD aUwY0T5ZmNcnMaVZIOgLHUl3QPGK+VBHrxr4pnepxS2AhDB98PT8zECIYBNOM05YNQ4vx/YMSow 5yPFvHf2R9OciNo12oac0aqZ38Ff4qEwqzEfsCNkIHO44d5Y06hTUQOxzIv5pcM2+HTk9y3+KkH UuVtS3dF54Au9qIGU2miBRRNShuoAnm1it+v9PJzxn3/0+iBieKa4QZKkX0yXDvXcE5834a+VPj 6eNQoNGE/Bnubc0GRpKUDE/32gf8zDOuqjDEN9ycuXWvPV0SonUmM8MJqr3Dcp/OvDY42QDNOnz I+juVcYO5Iud27ULUln6HOdA== X-Google-Smtp-Source: AGHT+IGJSceHz2hcoyT5ehNIpZ1bJmh2WPC6/xWH9n3KGDraWBfmd4TrD/HA/jbZUtAL0eU1mP3doA== X-Received: by 2002:a17:907:608b:b0:afe:d5bb:f433 with SMTP id a640c23a62f3a-afed5bc15edmr780600666b.25.1756492330481; Fri, 29 Aug 2025 11:32:10 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:10 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 04/12] include/fs.h: add `const` to several pointer parameters Date: Fri, 29 Aug 2025 20:31:51 +0200 Message-ID: <20250829183159.2223948-5-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann Reviewed-by: Vishal Moola (Oracle) --- include/linux/fs.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/linux/fs.h b/include/linux/fs.h index 3b9f54446db0..0b43edb33be2 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -537,7 +537,7 @@ struct address_space { /* * Returns true if any of the pages in the mapping are marked with the tag. */ -static inline bool mapping_tagged(struct address_space *mapping, xa_mark_t= tag) +static inline bool mapping_tagged(const struct address_space *mapping, xa_= mark_t tag) { return xa_marked(&mapping->i_pages, tag); } @@ -585,7 +585,7 @@ static inline void i_mmap_assert_write_locked(struct ad= dress_space *mapping) /* * Might pages of this file be mapped into userspace? */ -static inline int mapping_mapped(struct address_space *mapping) +static inline int mapping_mapped(const struct address_space *mapping) { return !RB_EMPTY_ROOT(&mapping->i_mmap.rb_root); } @@ -599,7 +599,7 @@ static inline int mapping_mapped(struct address_space *= mapping) * If i_mmap_writable is negative, no new writable mappings are allowed. Y= ou * can only deny writable mappings, if none exists right now. */ -static inline int mapping_writably_mapped(struct address_space *mapping) +static inline int mapping_writably_mapped(const struct address_space *mapp= ing) { return atomic_read(&mapping->i_mmap_writable) > 0; } --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f48.google.com (mail-ej1-f48.google.com [209.85.218.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0A4F23451DA for ; Fri, 29 Aug 2025 18:32:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492334; cv=none; b=N14U4+SWp9bqTU+SnHusIapnnXwH7nCc+IlQLK9qUehUImqdki52Vg+4bvCv0jG4fTitg9AvfBUZ9DEpPe+TmZEsKNMa6B7G6tLv4esmd4iN/gC+CU9cBCmTGz1W3LDuI5G4cRMzxCM/e9vkKUbTz4LLdGwS7gUTPcyXOFlHaXg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492334; c=relaxed/simple; bh=636LqQUuPfJPXn7kEnF94VjwKJfaKyx3OD1eA0voqXQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=uyOPXcegTisurwGFdZQBF44z+FJJsS5VjRqW/SNzPcRozzsBLpmPcSXc2ediyqNsjlKqM2XmTztsh/h2ssLiayvB1bJpxIPnmCbEKMXIWuDyF5As3RnDe7FL4TiCXNbVpt+dlEd4dw5E9Czou2tD2qcFo6akFtyLmJQtguUMQM0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=aanOCqFq; arc=none smtp.client-ip=209.85.218.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="aanOCqFq" Received: by mail-ej1-f48.google.com with SMTP id a640c23a62f3a-afedbb49c26so374450766b.2 for ; Fri, 29 Aug 2025 11:32:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492331; x=1757097131; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=VpTsIMZMAvGu+0Cv94tirrHwkbCcjUoCoe0E1cezNnQ=; b=aanOCqFqH+ivDktM7HuN09ni7g9cWU7BDGd4jyQGCMzGCVJRuk+uoHJiu2GX0WTLK+ Hc8YrSrfUQK4rX5FehNPkMAJo1LPQlSHv/yTAqXUZ9mW1IOMshwkizirI1R/T27E9Jz8 Nzj16y9QzWySRxddUroNjQf2UyNaRXoqSs3t7o9WR6VnGrojeHm3vC7xxdRGF6NKytBX rDKIHitk2e4p3HeV24LPvGO7COOYQVW0vhzLbo3tqh0+O9lXCPJh3uDBoi2e/X7ynOzO 1kCqrhLpDwrSnvEkNBn+/O0IouzaUuyifGfoxjKChYGcFdQeqOtqhdHZve24ACRxFx5V C0NQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492331; x=1757097131; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VpTsIMZMAvGu+0Cv94tirrHwkbCcjUoCoe0E1cezNnQ=; b=ezrb25SdwNgscGHJCY8W8uNT1H24PWOx0TbCk72u14iu+Vw/frgE5kwfDxEYQysD0q aPfrkfcLYNZqvZr0dSdGzDnTxBav044W3B58bGjTzYqj6510DDA0AEDMqqLQ7bj7TCnH MPWFAsFpta/C97jCNOvHwUpnUYu3srhMLQHZui3yi/jRD1TeAcPwiiJvzJZhrr6tkk4U /XXNErIbnJvrKxO8dAs+SES/C4/cBKmxNlsE11Ck1PDn04LDfFPBujQXZn0m9SI8UDZX z2d/1fliRKiJAqXAfe4B7IgBl1NbQR0VokFwSIBBW7GVvKo6YtIAVZHVlaw9ozJQGmgU UhtQ== X-Forwarded-Encrypted: i=1; AJvYcCVsn+E9mInG1eXRGfXp9BvTYpNoIO9OlE/CwG6bBfgIn6CcZS08d2aU0BNBLA0llmYL1Mcktrsk4SI5C48=@vger.kernel.org X-Gm-Message-State: AOJu0YzQ4DhvsQlFjO2ODL12x0Ipu2jt9Yz+m7eF2s7S4znLpGFNkoly C0K9JrY46DDASUNAlwXI4SDCqSbyRewS+bcfQunjtEZ0ihQPvUT5SJE6Yj2on2Wh2Pw= X-Gm-Gg: ASbGncs8G1y+8rXNk8I4AOSLCGJREXLRscVwsspxVIpaK+HWjHgz0GZ3eEHY7TCOjWn KMInRPfpTv/fadkAsnjQiDfh0L47aOpWv5q9pfpjJgyhV7QyPSgvKwblCSnqi9SHx0leoiDmKsp B6qBzLDNMkgSNBDuKHpNwRY0RqRF1WSUKhb1Ed2Hl/o3E2bSPRp+4FQrsSlfyPgXxE6rgDWlxNL WlvAlrsERFh9nrEBNkk2qcsKqlJ7Zyo6neCXrMOubpQ/l57gd10U5P6qr012jmrAIiSTPyVJerQ YsgBUI9CXeCPkTE8HXdQnr4HoTui6V+A/x0juMfmWuV9a70mdjdC+3E787i7IOnn+79P5xcDE89 876W1K/z35qtWhhfNaR8J1eYsfbJE2BeQBjOHxTWcXW+FLAwgiRZ9QgSsCT1h9rZf5rLwiK5rRf 1mkOhLoUmQn+PNPkbCld7K/gVSGOuoKCNA X-Google-Smtp-Source: AGHT+IGY8RZG7UM9cRbB/qMS7odXqSdwqfd3yzWdCRIEIpzTBfe1cib0eGa/n8oqQzAkKhR9Vr5KxA== X-Received: by 2002:a17:907:78d:b0:adb:428f:f748 with SMTP id a640c23a62f3a-afe294b483emr2613549166b.21.1756492331404; Fri, 29 Aug 2025 11:32:11 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:11 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 05/12] mm/oom_kill: add `const` to pointer parameter Date: Fri, 29 Aug 2025 20:31:52 +0200 Message-ID: <20250829183159.2223948-6-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann --- include/linux/mm.h | 2 +- mm/oom_kill.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index a40a3c42c904..a795deef93eb 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -3840,7 +3840,7 @@ static inline int in_gate_area(struct mm_struct *mm, = unsigned long addr) } #endif /* __HAVE_ARCH_GATE_AREA */ =20 -extern bool process_shares_mm(struct task_struct *p, struct mm_struct *mm); +extern bool process_shares_mm(struct task_struct *p, const struct mm_struc= t *mm); =20 void drop_slab(void); =20 diff --git a/mm/oom_kill.c b/mm/oom_kill.c index 17650f0b516e..69c4fc9d90e6 100644 --- a/mm/oom_kill.c +++ b/mm/oom_kill.c @@ -490,7 +490,7 @@ static bool oom_killer_disabled __read_mostly; * task's threads: if one of those is using this mm then this task was also * using it. */ -bool process_shares_mm(struct task_struct *p, struct mm_struct *mm) +bool process_shares_mm(struct task_struct *p, const struct mm_struct *mm) { struct task_struct *t; =20 --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0B54C345747 for ; Fri, 29 Aug 2025 18:32:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492335; cv=none; b=OR0tX0SsiBBGybu1JeMQbciGVUwFPBPSActxsp2b1qGdL86binxMKI0VIRtAOVkKsS28ymbRdvsVNWmigHEL2+fk+TQefPYxBYbSrBgJrwwfpAkhnhM3VxpCQzBRRmaB0Mlu1N2kdrWyBg+nobQBqrz6cEyXDBVJFO+00pQNrJI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492335; c=relaxed/simple; bh=9avM9vCZBlHo6PrhD774Cxf55N0+lUeCJqpyJgi8Qis=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NbLao0Wmfe7txtmCKQ1Mh/chgCwxKzA+OZnjde2zUG5b5sTfwdeISvSOy7quwyNh1P1l5Q/pvvhEHYzzMLdCTQqTxR8OycmF1jNdpg1IcuMrzF11BhTZ9lDCaTRyezha+cV3ndLRSgWBQuxCpBw4P3x4ojgNStCK8T41Syvrghk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=NGwmFAsg; arc=none smtp.client-ip=209.85.218.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="NGwmFAsg" Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-afcb7ace3baso412779166b.3 for ; Fri, 29 Aug 2025 11:32:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492332; x=1757097132; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8c+9yPhPtAEVLLT7PJHB5roc/KfxfndfYXWIZFh5s4U=; b=NGwmFAsglB3eWJ4kqK7zUyHfC6kcqv0fs4irBswbjZsl+a19uckRiaKT3Vr5QIdQir p5h9rv+ftDPBUV1rX+LqXKDB0CBDVJWsDKzKIiQsJ17bSxSfWgtH1J2P88iUL2KL/FjG /9RAOTWMxYL0r8iQe+9tobrr8/tjeFJQiKh7zg6uLQgnPY/LJsjDzQSwm+EUJNZaCF9S mjMPHISFCY9W4sHJ0qZMxNKK/KGdWgrhnAZzRD0j5S56e4wsT4rDQhwU/O4PWRkVc0i7 rgMVQZFYXoQA7bOqxXLtZMpzXWy8npWdiRq24yAkOTyf3jZ8eUATOPQ+cQrhh0gk6bFo I2LQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492332; x=1757097132; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8c+9yPhPtAEVLLT7PJHB5roc/KfxfndfYXWIZFh5s4U=; b=YYMNb09C1mog3ulW+P2uBVuVFBr/KDIUmW11XS0+md7kNUr9N0FPUx9wKcbh4CP1fh jdwiW+0IovBkpMIHGf0DMvsFiu13pTbD79EHsAww20GVZjk51wZvlw1Cm8exCk0JxDH/ 95qW7OglLwHC4GPzJUG2RgS1WhPyu0snfGmIZ+XCjz4QTuXpiwrOkd6ZhHQN9BsJcoIv vr3ew6M8YrHQTxljeF9m/zfsHlo69chPh30mN6du70sXgVhP3oWGri6W2TPvlCRdacBd TX/1TMip1ijtEkZXknCUPRFV1h/es73I3Edhll2Ov+Yo+EepNV5rd+uFeYv+8FC7wtde bFdw== X-Forwarded-Encrypted: i=1; AJvYcCW7t+BEGTqZMm7Koc2ZAE+D9j69frrNSxG/+rUmp2tHi1fXMyIelL2qsEaU6MUC0O6zaFgy4+IdA2Ov/9k=@vger.kernel.org X-Gm-Message-State: AOJu0Yw+g4uuSbkDaEC3S/A48L2ayp6sVNrs40JuTRK+0QCphEKDZWjM PK7uZz1OjZIzu/dRwbaS4ENyiOTbObZlZt9+6p2SwrmLJ9/GDbrFDuVCna/eXx7QBAI= X-Gm-Gg: ASbGncufv5STtouU/YA8c0cvkipYy99PGHEMrWZjedKk2Tw+2TroMCJR58M0NCm/EPF LN1JNiyY7URJA9cEaBPqPYt/5gSb9uw7bRgx76TFzpagEo/n07rZMaxH9hMFYjmXUhnOhUVtp4P 9k/tIZUSUnuoKzPGHAgu5YI4f6MWoog6w9Q+b8CQuvWBr3NrjSiD+9j/j6g/OoXuZb/2sIYXsGH QAGpxdC4RRO2ctLPwB/t/gABp3VuFtl4cvQQhNoCTZfy8YFOh2u36F/AX44RYbeuKxvl63JZeBG OLjFX9IV4MfLVrtEsnv+95YskdmuIdxtzythHvDNttCJQeRCu2aAssq+3lMzcWOARSDZ8CJuGBS 0APle4YIaIUahiZ8qAcznEl6kr58ZZCFyPYXbE/ecW5R6XNm+PhiyUHIiaDXi2YvrpNtVdyGF+3 8ZgvsEcZ13GBrhyDsTj8ONTdZqf/fYE2kgevc0tCTJQGo= X-Google-Smtp-Source: AGHT+IETmvvQODdVSBHmZD0kjNnIecq6FKhW+BEE2rV4GPi6FJ1MCBfKCh+rA9cR4mQklNhUdrS8iA== X-Received: by 2002:a17:907:3f9a:b0:afe:d21f:7af0 with SMTP id a640c23a62f3a-afed21f7e3cmr865901466b.14.1756492332358; Fri, 29 Aug 2025 11:32:12 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:11 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 06/12] mm/util: add `const` to several pointer parameters Date: Fri, 29 Aug 2025 20:31:53 +0200 Message-ID: <20250829183159.2223948-7-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann Reviewed-by: Vishal Moola (Oracle) --- include/linux/mm.h | 6 +++--- include/linux/pagemap.h | 2 +- mm/util.c | 10 +++++----- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index a795deef93eb..48fe838723ed 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -986,7 +986,7 @@ static inline bool vma_is_shmem(const struct vm_area_st= ruct *vma) { return false static inline bool vma_is_anon_shmem(const struct vm_area_struct *vma) { r= eturn false; } #endif =20 -int vma_is_stack_for_current(struct vm_area_struct *vma); +int vma_is_stack_for_current(const struct vm_area_struct *vma); =20 /* flush_tlb_range() takes a vma, not a mm, and can care about flags */ #define TLB_FLUSH_VMA(mm,flags) { .vm_mm =3D (mm), .vm_flags =3D (flags) } @@ -2585,7 +2585,7 @@ void folio_add_pin(struct folio *folio); =20 int account_locked_vm(struct mm_struct *mm, unsigned long pages, bool inc); int __account_locked_vm(struct mm_struct *mm, unsigned long pages, bool in= c, - struct task_struct *task, bool bypass_rlim); + const struct task_struct *task, bool bypass_rlim); =20 struct kvec; struct page *get_dump_page(unsigned long addr, int *locked); @@ -3348,7 +3348,7 @@ void anon_vma_interval_tree_verify(struct anon_vma_ch= ain *node); avc; avc =3D anon_vma_interval_tree_iter_next(avc, start, last)) =20 /* mmap.c */ -extern int __vm_enough_memory(struct mm_struct *mm, long pages, int cap_sy= s_admin); +extern int __vm_enough_memory(const struct mm_struct *mm, long pages, int = cap_sys_admin); extern int insert_vm_struct(struct mm_struct *, struct vm_area_struct *); extern void exit_mmap(struct mm_struct *); bool mmap_read_lock_maybe_expand(struct mm_struct *mm, struct vm_area_stru= ct *vma, diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h index 87411e7f2dba..eb50e0124cd0 100644 --- a/include/linux/pagemap.h +++ b/include/linux/pagemap.h @@ -549,7 +549,7 @@ static inline void filemap_nr_thps_dec(struct address_s= pace *mapping) #endif } =20 -struct address_space *folio_mapping(struct folio *); +struct address_space *folio_mapping(const struct folio *); =20 /** * folio_flush_mapping - Find the file mapping this folio belongs to. diff --git a/mm/util.c b/mm/util.c index d235b74f7aff..241d2eaf26ca 100644 --- a/mm/util.c +++ b/mm/util.c @@ -315,7 +315,7 @@ void *memdup_user_nul(const void __user *src, size_t le= n) EXPORT_SYMBOL(memdup_user_nul); =20 /* Check if the vma is being used as a stack by this task */ -int vma_is_stack_for_current(struct vm_area_struct *vma) +int vma_is_stack_for_current(const struct vm_area_struct *vma) { struct task_struct * __maybe_unused t =3D current; =20 @@ -410,7 +410,7 @@ unsigned long arch_mmap_rnd(void) return rnd << PAGE_SHIFT; } =20 -static int mmap_is_legacy(struct rlimit *rlim_stack) +static int mmap_is_legacy(const struct rlimit *rlim_stack) { if (current->personality & ADDR_COMPAT_LAYOUT) return 1; @@ -504,7 +504,7 @@ EXPORT_SYMBOL_IF_KUNIT(arch_pick_mmap_layout); * * -ENOMEM if RLIMIT_MEMLOCK would be exceeded. */ int __account_locked_vm(struct mm_struct *mm, unsigned long pages, bool in= c, - struct task_struct *task, bool bypass_rlim) + const struct task_struct *task, bool bypass_rlim) { unsigned long locked_vm, limit; int ret =3D 0; @@ -688,7 +688,7 @@ struct anon_vma *folio_anon_vma(const struct folio *fol= io) * You can call this for folios which aren't in the swap cache or page * cache and it will return NULL. */ -struct address_space *folio_mapping(struct folio *folio) +struct address_space *folio_mapping(const struct folio *folio) { struct address_space *mapping; =20 @@ -926,7 +926,7 @@ EXPORT_SYMBOL_GPL(vm_memory_committed); * Note this is a helper function intended to be used by LSMs which * wish to use this logic. */ -int __vm_enough_memory(struct mm_struct *mm, long pages, int cap_sys_admin) +int __vm_enough_memory(const struct mm_struct *mm, long pages, int cap_sys= _admin) { long allowed; unsigned long bytes_failed; --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f54.google.com (mail-ej1-f54.google.com [209.85.218.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1E6C234A32B for ; Fri, 29 Aug 2025 18:32:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492337; cv=none; b=Dw14/R4QxYdHhyxOIA2t99bzmLnGKNOi/OK7qcYhNNwuB4TmpH+gpc/0X3AEh0DW0FDWs9Jkr/E9azmRHJEpMj0TFmEleHG6zGfolUIOy8lNITfQQLMn7YzEChMEqBTeZaSuF3SfsgCzQoxD5qlP0+xfJIQcuHKWo7ovWJozkQQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492337; c=relaxed/simple; bh=0NjasZ0/PCPhPe9CzlDUIBAY0i8uA2ErDICpHagXJZM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Sv98YWDsfJqlAXeL+WwudvucRJq3TBVVXOXggQE3Ryh9LSyObjiJEYGe2LJAOAYHKBUWmYZ+kAgM6IjgMhUZDkfNAeuUmePj32jXv52GSu0FkOH0buOG+EYMSD6fUmf2dMGc7YAVQvFGVt/FPUizKGR66ST6v5W/qIl80oiF+hA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=XXtNS6Cc; arc=none smtp.client-ip=209.85.218.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="XXtNS6Cc" Received: by mail-ej1-f54.google.com with SMTP id a640c23a62f3a-afcb7ae6ed0so340014766b.3 for ; Fri, 29 Aug 2025 11:32:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492333; x=1757097133; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=4PHAh511rPGE+8F3ucAdvrwVlVrQ6G4xQcacWJ3jlqI=; b=XXtNS6CcmJX++DL1Ym1NvDcb66Qri8Mj+dmKsSa5lT6Hr+LfLWS1TTDgDh9ew0gPQr iPFLASK2rQxZP922S4RF+l43qfuNN/g6iAc2vtqGsdKBqJ2/D/O/OvwqimrLWllxiIOm vbwP7NdJjHWnoUvFMyYO87VG3Ql7zgMoVpxmOIgOtoXzTbdF0g6AXG1Wu4gu/Gun1CuX WidoLvzm89dhLNOkrRv2i/pyqSKC/gP/TdjuBKDuc3GqraFiyD7aNjliZ1ssbF4bYMk9 mKGkeuwRMKapPk9Ofcbo8k5MhvnLPwNqKa/P1GUQpmk/AVaN1NNgDZiYD4B/AHOvjh/6 WrGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492333; x=1757097133; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4PHAh511rPGE+8F3ucAdvrwVlVrQ6G4xQcacWJ3jlqI=; b=SdHasUF5Rhhlf5ABIazwH3KwRrHnZ2HACdIIxAigaDRk2rY9Lbz0gHuILoCE1tInqM rKzDV7OhElykyx1AlFboaWtRbQfJMEFhDSD/CqddzSExDx1re92DQRaadNp7/SV76pZF opFWPd1T57mBLjnCxZyPC321OM6yB3+vX90p3nAYRmFfEuTVe36mPpiCayqrK5AS4rHW PdpNlUr56Z3pljShuuUxVPmunE5lrG/rKrK/WohgOuzXZfrOddlux9S6hKURcLqynC1S gizE7/KYKLiJVyOAinhzdzmJ6f5T59k6cXvYEKTlKV4q5VdvfXHb3VKPsKSOyYnO944e QCfg== X-Forwarded-Encrypted: i=1; AJvYcCXgMN4O5LnRTxMO4rnHNM+9+7ZcBVXp+dVjvXvnPIx0r8avLJ5RoJ6fVOZBWjOuL4khvT7+ld4cZ4u/d+A=@vger.kernel.org X-Gm-Message-State: AOJu0YzxzY+lR12CNAlqs0eLr1LT8aszQcSZ49vl/3A8Bd45KqU4/j5o Yeeob5ycHOjdT+CLlJYgV/4Doe1Z7zJ6vKOXhYjrKRz7WQsXx0P4S01UMeh8bRRe2ME= X-Gm-Gg: ASbGncvvTI7M5yfIwaenGh0612HUrg3FRDNMMpipKNGs0V+Dc50gQXs61x5PKn6C8A+ ihedCECPnIFYc0DStqeKwqcNBnvEuQNCXKziZfy/HURiYEh++MUkXfdf7Qm0zNOTxrbYJYgY2Jj IiSs4vhRkbTTu+f+6AHJ0lq1bpQBj63yawDi1XTtPOttKbU8eNVdD6Ss9Y04aqzUJEzD7GPqoGJ zzRvasD8dSGHYf4A+4q6flEJ3SfsYrvwBZLf1NFK/3KEf/cJCs6HuZ3gciEDBjTgvLcuqEyovI0 7XE3j5Az8EnyHCZludrfu244R95PYyKB7H8eFSfH0QTVnm1KAiWY1oaXZYAS/CDA8DPRg8JJWMt EFHkASZGxH6OCZmJzGKuS77RH7GBvSVPH1S7dX+AL/KdOVC28+GVB2hgKe4VFhyVY4yH4zPIpBO GasSS7Bs+DSG19tEVloalDrQ== X-Google-Smtp-Source: AGHT+IHpRiCf3ba1lpqbF53lceFqttZcUMtU+GGQbLjq1PiES95G84yXDwAe7MA7Rac08dyDihP+Vg== X-Received: by 2002:a17:906:9fcb:b0:afe:b2be:6109 with SMTP id a640c23a62f3a-afeb2be6285mr1262333366b.59.1756492333347; Fri, 29 Aug 2025 11:32:13 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:12 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 07/12] parisc/sys_parisc.c: add `const` to mmap_upper_limit() parameter Date: Fri, 29 Aug 2025 20:31:54 +0200 Message-ID: <20250829183159.2223948-8-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. This piece is necessary to make the `rlim_stack` parameter to mmap_base() const. Signed-off-by: Max Kellermann Reviewed-by: Vishal Moola (Oracle) --- arch/parisc/include/asm/processor.h | 2 +- arch/parisc/kernel/sys_parisc.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/parisc/include/asm/processor.h b/arch/parisc/include/asm/= processor.h index 4c14bde39aac..dd0b5e199559 100644 --- a/arch/parisc/include/asm/processor.h +++ b/arch/parisc/include/asm/processor.h @@ -48,7 +48,7 @@ #ifndef __ASSEMBLER__ =20 struct rlimit; -unsigned long mmap_upper_limit(struct rlimit *rlim_stack); +unsigned long mmap_upper_limit(const struct rlimit *rlim_stack); unsigned long calc_max_stack_size(unsigned long stack_max); =20 /* diff --git a/arch/parisc/kernel/sys_parisc.c b/arch/parisc/kernel/sys_paris= c.c index f852fe274abe..b2cdbb8a12b1 100644 --- a/arch/parisc/kernel/sys_parisc.c +++ b/arch/parisc/kernel/sys_parisc.c @@ -77,7 +77,7 @@ unsigned long calc_max_stack_size(unsigned long stack_max) * indicating that "current" should be used instead of a passed-in * value from the exec bprm as done with arch_pick_mmap_layout(). */ -unsigned long mmap_upper_limit(struct rlimit *rlim_stack) +unsigned long mmap_upper_limit(const struct rlimit *rlim_stack) { unsigned long stack_base; =20 --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f53.google.com (mail-ej1-f53.google.com [209.85.218.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1922834DCC0 for ; Fri, 29 Aug 2025 18:32:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492339; cv=none; b=Z3jLcU5USgWON7dN/2bIW63MHJm7dBACh6G+lkor3TAfwyRmXWMs7YZ2BypJkjfv+lottOSqNL1zgz9luL9MzkrQ5i8r6g60f9Evvp7u1D5N7HOkiaZaLV7VpraZD0/C2aPkaZU2RhWvzpf0Xfgz1gUWrpaUE4u2IXalrA/znY0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492339; c=relaxed/simple; bh=Zs7sHB3GTtCxwgvgJvepvykYyV8HmXxi9TX4OFjcRjs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jJxE62Z1p/0Q3Vd73rLmPxu/lNp2IZqdHtsxBS5GbWaSprfvmfmyPJyU7GpKeqbWOEkXULBrUM0jFvaRhCfSI7RvVZorfkdDkWl26RpU0iLflPoTDegI/M1hIckXoffSGJqCEkoMHjAHOxvvgBS2j2cyxJpxZtYel9bd3vt14XA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=XnBWG+5E; arc=none smtp.client-ip=209.85.218.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="XnBWG+5E" Received: by mail-ej1-f53.google.com with SMTP id a640c23a62f3a-afcb7ace3baso412787066b.3 for ; Fri, 29 Aug 2025 11:32:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492334; x=1757097134; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WZ7PnN3wq5wKP2KT/uKeKbuD4jQQEwrG/IUaCtApCAs=; b=XnBWG+5E5GILlXw+xZuTsOX+HraFrngeWwWMTxlft467a59DZgP8A1Cbz9VsNSi0lQ cOBoyCJ2LO459xG/lc7LgE2cGNGd//rTf/HJuOBAJ0fbbJ3TZHjMBND9XfbRQxLvc3VE 9sSvfKRmVM6PIEQu3OqJwXnE5LOjXAFFsTU4pkZLNyLwMWGUPJfyuevLXdXK2XsOFO+9 FW/EI3fR1F9Si6B9HYaux5ZEcauEmVpClWNPWdPgH8Lmbfl/n/ATazfGaSU6buxqTFvR 2gKc/BDal/eHForJO+isPcNrXZA5h/HwrC9oK6kfCtRTZ3fKHEDhvM5CHtNiu8sdWek9 RWkg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492334; x=1757097134; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WZ7PnN3wq5wKP2KT/uKeKbuD4jQQEwrG/IUaCtApCAs=; b=K6vU6arwdsOgzMGgaZxvZpfR7qMLQ3CHVCmoJ9bO+C//PE55dqxLl6ZVJqenMP8K4p pFo7ibf6ZpckQRiywUe6tn1rBwwvyPPuJCJMMLqcd1m+7n3UN8cF0R9iXBLEljBqfJZt j5wG7oxGNr/2pfUfnrtiIneC2qQo6Pyxv92OJ8Gd6bik9uSTMag19kJJ+HHJYA0YWEXN WMHJ3LiOp8vECBZZY6z6f995k7wMeeiQ0ogi37vIWA2QRSOmNzwN2dyeJTQjZf/d7h/5 Fe7F6l/mqflBseGADmOU2Zx88B1sDfa8kbmsKQD2vm3X8VQy7Raa/tiwxcnJkB5PtnPs K7FQ== X-Forwarded-Encrypted: i=1; AJvYcCVIPohns0fI70M4nusc7/pzNWy3qbQgyc44RAJCXs/S2rSjixLpjmMTRJkRAMtrNTFoCkZPJJ4X+GBT7HI=@vger.kernel.org X-Gm-Message-State: AOJu0YzSzxG+7bcOYf5PQrjidYynbWjzGFaPPZypWemxUQGbnKEXxNMu lAkoBQq+Ij9zJB94KpsbDL2cwK6qFyBZR6kGEnmjRd9HKPsQCd+hwzpYYylauN6MOww= X-Gm-Gg: ASbGncuJ4IOCtFbGjfgMuf9q1v9QA7xP1vf2O0yLg27VCLtJygcQ6V3LUKgSixFE5zk bG5B4KS+yBcxhMpq8bYZ4tE46PN5li5Vvu7z11HIz4S9MEFLaKgTyrFDSJTigx6iIUOT90ysbIe B1Pn2eApBw0/AKerw6xb0fwgrs1Mq9yx5tEBSMnz0IHER8eJPHTGAB6VYovifNsbOLIsSO3C5wY Id2TwrXBBUzHYzYeAfyEoB4AgtQTxY9GtEfvJm0MIitXxw3p5TkXZ7yvYWhAWpQPjv1VVjJp+PG OpIxiNjf1XjFqQpVVbNUUjegClvYQyYaj7iTJMg+bsuXwKLZncl/ij8Pk++sR41pGyiGGW4piUh RtNauTZkdkY2fqeReTbu6myy2OvsyZkpOSrZ2Iej5+VSg3ClI7LGmvBEOJEPczQBym93ZVZKKr8 bwEdlgkyWKVmWkJcaU0nva8tcWJ3dq0XTg X-Google-Smtp-Source: AGHT+IHzJOTy2luKB32sVUhBKgOt2xF3771qGw0tmV3b7MRDICZMtNEq1NDAa3bFUq1AzPVA5KaLMg== X-Received: by 2002:a17:906:2a07:b0:afe:844c:bdd9 with SMTP id a640c23a62f3a-afe844cc4e4mr1495547066b.11.1756492334350; Fri, 29 Aug 2025 11:32:14 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:13 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 08/12] arch, mm/util: add const to arch_pick_mmap_layout() parameter Date: Fri, 29 Aug 2025 20:31:55 +0200 Message-ID: <20250829183159.2223948-9-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann Reviewed-by: Vishal Moola (Oracle) --- arch/s390/mm/mmap.c | 4 ++-- arch/sparc/kernel/sys_sparc_64.c | 2 +- arch/x86/mm/mmap.c | 6 +++--- include/linux/sched/mm.h | 4 ++-- mm/util.c | 6 +++--- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/arch/s390/mm/mmap.c b/arch/s390/mm/mmap.c index 547104ccc22a..767c5c26f9a3 100644 --- a/arch/s390/mm/mmap.c +++ b/arch/s390/mm/mmap.c @@ -27,7 +27,7 @@ static unsigned long stack_maxrandom_size(void) return STACK_RND_MASK << PAGE_SHIFT; } =20 -static inline int mmap_is_legacy(struct rlimit *rlim_stack) +static inline int mmap_is_legacy(const struct rlimit *rlim_stack) { if (current->personality & ADDR_COMPAT_LAYOUT) return 1; @@ -169,7 +169,7 @@ unsigned long arch_get_unmapped_area_topdown(struct fil= e *filp, unsigned long ad * This function, called very early during the creation of a new * process VM image, sets up which VM layout function to use: */ -void arch_pick_mmap_layout(struct mm_struct *mm, struct rlimit *rlim_stack) +void arch_pick_mmap_layout(struct mm_struct *mm, const struct rlimit *rlim= _stack) { unsigned long random_factor =3D 0UL; =20 diff --git a/arch/sparc/kernel/sys_sparc_64.c b/arch/sparc/kernel/sys_sparc= _64.c index 785e9909340f..55faf2effa46 100644 --- a/arch/sparc/kernel/sys_sparc_64.c +++ b/arch/sparc/kernel/sys_sparc_64.c @@ -294,7 +294,7 @@ static unsigned long mmap_rnd(void) return rnd << PAGE_SHIFT; } =20 -void arch_pick_mmap_layout(struct mm_struct *mm, struct rlimit *rlim_stack) +void arch_pick_mmap_layout(struct mm_struct *mm, const struct rlimit *rlim= _stack) { unsigned long random_factor =3D mmap_rnd(); unsigned long gap; diff --git a/arch/x86/mm/mmap.c b/arch/x86/mm/mmap.c index 708f85dc9380..82f3a987f7cf 100644 --- a/arch/x86/mm/mmap.c +++ b/arch/x86/mm/mmap.c @@ -80,7 +80,7 @@ unsigned long arch_mmap_rnd(void) } =20 static unsigned long mmap_base(unsigned long rnd, unsigned long task_size, - struct rlimit *rlim_stack) + const struct rlimit *rlim_stack) { unsigned long gap =3D rlim_stack->rlim_cur; unsigned long pad =3D stack_maxrandom_size(task_size) + stack_guard_gap; @@ -110,7 +110,7 @@ static unsigned long mmap_legacy_base(unsigned long rnd, */ static void arch_pick_mmap_base(unsigned long *base, unsigned long *legacy= _base, unsigned long random_factor, unsigned long task_size, - struct rlimit *rlim_stack) + const struct rlimit *rlim_stack) { *legacy_base =3D mmap_legacy_base(random_factor, task_size); if (mmap_is_legacy()) @@ -119,7 +119,7 @@ static void arch_pick_mmap_base(unsigned long *base, un= signed long *legacy_base, *base =3D mmap_base(random_factor, task_size, rlim_stack); } =20 -void arch_pick_mmap_layout(struct mm_struct *mm, struct rlimit *rlim_stack) +void arch_pick_mmap_layout(struct mm_struct *mm, const struct rlimit *rlim= _stack) { if (mmap_is_legacy()) mm_flags_clear(MMF_TOPDOWN, mm); diff --git a/include/linux/sched/mm.h b/include/linux/sched/mm.h index 2201da0afecc..0232d983b715 100644 --- a/include/linux/sched/mm.h +++ b/include/linux/sched/mm.h @@ -178,7 +178,7 @@ static inline void mm_update_next_owner(struct mm_struc= t *mm) #endif =20 extern void arch_pick_mmap_layout(struct mm_struct *mm, - struct rlimit *rlim_stack); + const struct rlimit *rlim_stack); =20 unsigned long arch_get_unmapped_area(struct file *filp, unsigned long addr, @@ -211,7 +211,7 @@ generic_get_unmapped_area_topdown(struct file *filp, un= signed long addr, unsigned long flags, vm_flags_t vm_flags); #else static inline void arch_pick_mmap_layout(struct mm_struct *mm, - struct rlimit *rlim_stack) {} + const struct rlimit *rlim_stack) {} #endif =20 static inline bool in_vfork(struct task_struct *tsk) diff --git a/mm/util.c b/mm/util.c index 241d2eaf26ca..38f8b9fa297c 100644 --- a/mm/util.c +++ b/mm/util.c @@ -431,7 +431,7 @@ static int mmap_is_legacy(const struct rlimit *rlim_sta= ck) #define MIN_GAP (SZ_128M) #define MAX_GAP (STACK_TOP / 6 * 5) =20 -static unsigned long mmap_base(unsigned long rnd, struct rlimit *rlim_stac= k) +static unsigned long mmap_base(unsigned long rnd, const struct rlimit *rli= m_stack) { #ifdef CONFIG_STACK_GROWSUP /* @@ -462,7 +462,7 @@ static unsigned long mmap_base(unsigned long rnd, struc= t rlimit *rlim_stack) #endif } =20 -void arch_pick_mmap_layout(struct mm_struct *mm, struct rlimit *rlim_stack) +void arch_pick_mmap_layout(struct mm_struct *mm, const struct rlimit *rlim= _stack) { unsigned long random_factor =3D 0UL; =20 @@ -478,7 +478,7 @@ void arch_pick_mmap_layout(struct mm_struct *mm, struct= rlimit *rlim_stack) } } #elif defined(CONFIG_MMU) && !defined(HAVE_ARCH_PICK_MMAP_LAYOUT) -void arch_pick_mmap_layout(struct mm_struct *mm, struct rlimit *rlim_stack) +void arch_pick_mmap_layout(struct mm_struct *mm, const struct rlimit *rlim= _stack) { mm->mmap_base =3D TASK_UNMAPPED_BASE; mm_flags_clear(MMF_TOPDOWN, mm); --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D9F3C34AB16 for ; Fri, 29 Aug 2025 18:32:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492338; cv=none; b=H6ReJkeHat/27BnLrQ7q47qzmUalgh/PJLhhw+fBMeXjhSK9zZmnXmLJmxplKiD1/8mOJXkJ1P4V4tZVhNjZL4rUZv/GoXm63Xb41E8qmY7sfb4uE58AU93YKa+ySmtTn5OvzcicprhrtR1SByAmFePq+imGpfV9dVJZik+lgnE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492338; c=relaxed/simple; bh=Y3Nk7gBkgF6N9c5VY7zLBMy3y2VCalDEY+iT3K3gDGs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=RqoUM3hmV4KlaNbrNTbOyqURzSnkQHUUKZJyZGQ7OaNfiXPrd7hqBCgvl+MBZn2h7D6oiumeywBjH+chTjOgJQA+pIsqwdMW4LWP9RbozaDB/Dr7TTspiDaCQqn62CbtSIJ8hHpaLNF1YKoWsxjqp596hhzemywOZIuZMvqhAYc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=Qn5c2sLh; arc=none smtp.client-ip=209.85.218.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="Qn5c2sLh" Received: by mail-ej1-f46.google.com with SMTP id a640c23a62f3a-afeba8e759eso370260966b.3 for ; Fri, 29 Aug 2025 11:32:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492335; x=1757097135; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YptetONu60ua7xKiQIttVSTb9jDe2/acm4my/H0afc4=; b=Qn5c2sLhpNaDpV+OtRexXk1D+3ai4LDKNEZ8N9yiZYrpbKabcDQTu5jX0nMfvlwiJL cAlmWASuJa0/zA3evnxKuKbzAA9fIzPE+8liI6buUoxJvks15kscKRpchr0UdL+bB5hw sjXsisGWgLBepKPQgKcopcJJl/vrmwBZACXwkbvcZcwE7nffPFgPb0lCNZqYriJqJ+Dh p9+s8DltqwX/iU9Nf583QIIu7zN03uPu6SoCOLxU1LMxxHuxtzYSX6LZ7qQhVePQzoha LNikdYbbIhc4+n3yPQ3UVJc2iZ3CZDwxjVwqmgPICUlm9lO/FNBup01SbICd7CEbD1Qk xQvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492335; x=1757097135; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YptetONu60ua7xKiQIttVSTb9jDe2/acm4my/H0afc4=; b=gahGqFs0n0i/NFG0YV0Bwr8EKZMFHU+UZnojmTar/IOsD1DgRMvV95Rewv3lJ64WK2 SHeUIGSkSDSoY/6OsDOp8S6qsCGt19Zos23hmQMPjKNsk1sBAnZi5popwp9H6/5plob2 kq0QPigQQuFcvV/YSi0Iq8gI1/SSDJMFBNN4YCpYcVW1k/lB+mOqJDGwTbLC7XRknw7y /HrJroENF8a1VNk/2WZft6na/PZMy8/TVr9ymOSm2jZgT47Zsmttcj+WVU8gJolOgL1k sIf53EdikURqFdmV4uGPGhKKBORShr4MS6Ql08lmWWV+b/Zmq5KSpTzbEm2OTaYXdwIg caDg== X-Forwarded-Encrypted: i=1; AJvYcCUF6dqYbLHqi0EFWsBHVkidS2Cz31ib8mRoz1nxak7Q1/4ew/F8TpeB21jk1X3z5Uo9oYkELHSbBZAmrEE=@vger.kernel.org X-Gm-Message-State: AOJu0YwXQO9Xh1zGPqrcFW5GBcXexvvrbLibtWo9ZjWqu9hMlXnmFE4h Ocv4amtwERuWBjPSHeUtCh0pz+I/vzhoKHPPVB1Hx22m4gbQGimPK3Yg6JiHKbtbQLo= X-Gm-Gg: ASbGncu3S6s6Fow44Vblq1/DjfynXnVgm8IyJ8dglZt7PQQf4BAjip4vvpNZtMaRZSc m/7FPIWGBX2cL/Czd5eZfjrYgTmrj73s6+4UOEW6ekt1juSxDkeexb1rYOHf6KruvhEnoCjN/SR Qo2u9RPk8hUd8aXdA0xnUhjkX1g1Rdeb4K4rEGYI9gBjhPYJJKK8wW6eh2TYhUNdXXMCywVpAk8 geNBM6slP4FBC8AYJfPCC063z3cgS1ezARD1PDT0XEDCyV3z2d+fujOrxbdwY+zzphqH2WrDbgQ 0mfIjPeKT8SLNB6g8eJDmoc0lzmKexdpTokcew2gGtfcYuimKJjbUsa3Feg+KEj1QPkEipc9AsA X0kxUUHnMxIiPSpHrLqcaFBQTuEjoFglXQfTHCG/aD0AeZSRqqdBkcb1IJeGvQ2VIYrPZLNnUpc WhpuAVVKx7NoeXEenZDZCRUypM8lqHO87f X-Google-Smtp-Source: AGHT+IH+NuMFRsuGd4PF0q6uCIHQQAJ7dt/ECx++1eqEWlkBezyQqdi5BEB6pNrdcyXSk7s4aAAuHg== X-Received: by 2002:a17:907:2d21:b0:afe:f7ae:112e with SMTP id a640c23a62f3a-afef7ae11fbmr572057966b.41.1756492335238; Fri, 29 Aug 2025 11:32:15 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:14 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 09/12] include/mm_types.h: add `const` to several pointer parameters Date: Fri, 29 Aug 2025 20:31:56 +0200 Message-ID: <20250829183159.2223948-10-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann Reviewed-by: Vishal Moola (Oracle) --- include/linux/mm_types.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index d934a3a5b443..275e8060d918 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h @@ -632,7 +632,7 @@ static inline void ptdesc_pmd_pts_dec(struct ptdesc *pt= desc) atomic_dec(&ptdesc->pt_share_count); } =20 -static inline int ptdesc_pmd_pts_count(struct ptdesc *ptdesc) +static inline int ptdesc_pmd_pts_count(const struct ptdesc *ptdesc) { return atomic_read(&ptdesc->pt_share_count); } @@ -660,7 +660,7 @@ static inline void set_page_private(struct page *page, = unsigned long private) page->private =3D private; } =20 -static inline void *folio_get_private(struct folio *folio) +static inline void *folio_get_private(const struct folio *folio) { return folio->private; } --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 07648350828 for ; Fri, 29 Aug 2025 18:32:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492339; cv=none; b=KB953KFjOz9lj+JCPr9bxutSq5abitK52rtu0mo2bxpDqKXYsWDnAj8nxv4nbA0qonsH/1NvkPIrYMHT5oQbj0RtrIp+Dzlp6SkOEncEmHPYxLBFu9mYjzl+Pj3fBeK1nHZVDYvZqxBxOyLlpzWqrku7JoaskK662y+GOd7NFFo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492339; c=relaxed/simple; bh=0A3KukRP6WUH29qIfq2HOM7b55LtojY9TjySuP/oa/M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ROHK9YxcxTYqUFz+IuAQD0OfaI0Z8lip4G6aJXCVrKERO8GqqY3rP+x/pWVFvOI/o3p1IS4jXWyJgeMfqGUzQyftDm2wAYbSfW/DZqWNc1+BUbnc4LiwZ+CLpOAtEwhS6yQ9WH+lG7yPF9whGz1g5oZaZWhIkroldJRcVjinmZ0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=FfRwVXCx; arc=none smtp.client-ip=209.85.218.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="FfRwVXCx" Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-afcb7a3b3a9so373562166b.2 for ; Fri, 29 Aug 2025 11:32:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492336; x=1757097136; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=e0olIYmWE+/dr5Hm5adY9R1HGCCQ1xC2gIdwvYkk/po=; b=FfRwVXCxCVcMMrRXUUEfE5qwNO4rtrfp011RNUJKdOj3TjNSp54xP5isJQitq8/Cx1 2i9AyCqM7lSkleNPu2HPL8YZ2zvByQvMXfXx5vzXp36nVMNYr4cECwMkwwoZkm7zVUrA KLhxcSE43/fb2ehZn75sxMfMaxK2YAS0mj0BjOEtEs1l1+xhDx0YgP2+A+KK1eGgpsrL vLsO1NUJqV8sSwen7+vP8KXLwWN7ajuj6iVfRYVcNIWGr59jN2Bb8tTMlaxIddica9PN nM6Tpoywm5HMRa8QlyjrlTesueOMD5wCGX89mhvgFK3r6h7cyTd9Wh5LGmAxP24cp1dC 0qhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492336; x=1757097136; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=e0olIYmWE+/dr5Hm5adY9R1HGCCQ1xC2gIdwvYkk/po=; b=CXE6quZ/KhzHZNEKdY8xh9E7Ac4cQxW0BrhKBGkb9AaLMlagZk/2fvOD2F6BD0+2iE JPsOVcKiziuKyQfrfVJF1KQKXcuxEuh4k93u3zbp556uEnTvcIhsKc2K0aUGEUWHAVlW LaAubMkGhoo7LU+LOXPfVAvbJM0HFsUiYkw7MWoO9VWo+u4KR89iPtqxNzqci4JxKoOU nMXwi6LIn4jEdmD7euU8YNdkDmj2hHRQYIMvDgqr6ftAZnP0xHnYTB3f/E7EgkkRBcAl avte/GEtDzVJ4eep9VnCpstqrrulGvB3lhe+Ojt5wTe6uL8hXk2O7DplHJtoeSfWsSfu NePw== X-Forwarded-Encrypted: i=1; AJvYcCV22xKrIwxGwoi58HTpUQyiCQYE9+kwdNu4QRUxrGhtWfvbcoN/ERi1hEeV542clxFMBnPoa24eB837Wy8=@vger.kernel.org X-Gm-Message-State: AOJu0Yyd/5n+GadQce12lTtyPg2C6cbdG8cqZaGvtDSEG6u3PWNfvt/m wKoQWti4dktSwOhaP+X9jXp3w7hRStWDExUk3ZJLOOQ2P/3DUZxdKx3ptnPGuVTKKWw= X-Gm-Gg: ASbGncsEPLKfrvaZDJyjU0kWXJm6ozgKB7PWw7SOMdrqy+UbboelDDftIn5yc17zDr0 tN11E+LpMz6vG0gsuMVF0kpWEX3Z3DeLLgOBSDdrBUFt62+f2voyHt4IuFBeeN5+PgdvYGGyXwF PsameUg467EoC6PyPlo5C9ASXaZuAiwTr4dyZh0RJnrsCNNB5tojlZUvSnXqsFhFX8tw1Nzvrmp 4pBALSWi5QPrGynrsrq/Cu/D1wuq37XDLQTbumGnWIiZNxQFMM5YxDHHKSz6IucGbUq/UF9pX/L eR5++E1YGb0QCNH2h5QE2g9Nl1PPrZrosexX/d5Ce9is0SKHELMNQBEfuXWF7XYmJbGxHnqeTXJ gUfk0M2lrY69yw80jzM1FIRKowUfAQ+LtnBxi/HkZCWD6bq8V+wz4NqjrKb2fdrSp05VxCsYNeU I1nh613rydQlI5y9JbXwDYLVxWjbF7y6K4 X-Google-Smtp-Source: AGHT+IG+akp2S6/jmEqkov0WGAZfNqim0Qj1piYjiMIZdZrxJ9Nq62SrMoJjcQmw810z5k2DCtP7Kg== X-Received: by 2002:a17:907:980b:b0:afe:e9ca:8ec0 with SMTP id a640c23a62f3a-afee9ca97b3mr620810866b.47.1756492336083; Fri, 29 Aug 2025 11:32:16 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:15 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 10/12] include/mm_inline.h: add `const` to lots of pointer parameters Date: Fri, 29 Aug 2025 20:31:57 +0200 Message-ID: <20250829183159.2223948-11-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann Reviewed-by: Vishal Moola (Oracle) --- include/linux/mm_inline.h | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/include/linux/mm_inline.h b/include/linux/mm_inline.h index 150302b4a905..d6c1011b38f2 100644 --- a/include/linux/mm_inline.h +++ b/include/linux/mm_inline.h @@ -25,7 +25,7 @@ * 0 if @folio is a normal anonymous folio, a tmpfs folio or otherwise * ram or swap backed folio. */ -static inline int folio_is_file_lru(struct folio *folio) +static inline int folio_is_file_lru(const struct folio *folio) { return !folio_test_swapbacked(folio); } @@ -84,7 +84,7 @@ static __always_inline void __folio_clear_lru_flags(struc= t folio *folio) * Return: The LRU list a folio should be on, as an index * into the array of LRU lists. */ -static __always_inline enum lru_list folio_lru_list(struct folio *folio) +static __always_inline enum lru_list folio_lru_list(const struct folio *fo= lio) { enum lru_list lru; =20 @@ -141,7 +141,7 @@ static inline int lru_tier_from_refs(int refs, bool wor= kingset) return workingset ? MAX_NR_TIERS - 1 : order_base_2(refs); } =20 -static inline int folio_lru_refs(struct folio *folio) +static inline int folio_lru_refs(const struct folio *folio) { unsigned long flags =3D READ_ONCE(folio->flags.f); =20 @@ -154,14 +154,14 @@ static inline int folio_lru_refs(struct folio *folio) return ((flags & LRU_REFS_MASK) >> LRU_REFS_PGOFF) + 1; } =20 -static inline int folio_lru_gen(struct folio *folio) +static inline int folio_lru_gen(const struct folio *folio) { unsigned long flags =3D READ_ONCE(folio->flags.f); =20 return ((flags & LRU_GEN_MASK) >> LRU_GEN_PGOFF) - 1; } =20 -static inline bool lru_gen_is_active(struct lruvec *lruvec, int gen) +static inline bool lru_gen_is_active(const struct lruvec *lruvec, int gen) { unsigned long max_seq =3D lruvec->lrugen.max_seq; =20 @@ -217,12 +217,13 @@ static inline void lru_gen_update_size(struct lruvec = *lruvec, struct folio *foli VM_WARN_ON_ONCE(lru_gen_is_active(lruvec, old_gen) && !lru_gen_is_active(= lruvec, new_gen)); } =20 -static inline unsigned long lru_gen_folio_seq(struct lruvec *lruvec, struc= t folio *folio, +static inline unsigned long lru_gen_folio_seq(const struct lruvec *lruvec, + const struct folio *folio, bool reclaiming) { int gen; int type =3D folio_is_file_lru(folio); - struct lru_gen_folio *lrugen =3D &lruvec->lrugen; + const struct lru_gen_folio *lrugen =3D &lruvec->lrugen; =20 /* * +-----------------------------------+---------------------------------= --+ @@ -302,7 +303,7 @@ static inline bool lru_gen_del_folio(struct lruvec *lru= vec, struct folio *folio, return true; } =20 -static inline void folio_migrate_refs(struct folio *new, struct folio *old) +static inline void folio_migrate_refs(struct folio *new, const struct foli= o *old) { unsigned long refs =3D READ_ONCE(old->flags.f) & LRU_REFS_MASK; =20 @@ -330,7 +331,7 @@ static inline bool lru_gen_del_folio(struct lruvec *lru= vec, struct folio *folio, return false; } =20 -static inline void folio_migrate_refs(struct folio *new, struct folio *old) +static inline void folio_migrate_refs(struct folio *new, const struct foli= o *old) { =20 } @@ -508,7 +509,7 @@ static inline void dec_tlb_flush_pending(struct mm_stru= ct *mm) atomic_dec(&mm->tlb_flush_pending); } =20 -static inline bool mm_tlb_flush_pending(struct mm_struct *mm) +static inline bool mm_tlb_flush_pending(const struct mm_struct *mm) { /* * Must be called after having acquired the PTL; orders against that @@ -521,7 +522,7 @@ static inline bool mm_tlb_flush_pending(struct mm_struc= t *mm) return atomic_read(&mm->tlb_flush_pending); } =20 -static inline bool mm_tlb_flush_nested(struct mm_struct *mm) +static inline bool mm_tlb_flush_nested(const struct mm_struct *mm) { /* * Similar to mm_tlb_flush_pending(), we must have acquired the PTL @@ -605,7 +606,7 @@ pte_install_uffd_wp_if_needed(struct vm_area_struct *vm= a, unsigned long addr, return false; } =20 -static inline bool vma_has_recency(struct vm_area_struct *vma) +static inline bool vma_has_recency(const struct vm_area_struct *vma) { if (vma->vm_flags & (VM_SEQ_READ | VM_RAND_READ)) return false; --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f52.google.com (mail-ej1-f52.google.com [209.85.218.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D7E63350837 for ; Fri, 29 Aug 2025 18:32:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492340; cv=none; b=AkBsE7xH8pMVwKezedGzvrSReUosUrPG/XHin8YKd+hBfOoaLpQLGHr9G19I9nxLzDINIYlHmyyX7kxdPaKrenSeo/1laTsLi7vEjHt7P0WqhkceUOODsURQ00WuVTX2ptKOp05XCzNwXb2eOkVd8RVokI3vuOjBW9tmzi/Xx30= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492340; c=relaxed/simple; bh=KBzoJEnP5RpkSJ7LG7MYcA6u4G/IpPYLal/QclJt7gU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=uWZBmFw4pYO+wcN8AoXVYUkq3yoKMFq0IW12pPGcKHjFmlsBHys5fLeqsRg+s0U86/5xbuwi2iJ/nosZyB8vrM27tlObqhPw7L/3UYHIYvkDkQiJUOMecu5DWoVeYhnakOufW4u0U/8pPvGCtJZHCosshZ9hIHhO7ClUoyjoIp0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=WsMg+Tvv; arc=none smtp.client-ip=209.85.218.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="WsMg+Tvv" Received: by mail-ej1-f52.google.com with SMTP id a640c23a62f3a-afcb78ead12so394248966b.1 for ; Fri, 29 Aug 2025 11:32:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492337; x=1757097137; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=pe6DpLq59T2oGBgvmta3nCEJaBGqnD8+qIkEiE/ndtY=; b=WsMg+TvvWTq0KOtSy0j3saOaub1YljMOjeC7Z9LyKkKoXTbSleDwv4rLKPyDVAq2jH dOuKKP4DT/EI4jIzVAIsTVb/rn/7iV9JX4oaOSYpyb5dB4Di5aqupTXL6v9Xbs2TOiKZ bFJfWs/eHOn6l8+zMrDf7ohufYrd8cVRP3S4rwUayKVSWHvaixknUUhb6Q+ErstZf54e QcxDKYJ0spr3XkJ/eGWg7+VtCsW+Usx+5c+Xqgi/E7wPxLV79lIZZWaezsVCnrwL4Cc/ N+O5+F/HrRD1+HWAT1/X/3KvRWcF4faDRBVKIY7y3RTrChdC9b72T8iokv8Dfm5p3dIu P8EA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492337; x=1757097137; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=pe6DpLq59T2oGBgvmta3nCEJaBGqnD8+qIkEiE/ndtY=; b=tpHQjz0su6a2SpWuUpDhIBv8QgVM0LUlWVccE1Hvol6YykFQueaKDgwamuxaxN9cm3 LCW7/tEvqkiy3SZscOn40pb+5Y/+o1sgQyYFs4xjJsZnJcMQB9N2ELzFqCVpIji0W41m phqKXCRYMBx48Yz3574pgXamg+UwGJ1YHwV8QfIvwd/xsnZfobq8SKrnoMmEq0QmXvmw xWQFgSo0ctOgV7a82O23HJRGlfJP2ZMO0A7TwWdY9/wsB/UTwytveq3p8NnzIBVJ5a/6 7mJ3HlaNypCLGc4cxZG90ddLBWsQSJIl49Hzs9j5ZDrWlGKRGhnSirh78qiMwj97LJfA 6VqA== X-Forwarded-Encrypted: i=1; AJvYcCW7nm1SJkfJENEjdlTJK1yhfqqn8Ne6s2ynBlYAYk0gFtzCx8/UddpA2AWeCl2wKWHfdavQ2t8os2txiac=@vger.kernel.org X-Gm-Message-State: AOJu0YygMmbHUcTEfcsTvS4DIFFTV/iKcwhbysITTg34Yi9jnERUzUXb KHQ2FmZw4QRHBFrwkUKEUqPvoxC4WGtL3PU/9sb9wjc2AT9uEn40tGwmI4ybgoueYVk= X-Gm-Gg: ASbGncsOieuJnBnPfjpYoomJ0Ff9cLZccocAQeYVY2ciKUFptpm5g09bthjyQNdv1L5 hLbyp+Y45BlUVhpX19TP7RpIgnNhYURxJyVLP/BIebphmOIY9o2nihcTxrZygLax9186glggVmB f0ompNlVemN+t55/FVj/I9EgyWjZwEO2pI2ZeesXW1026puyyy/2NsT4lFZ4vkNcXTxHqlFveNY NkT1M9i3gaYgpuezrUIrpZIfX6JRKNW08Dwo1WjPvAnw+WfymmIguTHTk42ySuElYG9mgNaXqgf pzUurbGShySGMQaedVJOFnJyVUEcJ0kOpu01S2QaCvuI/TRdk7L8HbuirpQySc/VvxOTP7AJbrt mU+VEiiAOH9a21/yIwLn8MFp0SEy0AeCZaTaKC0K4bC9zY2NECvvSWVhsH+Cj8IIk975IjN5T5w e6rlDNMgt8zJFqOI6j0D3tRw== X-Google-Smtp-Source: AGHT+IGUAfjuxVvWgJ0jIxnVUYcEnT26Z3aV7rgprRJcq8RNlAdb2W2lc2qvTd0AHP5zAdyY21KVaw== X-Received: by 2002:a17:907:9687:b0:afe:d48e:34f5 with SMTP id a640c23a62f3a-afed48e3bd5mr851988966b.12.1756492336971; Fri, 29 Aug 2025 11:32:16 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:16 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 11/12] include/mm.h: add `const` to lots of pointer parameters Date: Fri, 29 Aug 2025 20:31:58 +0200 Message-ID: <20250829183159.2223948-12-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann --- include/linux/mm.h | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 48fe838723ed..953368e578f7 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -716,7 +716,7 @@ static inline void release_fault_lock(struct vm_fault *= vmf) mmap_read_unlock(vmf->vma->vm_mm); } =20 -static inline void assert_fault_locked(struct vm_fault *vmf) +static inline void assert_fault_locked(const struct vm_fault *vmf) { mmap_assert_locked(vmf->vma->vm_mm); } @@ -859,7 +859,7 @@ static inline bool vma_is_initial_stack(const struct vm= _area_struct *vma) vma->vm_end >=3D vma->vm_mm->start_stack; } =20 -static inline bool vma_is_temporary_stack(struct vm_area_struct *vma) +static inline bool vma_is_temporary_stack(const struct vm_area_struct *vma) { int maybe_stack =3D vma->vm_flags & (VM_GROWSDOWN | VM_GROWSUP); =20 @@ -873,7 +873,7 @@ static inline bool vma_is_temporary_stack(struct vm_are= a_struct *vma) return false; } =20 -static inline bool vma_is_foreign(struct vm_area_struct *vma) +static inline bool vma_is_foreign(const struct vm_area_struct *vma) { if (!current->mm) return true; @@ -884,7 +884,7 @@ static inline bool vma_is_foreign(struct vm_area_struct= *vma) return false; } =20 -static inline bool vma_is_accessible(struct vm_area_struct *vma) +static inline bool vma_is_accessible(const struct vm_area_struct *vma) { return vma->vm_flags & VM_ACCESS_FLAGS; } @@ -895,7 +895,7 @@ static inline bool is_shared_maywrite(vm_flags_t vm_fla= gs) (VM_SHARED | VM_MAYWRITE); } =20 -static inline bool vma_is_shared_maywrite(struct vm_area_struct *vma) +static inline bool vma_is_shared_maywrite(const struct vm_area_struct *vma) { return is_shared_maywrite(vma->vm_flags); } @@ -3488,7 +3488,7 @@ struct vm_area_struct *vma_lookup(struct mm_struct *m= m, unsigned long addr) return mtree_load(&mm->mm_mt, addr); } =20 -static inline unsigned long stack_guard_start_gap(struct vm_area_struct *v= ma) +static inline unsigned long stack_guard_start_gap(const struct vm_area_str= uct *vma) { if (vma->vm_flags & VM_GROWSDOWN) return stack_guard_gap; @@ -3500,7 +3500,7 @@ static inline unsigned long stack_guard_start_gap(str= uct vm_area_struct *vma) return 0; } =20 -static inline unsigned long vm_start_gap(struct vm_area_struct *vma) +static inline unsigned long vm_start_gap(const struct vm_area_struct *vma) { unsigned long gap =3D stack_guard_start_gap(vma); unsigned long vm_start =3D vma->vm_start; @@ -3511,7 +3511,7 @@ static inline unsigned long vm_start_gap(struct vm_ar= ea_struct *vma) return vm_start; } =20 -static inline unsigned long vm_end_gap(struct vm_area_struct *vma) +static inline unsigned long vm_end_gap(const struct vm_area_struct *vma) { unsigned long vm_end =3D vma->vm_end; =20 @@ -3523,7 +3523,7 @@ static inline unsigned long vm_end_gap(struct vm_area= _struct *vma) return vm_end; } =20 -static inline unsigned long vma_pages(struct vm_area_struct *vma) +static inline unsigned long vma_pages(const struct vm_area_struct *vma) { return (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; } @@ -3540,7 +3540,7 @@ static inline struct vm_area_struct *find_exact_vma(s= truct mm_struct *mm, return vma; } =20 -static inline bool range_in_vma(struct vm_area_struct *vma, +static inline bool range_in_vma(const struct vm_area_struct *vma, unsigned long start, unsigned long end) { return (vma && vma->vm_start <=3D start && end <=3D vma->vm_end); @@ -3656,7 +3656,7 @@ static inline int vm_fault_to_errno(vm_fault_t vm_fau= lt, int foll_flags) * Indicates whether GUP can follow a PROT_NONE mapped page, or whether * a (NUMA hinting) fault is required. */ -static inline bool gup_can_follow_protnone(struct vm_area_struct *vma, +static inline bool gup_can_follow_protnone(const struct vm_area_struct *vm= a, unsigned int flags) { /* @@ -3786,7 +3786,7 @@ static inline bool debug_guardpage_enabled(void) return static_branch_unlikely(&_debug_guardpage_enabled); } =20 -static inline bool page_is_guard(struct page *page) +static inline bool page_is_guard(const struct page *page) { if (!debug_guardpage_enabled()) return false; @@ -3817,7 +3817,7 @@ static inline void debug_pagealloc_map_pages(struct p= age *page, int numpages) {} static inline void debug_pagealloc_unmap_pages(struct page *page, int nump= ages) {} static inline unsigned int debug_guardpage_minorder(void) { return 0; } static inline bool debug_guardpage_enabled(void) { return false; } -static inline bool page_is_guard(struct page *page) { return false; } +static inline bool page_is_guard(const struct page *page) { return false; } static inline bool set_page_guard(struct zone *zone, struct page *page, unsigned int order) { return false; } static inline void clear_page_guard(struct zone *zone, struct page *page, @@ -3899,7 +3899,7 @@ void vmemmap_free(unsigned long start, unsigned long = end, #endif =20 #ifdef CONFIG_SPARSEMEM_VMEMMAP -static inline unsigned long vmem_altmap_offset(struct vmem_altmap *altmap) +static inline unsigned long vmem_altmap_offset(const struct vmem_altmap *a= ltmap) { /* number of pfns from base where pfn_to_page() is valid */ if (altmap) @@ -3913,7 +3913,7 @@ static inline void vmem_altmap_free(struct vmem_altma= p *altmap, altmap->alloc -=3D nr_pfns; } #else -static inline unsigned long vmem_altmap_offset(struct vmem_altmap *altmap) +static inline unsigned long vmem_altmap_offset(const struct vmem_altmap *a= ltmap) { return 0; } --=20 2.47.2 From nobody Fri Oct 3 13:30:15 2025 Received: from mail-ej1-f48.google.com (mail-ej1-f48.google.com [209.85.218.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 63D64350856 for ; Fri, 29 Aug 2025 18:32:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492341; cv=none; b=G7R/uitNqfWn4P4NIxv+bv8RIKdTAS/wexO7O+41E+twVxQ60YF9hORbuOzT9ytsaaVS5NRoD7h44LvjeFtKIJA3D6r0UShMLGJQKwY9tzron2qVBAi9nagO5PtXOQaEKmuorjZt7m2yoYZLTmczNPPRfVxFPJtgoLeaKPg8weM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756492341; c=relaxed/simple; bh=MJPuH+nv2ZSSHOuY6FGQ4nd62GmNOXiljr99gTiFb78=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lHC0EFOR3IOeXpg154GSvphwwiu3l9vRZ61ZdZimqf8p95ly6M2hRg47aRhWqLuX1/jeq8n3Dz3EiIuX0bIQI4p3WUFQ7rcVChI+t4ZyQp2hy6tArYjaXrCN/6dhU0HiNc6c4zIOSWVNotjHmul+dGqs2z64NWEiy6qika8I5mw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=Nc3PTxrG; arc=none smtp.client-ip=209.85.218.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="Nc3PTxrG" Received: by mail-ej1-f48.google.com with SMTP id a640c23a62f3a-afec56519c8so410476266b.2 for ; Fri, 29 Aug 2025 11:32:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1756492338; x=1757097138; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/vSOWKuEaMDZ+2LJ8LL0JmOu370M3l/3FgriRex4OPk=; b=Nc3PTxrGL3tQXZCbH1Q55VNkvZimJLpfCpX7CBJa7vpQdkQXA+Im0JAsIRYpx+mxuD CFNlv5DyPmomaHXYF+iEd9DxZwbVYo9HxMWNbJS4CE6rWCqcvXWhGol+OU2E1HeCYDx4 Ks+lB79Xf4/ZwT+GJwbzFtpTqCdE6uZ3Gu44Iu8/EUrjNmtrBT8MSfs23bOmbCmIhlPw HrDDcdppJFKmgf7K+VGyFYP6lza9IPq3giZUuLl7Ub0pgzuSybPZSI4UqUqwYJV19SZF cqUr7G4MB64lKWFy4f2qEezHvHLTV3Jo/5yKj06dv4HreptmfBMirSikma1gChst8Spe pY/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756492338; x=1757097138; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/vSOWKuEaMDZ+2LJ8LL0JmOu370M3l/3FgriRex4OPk=; b=sJOR444HTTAQcSKbPD48JC0IEEA6z3gbEoSUpUzV2mZ0A9+fMSfASTbzW/V2hNLNZ3 YGErd9U/IOCRg/ymm+usg5ULAuq+LsmLKpAklIEE2TNOI7RxSQ+xo7XulZDTNPmlFw4L w01/jDpbC2i7dv51KYlZ5/p+dNFfuwzfdixx1t7aYhfy+qVBKmAHmzWYj3JI7/wWV+TB xE4412VE0PmMCum7uMwhmPQlKSrLL6rluFIGkn6plOSL3rTii7t5LAM0VfLPD265nL6+ jkVwYEQw9KlX2Iugz0GIn8AIA5mScatfY8XYq/sQmgiIWj6NDzxsBbkq5ZzbxFusVHku 7I0w== X-Forwarded-Encrypted: i=1; AJvYcCWTMm2d6VK2hIC5duOvVvKdpNraBf2s6mr9hqyeLYguwiVk2Uc6/mM265bHTIuLh4pmwS6g6bB8JCX6jFQ=@vger.kernel.org X-Gm-Message-State: AOJu0YyEAbJn30hM7dzBRxfFIYw08iqhQ/wd7VbKx87qS09lmzvekiit CyBal24WRInX8Q21jC/RQLb6kHLOZQVyC7kOO3hk/zFrrUusG7FybUeLMXS0SwhX6TI= X-Gm-Gg: ASbGncsdT/XoSCsik9NaPTZkPp5QP94dyDb7o5lFrTZAsBHhFHFdz0IgZle7R+7tWOH V8MJz3gkEm+PpoaGLsfqFlTw/LaPDiczhXToYn3cE20J83g+XqHgVmkV6UXh3KETkj8WTYP8vyH A39HwafNNBvO8PpzFKUK/4Do0BmmW74idbhmqFJ8vqePexwKc5EHjhBBbpQ31g3mNYLvtpZ0hh3 iivM6tOx1d/q3w3onzieEnNHUYw/WyKkPNAulhA2/Knng/JOtjnAC4XH7GmGjj0E1BFndRKQNfr 3iqP3Ro2hzvjAQ4NO19E9TZr7Z+TY1/ZDzMj1V4SiaJx2hPgRfoBPL+gSZTxwZawxT/4P3TRBh1 pN5X7QXUWr0UAEXRRoVSxcOKE9h/fwd3pilLBdX8gC+ULlp1i9Xbizd/i8zxqBibGXtUqroBOFr vjo95vPKd6jhJYAplH3/bNzg== X-Google-Smtp-Source: AGHT+IGv0OdLQqUR+bUGZrofMRHPs+UUakVtxtldjW+6bUQQarM/n0M9fQnNeaSck9ADnkUgSV9k7w== X-Received: by 2002:a17:906:c112:b0:ace:d710:a8d1 with SMTP id a640c23a62f3a-afe2904bbcemr2551164366b.24.1756492337812; Fri, 29 Aug 2025 11:32:17 -0700 (PDT) Received: from raven.intern.cm-ag (p200300dc6f1d0f00023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f1d:f00:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-afefc7f1174sm257964466b.9.2025.08.29.11.32.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Aug 2025 11:32:17 -0700 (PDT) From: Max Kellermann To: akpm@linux-foundation.org, david@redhat.com, axelrasmussen@google.com, yuanchu@google.com, willy@infradead.org, hughd@google.com, mhocko@suse.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com Cc: Max Kellermann Subject: [PATCH 12/12] mm/highmem: add `const` to lots of pointer parameters Date: Fri, 29 Aug 2025 20:31:59 +0200 Message-ID: <20250829183159.2223948-13-max.kellermann@ionos.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250829183159.2223948-1-max.kellermann@ionos.com> References: <20250829183159.2223948-1-max.kellermann@ionos.com> 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" For improved const-correctness. Signed-off-by: Max Kellermann --- arch/arm/include/asm/highmem.h | 6 +++--- arch/xtensa/include/asm/highmem.h | 2 +- include/linux/highmem-internal.h | 34 +++++++++++++++---------------- include/linux/highmem.h | 8 ++++---- mm/highmem.c | 10 ++++----- 5 files changed, 30 insertions(+), 30 deletions(-) diff --git a/arch/arm/include/asm/highmem.h b/arch/arm/include/asm/highmem.h index b4b66220952d..bdb209e002a4 100644 --- a/arch/arm/include/asm/highmem.h +++ b/arch/arm/include/asm/highmem.h @@ -46,9 +46,9 @@ extern pte_t *pkmap_page_table; #endif =20 #ifdef ARCH_NEEDS_KMAP_HIGH_GET -extern void *kmap_high_get(struct page *page); +extern void *kmap_high_get(const struct page *page); =20 -static inline void *arch_kmap_local_high_get(struct page *page) +static inline void *arch_kmap_local_high_get(const struct page *page) { if (IS_ENABLED(CONFIG_DEBUG_HIGHMEM) && !cache_is_vivt()) return NULL; @@ -57,7 +57,7 @@ static inline void *arch_kmap_local_high_get(struct page = *page) #define arch_kmap_local_high_get arch_kmap_local_high_get =20 #else /* ARCH_NEEDS_KMAP_HIGH_GET */ -static inline void *kmap_high_get(struct page *page) +static inline void *kmap_high_get(const struct page *page) { return NULL; } diff --git a/arch/xtensa/include/asm/highmem.h b/arch/xtensa/include/asm/hi= ghmem.h index 34b8b620e7f1..b55235f4adac 100644 --- a/arch/xtensa/include/asm/highmem.h +++ b/arch/xtensa/include/asm/highmem.h @@ -29,7 +29,7 @@ =20 #if DCACHE_WAY_SIZE > PAGE_SIZE #define get_pkmap_color get_pkmap_color -static inline int get_pkmap_color(struct page *page) +static inline int get_pkmap_color(const struct page *page) { return DCACHE_ALIAS(page_to_phys(page)); } diff --git a/include/linux/highmem-internal.h b/include/linux/highmem-inter= nal.h index 36053c3d6d64..f5fb9dc7963c 100644 --- a/include/linux/highmem-internal.h +++ b/include/linux/highmem-internal.h @@ -7,7 +7,7 @@ */ #ifdef CONFIG_KMAP_LOCAL void *__kmap_local_pfn_prot(unsigned long pfn, pgprot_t prot); -void *__kmap_local_page_prot(struct page *page, pgprot_t prot); +void *__kmap_local_page_prot(const struct page *page, pgprot_t prot); void kunmap_local_indexed(const void *vaddr); void kmap_local_fork(struct task_struct *tsk); void __kmap_local_sched_out(void); @@ -33,7 +33,7 @@ static inline void kmap_flush_tlb(unsigned long addr) { } #endif =20 void *kmap_high(struct page *page); -void kunmap_high(struct page *page); +void kunmap_high(const struct page *page); void __kmap_flush_unused(void); struct page *__kmap_to_page(void *addr); =20 @@ -50,7 +50,7 @@ static inline void *kmap(struct page *page) return addr; } =20 -static inline void kunmap(struct page *page) +static inline void kunmap(const struct page *page) { might_sleep(); if (!PageHighMem(page)) @@ -68,12 +68,12 @@ static inline void kmap_flush_unused(void) __kmap_flush_unused(); } =20 -static inline void *kmap_local_page(struct page *page) +static inline void *kmap_local_page(const struct page *page) { return __kmap_local_page_prot(page, kmap_prot); } =20 -static inline void *kmap_local_page_try_from_panic(struct page *page) +static inline void *kmap_local_page_try_from_panic(const struct page *page) { if (!PageHighMem(page)) return page_address(page); @@ -81,13 +81,13 @@ static inline void *kmap_local_page_try_from_panic(stru= ct page *page) return NULL; } =20 -static inline void *kmap_local_folio(struct folio *folio, size_t offset) +static inline void *kmap_local_folio(const struct folio *folio, size_t off= set) { - struct page *page =3D folio_page(folio, offset / PAGE_SIZE); + const struct page *page =3D folio_page(folio, offset / PAGE_SIZE); return __kmap_local_page_prot(page, kmap_prot) + offset % PAGE_SIZE; } =20 -static inline void *kmap_local_page_prot(struct page *page, pgprot_t prot) +static inline void *kmap_local_page_prot(const struct page *page, pgprot_t= prot) { return __kmap_local_page_prot(page, prot); } @@ -102,7 +102,7 @@ static inline void __kunmap_local(const void *vaddr) kunmap_local_indexed(vaddr); } =20 -static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot) +static inline void *kmap_atomic_prot(const struct page *page, pgprot_t pro= t) { if (IS_ENABLED(CONFIG_PREEMPT_RT)) migrate_disable(); @@ -113,7 +113,7 @@ static inline void *kmap_atomic_prot(struct page *page,= pgprot_t prot) return __kmap_local_page_prot(page, prot); } =20 -static inline void *kmap_atomic(struct page *page) +static inline void *kmap_atomic(const struct page *page) { return kmap_atomic_prot(page, kmap_prot); } @@ -173,17 +173,17 @@ static inline void *kmap(struct page *page) return page_address(page); } =20 -static inline void kunmap_high(struct page *page) { } +static inline void kunmap_high(const struct page *page) { } static inline void kmap_flush_unused(void) { } =20 -static inline void kunmap(struct page *page) +static inline void kunmap(const struct page *page) { #ifdef ARCH_HAS_FLUSH_ON_KUNMAP kunmap_flush_on_unmap(page_address(page)); #endif } =20 -static inline void *kmap_local_page(struct page *page) +static inline void *kmap_local_page(const struct page *page) { return page_address(page); } @@ -193,12 +193,12 @@ static inline void *kmap_local_page_try_from_panic(st= ruct page *page) return page_address(page); } =20 -static inline void *kmap_local_folio(struct folio *folio, size_t offset) +static inline void *kmap_local_folio(const struct folio *folio, size_t off= set) { return folio_address(folio) + offset; } =20 -static inline void *kmap_local_page_prot(struct page *page, pgprot_t prot) +static inline void *kmap_local_page_prot(const struct page *page, pgprot_t= prot) { return kmap_local_page(page); } @@ -215,7 +215,7 @@ static inline void __kunmap_local(const void *addr) #endif } =20 -static inline void *kmap_atomic(struct page *page) +static inline void *kmap_atomic(const struct page *page) { if (IS_ENABLED(CONFIG_PREEMPT_RT)) migrate_disable(); @@ -225,7 +225,7 @@ static inline void *kmap_atomic(struct page *page) return page_address(page); } =20 -static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot) +static inline void *kmap_atomic_prot(const struct page *page, pgprot_t pro= t) { return kmap_atomic(page); } diff --git a/include/linux/highmem.h b/include/linux/highmem.h index 6234f316468c..105cc4c00cc3 100644 --- a/include/linux/highmem.h +++ b/include/linux/highmem.h @@ -43,7 +43,7 @@ static inline void *kmap(struct page *page); * Counterpart to kmap(). A NOOP for CONFIG_HIGHMEM=3Dn and for mappings of * pages in the low memory area. */ -static inline void kunmap(struct page *page); +static inline void kunmap(const struct page *page); =20 /** * kmap_to_page - Get the page for a kmap'ed address @@ -93,7 +93,7 @@ static inline void kmap_flush_unused(void); * disabling migration in order to keep the virtual address stable across * preemption. No caller of kmap_local_page() can rely on this side effect. */ -static inline void *kmap_local_page(struct page *page); +static inline void *kmap_local_page(const struct page *page); =20 /** * kmap_local_folio - Map a page in this folio for temporary usage @@ -129,7 +129,7 @@ static inline void *kmap_local_page(struct page *page); * Context: Can be invoked from any context. * Return: The virtual address of @offset. */ -static inline void *kmap_local_folio(struct folio *folio, size_t offset); +static inline void *kmap_local_folio(const struct folio *folio, size_t off= set); =20 /** * kmap_atomic - Atomically map a page for temporary usage - Deprecated! @@ -176,7 +176,7 @@ static inline void *kmap_local_folio(struct folio *foli= o, size_t offset); * kunmap_atomic(vaddr2); * kunmap_atomic(vaddr1); */ -static inline void *kmap_atomic(struct page *page); +static inline void *kmap_atomic(const struct page *page); =20 /* Highmem related interfaces for management code */ static inline unsigned long nr_free_highpages(void); diff --git a/mm/highmem.c b/mm/highmem.c index ef3189b36cad..b5c8e4c2d5d4 100644 --- a/mm/highmem.c +++ b/mm/highmem.c @@ -61,7 +61,7 @@ static inline int kmap_local_calc_idx(int idx) /* * Determine color of virtual address where the page should be mapped. */ -static inline unsigned int get_pkmap_color(struct page *page) +static inline unsigned int get_pkmap_color(const struct page *page) { return 0; } @@ -334,7 +334,7 @@ EXPORT_SYMBOL(kmap_high); * * This can be called from any context. */ -void *kmap_high_get(struct page *page) +void *kmap_high_get(const struct page *page) { unsigned long vaddr, flags; =20 @@ -356,7 +356,7 @@ void *kmap_high_get(struct page *page) * If ARCH_NEEDS_KMAP_HIGH_GET is not defined then this may be called * only from user context. */ -void kunmap_high(struct page *page) +void kunmap_high(const struct page *page) { unsigned long vaddr; unsigned long nr; @@ -508,7 +508,7 @@ static inline void kmap_local_idx_pop(void) #endif =20 #ifndef arch_kmap_local_high_get -static inline void *arch_kmap_local_high_get(struct page *page) +static inline void *arch_kmap_local_high_get(const struct page *page) { return NULL; } @@ -572,7 +572,7 @@ void *__kmap_local_pfn_prot(unsigned long pfn, pgprot_t= prot) } EXPORT_SYMBOL_GPL(__kmap_local_pfn_prot); =20 -void *__kmap_local_page_prot(struct page *page, pgprot_t prot) +void *__kmap_local_page_prot(const struct page *page, pgprot_t prot) { void *kmap; =20 --=20 2.47.2