From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 85549D2E9E2 for ; Mon, 11 Nov 2024 12:12:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B1D006B007B; Mon, 11 Nov 2024 07:12:32 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id ACCD56B0083; Mon, 11 Nov 2024 07:12:32 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9460B6B0085; Mon, 11 Nov 2024 07:12:32 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 777786B007B for ; Mon, 11 Nov 2024 07:12:32 -0500 (EST) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 2B4E9161918 for ; Mon, 11 Nov 2024 12:12:32 +0000 (UTC) X-FDA: 82773701724.28.C803FE6 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130]) by imf13.hostedemail.com (Postfix) with ESMTP id 14E4720009 for ; Mon, 11 Nov 2024 12:11:47 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=Ok8U02Fv; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=j2QD2NXf; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=Ok8U02Fv; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=j2QD2NXf; dmarc=none; spf=pass (imf13.hostedemail.com: domain of vbabka@suse.cz designates 195.135.223.130 as permitted sender) smtp.mailfrom=vbabka@suse.cz ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1731327088; a=rsa-sha256; cv=none; b=Zrl+tOKR3XMkhRXWUzo/mfDzPycK2PM67RxXRV0MaYso6EcdrnQccUHT7vwZ1z+LJtQZE/ GhQVdArBne7LkHngqvruxDraryiG/BEHTLi9X9htx/S8aoh5O8bZEC/X1YYEvgGytYTIMh sPivWTIHu9e3ZJOlc6scGf7N3VRL2+o= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=Ok8U02Fv; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=j2QD2NXf; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=Ok8U02Fv; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=j2QD2NXf; dmarc=none; spf=pass (imf13.hostedemail.com: domain of vbabka@suse.cz designates 195.135.223.130 as permitted sender) smtp.mailfrom=vbabka@suse.cz ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1731327088; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=iANPCmTdrG0dfddLD/86nECIn88ibsqSoXP4uV8W0vU=; b=dCmS+QST72gCHNIbZpgtcCUy+ZrugON06r2YrV7f73LUNQnrrxRU5urCltjCKQhfilWID/ NZv/RpHWJQJqDUXRU3ig3TO4liO6JqseY+C6qAIFfV6TBAKslAagg86MmeGs/He7ywLLL/ 63J/PPNtVm2Tc2RFsC13dWU4CEkvvgU= Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 00DAA219A1; Mon, 11 Nov 2024 12:12:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1731327148; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iANPCmTdrG0dfddLD/86nECIn88ibsqSoXP4uV8W0vU=; b=Ok8U02Fvt0EU9i9W5t0LJJfjpgxj3N3vYS/lMurPRF+CO64VmWLVaQh52hGZ5/bxJ77RVi ZUJGYmyk7rmeRok10pV6QqnDmHvUlTDYXZorzD1Ntw96EBRRYDHaQGlLYFcHIPulUrHdK5 HAA6nPdMD0ZmsbSRhl/QliSqO2u8lEs= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1731327148; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iANPCmTdrG0dfddLD/86nECIn88ibsqSoXP4uV8W0vU=; b=j2QD2NXf9iM6A3lDT0znetsKbwYNYmvFMFBtxvge+XwxrwBvEJ5ESvs6RQp1PCXkHb/5U7 2okHicBRuUxbSHBQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1731327148; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iANPCmTdrG0dfddLD/86nECIn88ibsqSoXP4uV8W0vU=; b=Ok8U02Fvt0EU9i9W5t0LJJfjpgxj3N3vYS/lMurPRF+CO64VmWLVaQh52hGZ5/bxJ77RVi ZUJGYmyk7rmeRok10pV6QqnDmHvUlTDYXZorzD1Ntw96EBRRYDHaQGlLYFcHIPulUrHdK5 HAA6nPdMD0ZmsbSRhl/QliSqO2u8lEs= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1731327148; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iANPCmTdrG0dfddLD/86nECIn88ibsqSoXP4uV8W0vU=; b=j2QD2NXf9iM6A3lDT0znetsKbwYNYmvFMFBtxvge+XwxrwBvEJ5ESvs6RQp1PCXkHb/5U7 2okHicBRuUxbSHBQ== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 95C9B13301; Mon, 11 Nov 2024 12:12:27 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id zH8/JKv0MWdjOgAAD6G6ig (envelope-from ); Mon, 11 Nov 2024 12:12:27 +0000 Message-ID: <440b2682-dbfb-4a5c-927c-2397413a7f9c@suse.cz> Date: Mon, 11 Nov 2024 13:12:27 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH v3 1/6] arch: introduce set_direct_map_valid_noflush() Content-Language: en-US To: David Hildenbrand , Patrick Roy , tabba@google.com, quic_eberman@quicinc.com, seanjc@google.com, pbonzini@redhat.com, jthoughton@google.com, ackerleytng@google.com, vannapurve@google.com, rppt@kernel.org Cc: graf@amazon.com, jgowans@amazon.com, derekmn@amazon.com, kalyazin@amazon.com, xmarcalx@amazon.com, linux-mm@kvack.org, corbet@lwn.net, catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, hca@linux.ibm.com, gor@linux.ibm.com, agordeev@linux.ibm.com, borntraeger@linux.ibm.com, svens@linux.ibm.com, gerald.schaefer@linux.ibm.com, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org, peterz@infradead.org, rostedt@goodmis.org, mhiramat@kernel.org, mathieu.desnoyers@efficios.com, shuah@kernel.org, kvm@vger.kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org References: <20241030134912.515725-1-roypat@amazon.co.uk> <20241030134912.515725-2-roypat@amazon.co.uk> From: Vlastimil Babka In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspamd-Action: no action X-Rspam-User: X-Rspamd-Queue-Id: 14E4720009 X-Rspamd-Server: rspam11 X-Stat-Signature: s3oc44zog8jwrnrsatiyp7erq7qm888o X-HE-Tag: 1731327107-429636 X-HE-Meta: U2FsdGVkX1/W+m/4ztg2RUufIBoD5B7saiQ9C9+5E/LUuRB9T+Z0mXJe+iWbU17bS8PojfnpMszuat1UNiLvQJyT4jHSxzDPoPlBIfluzru35/Y1UnxKY0cASf2C9cehcsOvu5yIZVMV0uhE2TX6lrD00MN1FtEiuc7sOaRC9qxWG559M53rQC4pTRE2lCNK0b71F90ssTTRTrETX/ZCyMpaz4guSMRl/mZaSIUcbT+iXfQx2urwy3ygM8kn1u3VgjNnRRgRuP+415u/nYgoj+U9BJkJQzjAcSXEHFRjOnzszM1vvjLQOr/R9lyuaBBwo4dI1HqrWG5aYd7e1xzKmLLa77Qv/7Fk48qRDye36O27Z34eeapH8T7SJlCTtMTfB95V3tvlSFof2+i65+MxxuH3E4KuSBD7SjiitlCXyzJ5NCIVE58TKrEVdGUnrxiTDHqQ0DjDl3SZvvMPXiOThlWvVqkE2VU3Ya3jijs1tzQakE8fhXc/s0d2ZB1m8Ddnu1mHj7+4cYUPBrWWfaRVAVXUsZB+Tc50jEkDiUlmSLyC7nHVFTII+bkrw/AgH20uTs3iBHNPJGliglPNCSv7OmEKJZ4aFZU5FxrC+7ieZsjM3nXwj5VCW7dRrD7y95gT+ZCtwpVn/ZiPyFWOWdx+jPDPsSxWx/yVL1QDMwglubZQVldCVC0Ci1k6GAch3qp/b1Ev6WcALhXTswruz3BvmfqvbJY7Y0YFnHtjjMSnfxRvuLEXKC77I2xX2N6pAgg4CDHlje2xmo8UOtGzW45pr+CyJQ0OOG+8YtcP6QyBDNN0+Z+iBVJiEMJH1eSWViCyDMcEj8P9vUpC2V8q0qh8oPY+3uvE83DihHHiObj0kS/qWVM917eO6NYo796lE2dKBt2jaEAE+fEUFcUAblfYdN1CsB62VUnzRK8L9IpULA1pUPMbGOPmMN85iUIgM62XmeoW63b7UItKcVAGQnC fgIUTxBy lEYt+9bs4vJRfU4QXQUPXNphzOmP5u6fuWmNW2BccpQUA5BviEBDzBR+PFmVPJHEqDKRDp75Q0VPR6RgGQyPv94+8z8sdDI1QZmZmLUYgnsVbVYMuXpozG2LyrPLe8iqXbtppcKth8eQ2rFlTC0iulKp60i/Xgan9324onPL55ZzEu8Y0v1QfdJGwK1EnLMMi7OwqXai3gZx9IFUSEGf0LzwgNRxiDREufrLikUzpHkIlie3WLx0Y/PhbFnm42ywYRp5ubcIrxalLMq6hjKk8e5E4gynOQ39YsyZ/CpqgUs0TGeajIcN7pfBDvBFlKE/bs9TDPEtETRtUIOs1i1lyAj5DKoQvfZeeE+uCaRPpPT/oRXKEMq/7ZIp0WBKpjf+tmiij X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 10/31/24 10:57, David Hildenbrand wrote: > On 30.10.24 14:49, Patrick Roy wrote: >> From: "Mike Rapoport (Microsoft)" >> >> From: Mike Rapoport (Microsoft) >> >> Add an API that will allow updates of the direct/linear map for a set of >> physically contiguous pages. >> >> It will be used in the following patches. >> >> Signed-off-by: Mike Rapoport (Microsoft) >> Signed-off-by: Patrick Roy > > > [...] > >> #ifdef CONFIG_DEBUG_PAGEALLOC >> void __kernel_map_pages(struct page *page, int numpages, int enable) >> { >> diff --git a/include/linux/set_memory.h b/include/linux/set_memory.h >> index e7aec20fb44f1..3030d9245f5ac 100644 >> --- a/include/linux/set_memory.h >> +++ b/include/linux/set_memory.h >> @@ -34,6 +34,12 @@ static inline int set_direct_map_default_noflush(struct page *page) >> return 0; >> } >> >> +static inline int set_direct_map_valid_noflush(struct page *page, >> + unsigned nr, bool valid) > > I recall that "unsigned" is frowned upon; "unsigned int". > >> +{ >> + return 0; >> +} > > Can we add some kernel doc for this? > > In particular > > (a) What does it mean when we return 0? That it worked? Then, this Seems so. > dummy function looks wrong. Or this it return the That's !CONFIG_ARCH_HAS_SET_DIRECT_MAP and other functions around do it the same way. Looks like the current callers can only exist with the CONFIG_ enabled in the first place. > number of processed entries? Then we'd have a possible "int" vs. > "unsigned int" inconsistency. > > (b) What are the semantics when we fail halfway through the operation > when processing nr > 1? Is it "all or nothing"? Looking at x86 implementation it seems like it can just bail out in the middle, but then I'm not sure if it can really fail in the middle, hmm...