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 87192C28B30 for ; Thu, 20 Mar 2025 17:51:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0D5D6280002; Thu, 20 Mar 2025 13:51:00 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 06218280001; Thu, 20 Mar 2025 13:50:59 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E1C0F280002; Thu, 20 Mar 2025 13:50:59 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id C1EEA280001 for ; Thu, 20 Mar 2025 13:50:59 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 793CFAC67B for ; Thu, 20 Mar 2025 17:51:01 +0000 (UTC) X-FDA: 83242670322.14.CFB2BAC Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.9]) by imf02.hostedemail.com (Postfix) with ESMTP id 966E980010 for ; Thu, 20 Mar 2025 17:50:58 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=csy25TKz; dmarc=pass (policy=none) header.from=intel.com; spf=none (imf02.hostedemail.com: domain of andriy.shevchenko@linux.intel.com has no SPF policy when checking 198.175.65.9) smtp.mailfrom=andriy.shevchenko@linux.intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1742493059; a=rsa-sha256; cv=none; b=ugE007ycrSDpPO5VESJWTgsgMiFHWaf3aruAFjqMEUO2tlJ58pk/6ANxpJrLQcST2AabG2 +4SOkG4NfJiQtoFc5LGZEdntgkqpD6VgeqZW5SRBC/MAR9jQ1AgB5vIJq8oATx9BktzwjY NGd+kv5dfhDDjB+rpN8dPHO4EWXtHH8= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=csy25TKz; dmarc=pass (policy=none) header.from=intel.com; spf=none (imf02.hostedemail.com: domain of andriy.shevchenko@linux.intel.com has no SPF policy when checking 198.175.65.9) smtp.mailfrom=andriy.shevchenko@linux.intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1742493059; 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=XoB0jAPZuQsvfqjrasE3j5F4UFxKxLLJqO0n6eUwlC4=; b=48mVV5JYnb8kH3N2KG5TZAXfvoeVvs7OXD+kvqVJUUkJDJPT+dxuPdDeN6zSa/bNQsMCd9 GC3YMWvv/m4zXEm4Nd0tWvvjYdmcUjmBpUOLbyMeZQDhvmdvdKt5eEq5wWhXMd2lnjEv9X VZRivqvqFN2j6O6XgJNhNOnl0lmilOU= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1742493059; x=1774029059; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=cea3vmsVkjuO2XwGRUt+ahnW8RAvoY9Qk5TkREX0e2E=; b=csy25TKzzdLPb9Jk8AiYYBRq6NJwgRpSZvUixGQ75i45Q4W5QJGlNZLE LlYrBLhC46beH4hO832vZl/nb7Damr5R8OSkDiBOpRQt0oAua43M5uMrv r/r05LsNww+uYhNBZoirpcXlD15fojXOdlMwerBNsPB8aNFwgeNRbvX62 JpmYIu+mu3i6kb8OyQOoFNWTZ0Cf6ryQtNQ30f3JahbX1ikfBhJ38WbtR X6Bf50tXNOJYCjxY5P1QRV2ldItb2IuWpy3Oxkoev8JwPBAIaYUkMoLis DOvFL71PklsG14aItpFJ7Ft46gY1yWZeTpI/BKKlrhBhorlq4RlltGsYI w==; X-CSE-ConnectionGUID: AmlMMUZNSfKa37WL5ibSKA== X-CSE-MsgGUID: 5/fNqKa2Qo21ZB4KjbVcAw== X-IronPort-AV: E=McAfee;i="6700,10204,11379"; a="66204446" X-IronPort-AV: E=Sophos;i="6.14,262,1736841600"; d="scan'208";a="66204446" Received: from fmviesa001.fm.intel.com ([10.60.135.141]) by orvoesa101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Mar 2025 10:50:57 -0700 X-CSE-ConnectionGUID: JydCvEvfSJujt0UDk44Flw== X-CSE-MsgGUID: TpYanpyeR/CHZ/RImw0Hgw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,262,1736841600"; d="scan'208";a="154163594" Received: from smile.fi.intel.com ([10.237.72.58]) by fmviesa001.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Mar 2025 10:50:44 -0700 Received: from andy by smile.fi.intel.com with local (Exim 4.98) (envelope-from ) id 1tvK2Q-00000004IWz-3yfN; Thu, 20 Mar 2025 19:50:38 +0200 Date: Thu, 20 Mar 2025 19:50:38 +0200 From: Andy Shevchenko To: Pasha Tatashin Cc: changyuanl@google.com, graf@amazon.com, rppt@kernel.org, rientjes@google.com, corbet@lwn.net, rdunlap@infradead.org, ilpo.jarvinen@linux.intel.com, kanie@linux.alibaba.com, ojeda@kernel.org, aliceryhl@google.com, masahiroy@kernel.org, akpm@linux-foundation.org, tj@kernel.org, yoann.congal@smile.fr, mmaurer@google.com, roman.gushchin@linux.dev, chenridong@huawei.com, axboe@kernel.dk, mark.rutland@arm.com, jannh@google.com, vincent.guittot@linaro.org, hannes@cmpxchg.org, dan.j.williams@intel.com, david@redhat.com, joel.granados@kernel.org, rostedt@goodmis.org, anna.schumaker@oracle.com, song@kernel.org, zhangguopeng@kylinos.cn, linux@weissschuh.net, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, gregkh@linuxfoundation.org, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, rafael@kernel.org, dakr@kernel.org, bartosz.golaszewski@linaro.org, cw00.choi@samsung.com, myungjoo.ham@samsung.com, yesanishhere@gmail.com, Jonathan.Cameron@huawei.com, quic_zijuhu@quicinc.com, aleksander.lobakin@intel.com, ira.weiny@intel.com, leon@kernel.org, lukas@wunner.de, bhelgaas@google.com, wagi@kernel.org, djeffery@redhat.com, stuart.w.hayes@gmail.com, jgowans@amazon.com, jgg@nvidia.com Subject: Re: [RFC v1 1/3] luo: Live Update Orchestrator Message-ID: References: <20250320024011.2995837-1-pasha.tatashin@soleen.com> <20250320024011.2995837-2-pasha.tatashin@soleen.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo X-Rspamd-Server: rspam07 X-Rspam-User: X-Stat-Signature: p9yq1uhyqanb6fm8jhnbz5au1tfiqgp8 X-Rspamd-Queue-Id: 966E980010 X-HE-Tag: 1742493058-557990 X-HE-Meta: U2FsdGVkX1+2z2O5+jcCiOz/R9MsVqlllfuVbuFK5eQ4epREgyoA3ArQKbO9tyDDnL9bkdwvb3kB/ydbgimox1lC1G6LtS7u6LvsxP7kONO8zj31L0IeKFxvr7ReB9jY9xcAsyFcgdPD7fwvniCsbxx1YQi6ZpDq/ySpsSA8P6dRtNtCW9ih1SXUEAffAN7pyaURHv1hKMwp7eHdJ9qtMnfst9V+QQzZBYiEEFIYHZKTqiZsvXL65tOQtRIdsGntfEij+RyPbAOJ+uVoSXjkou3tMMK5Yw0CFqoNGeXunLaj43oooTdaYjlLz4kpfSr6eUcDb+DuGJKamn825cEpMxb9QppI6KaCt3H6v6kMKieuWiy0Rp6pXX13MMel87SYuDjIiB6IWRJnehJm4U+wegGsseMHDXfva5j/QxvqRgrtHTogtcOzAuf7dlWy782mT+mpCT4IzZuYPU7c9FH7PE/j7JojWrnc7gssZ1FUZ++PTI4SdRJ9lpnnh7jQYW8xKfsUKf21SDQhU4zVNakmz32A+RSfgfhgDcOC+qtSYhpLdw51GsKzL8JIIbERPC7Ih4xEV52wyUm/UHn+OG51SOl6ywjekhRjatGEKf/s6OM+jLOjIDwYg6vsYbTZ/DA59aCxYZF3X9vLaQbK6IkzBmldzGRYYpfDoP9DYResifx27NMJRVR1fa+PNLAeL+MrbxfOXdjM3klm0CWIsqs0Vsh5rDw15jyQL1KfVmxlH+3zUMHnrAYiVUI0EwGefmCK69zO2Nh84t/tzpDHvpgmnr7q/7gp1uN5yWnyNoZuG0aOv+RQHw0Tr8BJEvZiMw/JdJI5hzYTHUgUQa1AF47xm8fYIbIIX+S+9j5DphNYzWIqjOFi0+7NbL05aovEtYuPAR8YDS7c/j3M2C6ESLnwm9LrJ8Ae//kgid0GrV6a0lJhafJ5BpUY9DBymy5mCw0iadLe0VdvPBjsw+iTnwX TXH7mF1y ksp3UQfIPDVaiatWM3pRPR5zYyzIapm1htAUyCGNAYAARzQiOwQJ5ece0m5+xXQ8M9GNzje0zhI5M09AjPOKX2R1AvQoIxU+GWwKf6pj1+56SAEXbvt0GiNUc5dVrciP6xljGFUsirKMoGyunt8ce/TMnaC8P+N9zKp9Ioy9TGz0JEZKJGxbdl5DT6fhzI8QygxNIE2jgreAhw4kd2NlajsoqJ/o843H2nPntqgNAxJMv8gOsS0I1DZrvRim3bq+n1B3EimOh8u8F0SUzK1mM8JSoyA/EFyNkNP32ui5Keytvk3qxgY8gcFFIDACdMNS8Mn+uRDC6IVrKATecCeg7zs6bobwtbCeIGmCZaHXWhg+0IRVzVTN2bvCo5j6l9Kmms0kG 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 Thu, Mar 20, 2025 at 12:35:20PM -0400, Pasha Tatashin wrote: > On Thu, Mar 20, 2025 at 9:40 AM Andy Shevchenko > wrote: > > On Thu, Mar 20, 2025 at 02:40:09AM +0000, Pasha Tatashin wrote: ... > > > +#ifndef _LINUX_LIVEUPDATE_H > > > +#define _LINUX_LIVEUPDATE_H > > > > > +#include > > > +#include > > > > This is semi-random list of inclusions. Try to follow IWYU principle. > > See below. > > I will remove But you need to add something more... ... > > > +bool liveupdate_state_updated(void); > > > > Where bool is defined? > > in kernel/liveupdate.c Nope, I meant where the type is defined. It is IIRC in types.h which needs to be included. ... > > > + if (kstrtol(buf, 0, &val) < 0) > > > + return -EINVAL; > > > > Shadower error code. > > In this case it is appropriate, we do not case why kstrtol() could not > be converted into an appropriate integer, all we care is that the > input was invalid, and that what we return back to user. The kstrtox() may give different error codes. User may want to know more about what's wrong with the input. Shadowed error codes are discouraged and should be explained. > > > + if (val != 1 && val != 0) > > > + return -EINVAL; > > > > What's wrong with using kstrtobool() from the beginning? > > It makes the input less defined, here we only allow '1' or '0', > kstrtobool() allows almost anything. But kstrtobool() is the interface for boolean input. You may document only 0 and 1 and don't tell people to use anything else. ABI documentation should be clear, that's it. ... > > > +EXPORT_SYMBOL_GPL(liveupdate_state_normal); > > > > No namespace? > > Namespace is 'liveupdate_', all public interfaces have this prefix, > private functions are prefixed with luo_ where it makes sense. No, I'm talking about export namespace. Why does the entire kernel need these APIs? -- With Best Regards, Andy Shevchenko