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 36FAAE77188 for ; Fri, 20 Dec 2024 16:37:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BC5946B0096; Fri, 20 Dec 2024 11:37:55 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B4CC96B00A0; Fri, 20 Dec 2024 11:37:55 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9C5E96B00A3; Fri, 20 Dec 2024 11:37:55 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 7CD046B0096 for ; Fri, 20 Dec 2024 11:37:55 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 07A14AF30A for ; Fri, 20 Dec 2024 16:37:55 +0000 (UTC) X-FDA: 82915892472.19.235E274 Received: from mail-qt1-f181.google.com (mail-qt1-f181.google.com [209.85.160.181]) by imf09.hostedemail.com (Postfix) with ESMTP id 6C26F14001A for ; Fri, 20 Dec 2024 16:37:29 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=gourry.net header.s=google header.b=OzlkK+41; spf=pass (imf09.hostedemail.com: domain of gourry@gourry.net designates 209.85.160.181 as permitted sender) smtp.mailfrom=gourry@gourry.net; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1734712650; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=laF/QqZEahoY9wsGZQOHSsmlVTjfpbxlOi00zrkPKEU=; b=5Z4puALIJQrw7t8hyZ4AFKw5jAEtFk7Mg5b1NqcSa6eDsm8W5yWNCEDN5RwaQbffhnsWh8 1XtRUns4lVUwdrjyaJ2eQTgSSMGeClNZdIdzTZGHtO8DuJx+XihBZT8n+VV+RB77Lp9u+W x6jfw9UL1mYdCznGsfIwDp7UVvzSOzg= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1734712650; a=rsa-sha256; cv=none; b=KSFPgXbJZB1j/c4H3qvH/uVSQRt44AsJI9gJrONign/yRvVHaXQlw73p5FpsJuTF7mSWOm bGwRnALaMSDKnWQtY7pMYd1PXkpne38W0lw0ru4nfsoQIwGO6YxNanp3FmG2sKgFEY8iUU sqZtgwSo0mhxbR5/eTBgBtAN1tdKaEU= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=gourry.net header.s=google header.b=OzlkK+41; spf=pass (imf09.hostedemail.com: domain of gourry@gourry.net designates 209.85.160.181 as permitted sender) smtp.mailfrom=gourry@gourry.net; dmarc=none Received: by mail-qt1-f181.google.com with SMTP id d75a77b69052e-46677ef6910so20941151cf.2 for ; Fri, 20 Dec 2024 08:37:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gourry.net; s=google; t=1734712672; x=1735317472; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=laF/QqZEahoY9wsGZQOHSsmlVTjfpbxlOi00zrkPKEU=; b=OzlkK+41zZQZ88DNuNo90W5zFyUh0juMrEPSJgT2yMqUbFwgb99TklI1UsdBuXerMv f4hFh+zee/D+A8padwI4pCUVJrL/HA1CJgjwl0khC3IXckTVYJ6rvtLqOrPAEbm6MLmW zWcXqKs/EJME2iKpXTQBzmErr+KpWJGBe7bnCU5Q7CfTC6Y9YVkffyDR4WV/DVl1fBNn Q+fI10IVaZGQ9O1vK5hgrAdawD3//o4zHcV0yT5kyqNrIK8CuYv13qFGRXavimA7/GK9 HO0kgjUHwO4m7CAz2b9dtqULnreqJga9H+0OGRxhcsQuX6uRj15pp6J4UxB7TAh2NxBl FUQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734712672; x=1735317472; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=laF/QqZEahoY9wsGZQOHSsmlVTjfpbxlOi00zrkPKEU=; b=lXmwpGP86O2UyyFpgTIaPcF+UflBZnAYYgw2iCFdnXLJAeliwVMSxz2c425n4Y33yS zHn69XnEugsyVxJ585RWoxgE1rsTexTcDQ90NsVz9eEm/KPyBcnAlYc3Id05ihCjdAKk z7kgp1axwr2nmVF/VW8dn6c/z6RMrRi7qPDwpfvo3jhE3SmnFP4/FAdpAUFyb3LkNYf8 Jwfq1eULkMwsPvZMwjnBfM40RYjA75SmfvmIHVikSbQm1k/cgMLGta0VNOMBI70SvYai 8YWFWnfpksnKeg7hsmxzJfJCFzYurPZk57AYso0GWLtbsOkIYWWc28lN0Pms0rY1luf+ 0GrA== X-Forwarded-Encrypted: i=1; AJvYcCX+Y6LKB9Vk7yHmw4EY1VnhqdGrLkUR2ZYbOYQZgdLHCs1WXk/V/K+JfrPcv8qaSobiBr5s5qgKRA==@kvack.org X-Gm-Message-State: AOJu0Yw8BxBPZVYESe+zib7zStYqvbRd3gJNOciztWWbsbTaTCr5OnMG Bl6kwH3SvN0s2FqOdBhdvEWHRQG13m/FhYlKqzg62Bv5XsvwINq2mTdfYsfWQ7A= X-Gm-Gg: ASbGncsAjyW+G8Ds6HbrFUCwXZhDK9qUt3wLyNwPBTrHyVF3WboATXLb4otzMDxO4ln 71GyGbAX80XnPjesJ7/GKna/T1m24PND8Cq5odXRlnn4yqxI//MhwcTVyPez/RX6YxPO6cqLZWu +Ro7wCHL1YyylQB5nZhb151tW05MMCXSbhi3r6cbL2Amr/JjkcHm7vXw6Ji33ink2VZa7x5RZF+ 70pAYAMnSWJndkQj1reiOnMCXrtBlqeGYpPlqAB9Svnhz/rBa6JolmZkwHRlzMdJsbjKvbrdhGY 3xU3+4PZ6AswC5Gfk0hekpkNn4874XT9XU0bgIbd/UYWA7R6+Pio2oY= X-Google-Smtp-Source: AGHT+IGpjIQEBEwxGVOlc03pO5F/xKnbFd9pGtCASJm1ksKXR+7b49PN1VR9M878S3yJnpFd6rvqBQ== X-Received: by 2002:ac8:5f87:0:b0:467:4b94:cfaf with SMTP id d75a77b69052e-46a4a9b81d1mr50720151cf.51.1734712671894; Fri, 20 Dec 2024 08:37:51 -0800 (PST) Received: from gourry-fedora-PF4VCD3F (pool-173-79-56-208.washdc.fios.verizon.net. [173.79.56.208]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-46a3e64cb04sm18255711cf.8.2024.12.20.08.37.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Dec 2024 08:37:51 -0800 (PST) From: Gregory Price X-Google-Original-From: Gregory Price Date: Fri, 20 Dec 2024 11:37:49 -0500 To: David Hildenbrand Cc: Gregory Price , linux-mm@kvack.org, linux-kernel@kvack.org, osalvador@suse.de, gregkh@linuxfoundation.org, rafael@kernel.org, akpm@linux-foundation.org Subject: Re: [PATCH] mm: add build-time option to set hotplug default type Message-ID: References: <20241220144518.206208-1-gourry@gourry.net> <3775fe9c-460e-4b31-9d5c-068a1f685513@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3775fe9c-460e-4b31-9d5c-068a1f685513@redhat.com> X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 6C26F14001A X-Stat-Signature: 1worqmu3tum94mu41fwkuxe3pnk68qb4 X-Rspam-User: X-HE-Tag: 1734712649-95228 X-HE-Meta: U2FsdGVkX1+y8oKUkqF9DOnxJj+7lKgQaOUb07PKTNjVxgU12iCriY9N6vT3mLtTmosOCFEOcu2WTMjenftjHIZ2K+cse6S5T68xLfzgWbHEPix/Eou2zwO/5sVmN/xH7iX3stsMA9XRCfylUIMiv+pXR5UbHubtT8Islu/PwvvCULqKg4YrccTJ3AuCGeJLMrUtWl4wj8PE8Y1CPZqIjVOKB/IiAAMu76ccVNaNVoynYpr3mExnLI/alP+E1YdngYqzY5HmqQ0/W7GJIDWaqQZZWYzJxBS4TQNtVBx9vHpLhFxCrNxMw6iAuKI8NEU1S28fT1iiGJYaQQ1IitOPWeo13REWBXLQjICUG4lwUhu7JPpm9uQsUf5DIwAYjbv8oWbFSBp0akyU3rFJpmuUSf52099wvjJ138SVsy8QCzM/gwvuRmJ5Hp2WWqDKK8myW60G1Ytj62EPpY3hmJvEeQ+N1EzkvXsBlFL1K01/JV0fnNNu9XPG6A+N5DWk5LIp9ITLhy2+DhfYOb7HWXxrxRYCFNFQCtCPNgKWkSVGohJ1QTc3hSbMQiecZazXafVVSyQhK5CTH/LxugH9Z632TMaxyZ1pkpFf8lHV1QUWOgiMMSBZ/wh8kU1h0qxcC7yvuA8ZmjoRvuplB0sXW3AvVY35eeSninYnr0yWclhNPtyJ1Pvk8svyXczXHryBi0Gqj0bPMWM7mfkpnQYwnbT1kkiFG2re8mwd+HRrbJoUKSJpwdgFOvg477FhYGNOoJdNlklAOgplUVgH5/uggbQ2FF+XMqDf+qJIXFNXcMpR7n61bsZon02DvR/ao6cVo569HRnCu8XmOol/GO5efhgcPIIa1N9F0H1w9GBSe2d3emiMpKFauDdQHxuhazmGEIXv55J5IIdaVFJYbmjgEqsHynBB0tP3K3xSlDS29kmuyCLsI0cqm5XuM44nQ3WxtwQ1NAWSpJ3VoZupo2WLFrj Q3ie6dv+ ScN01SauQk9rpPFMuWdCpBUi89FuD3DxPvSbduFE/ZNonO5VA8pobfNyB3rHLB1Y3SCPZ+MWLAUNx3Jl4OK+C2ftSyFGwjw4HZzehQMMs4vTtX8HVIDoXcjNBxQPW3P8rLFVFSk7CF3mvvwn226XIpQgItN3m3df8SgQ1IW1rTeRy7WcX/+ZTufpR1TzvaFy9bVwx3pDCI81/iIff4+SITwd0nLqc8ZwEoiKdxeNbp2IXIhP/3yNLrzlaP3NhdQORPfGXYqOWAf1oww9eIlt1R/GE+T+kfQJa25rj5MgbW46tkUGl2n6XoWf87vqLd8KyOfgfkLDOLXV7SKw= X-Bogosity: Ham, tests=bogofilter, spamicity=0.116044, 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 Fri, Dec 20, 2024 at 05:04:42PM +0100, David Hildenbrand wrote: > On 20.12.24 15:45, Gregory Price wrote: > > +extern int memhp_default_type(void); > > +extern void memhp_set_default_type(int online_type); > > Please call these "default_online_type". Further keep the "mhp" terminology, > it's more commonly used. We cannot rename the "memhp_default_state" > parameter name unfortunately. so mhp_default_online_type() and mhp_set_default_online_type() ack. > > +config MEMHP_DEFAULT_TYPE > > + string > > + default "online" if MEMHP_DEFAULT_TYPE_NORMAL > > + default "online_movable" if MEMHP_DEFAULT_TYPE_MOVABLE > > + default "offline" > > + > > Could we get rid of CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE and simply have > all three types as choices? normal/movable/offline? > Obviously doable, wasn't sure what the consensus was on changing or removing build options, So I tried for the least disruptive. summarizing: - MEMORY_HOTPLUG_DEFAULT_ONLINE + MEMHP_DEFAULT_ONLINE_TYPE_OFFLINE + MEMHP_DEFAULT_ONLINE_TYPE_NORMAL + MEMHP_DEFAULT_ONLINE_TYPE_MOVABLE + MEMHP_DEFAULT_ONLINE_TYPE = (offline|online|movable) > > +int memhp_default_type(void) > > +{ > > + int type; > > + > > + if (mhp_default_online_type >= 0) > > + return mhp_default_online_type; > > + > > + type = mhp_online_type_from_str(CONFIG_MEMHP_DEFAULT_TYPE); > > + if (type < 0) > > + type = MMOP_OFFLINE; > > How could that ever happen? It shouldn't unless someone does something silly like MEMHP_DEFAULT_ONLINE_TYPE="i have no idea what i'm doing" I just tend towards defensive programming. > It's a bit weird that we are parsing strings > when we can just decide that at compile-time using IS_ENABLED() etc? > I tried to reuse the existing logic attached to the sysfs entry controlling the same thing. I wasn't sure how to deal with the fact that MEMHP_DEFAULT_ONLINE_TYPE could be one of three values and did not think encoding MMOP_OFFLINE/ONLINE/MOVABLE into the config was a good idea. If you have another suggestion, I'm open Will do the renames and rip out CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE and submit a v2. ~Gregory