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 C2366C3ABB2 for ; Wed, 28 May 2025 19:13:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 451E66B007B; Wed, 28 May 2025 15:13:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3DB906B0082; Wed, 28 May 2025 15:13:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2A5036B0083; Wed, 28 May 2025 15:13:10 -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 091536B007B for ; Wed, 28 May 2025 15:13:10 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 57D68EAD43 for ; Wed, 28 May 2025 19:13:09 +0000 (UTC) X-FDA: 83493264498.25.2AF405D Received: from mail-lf1-f50.google.com (mail-lf1-f50.google.com [209.85.167.50]) by imf14.hostedemail.com (Postfix) with ESMTP id 69966100011 for ; Wed, 28 May 2025 19:13:07 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=lkHeudSW; spf=pass (imf14.hostedemail.com: domain of dmatlack@google.com designates 209.85.167.50 as permitted sender) smtp.mailfrom=dmatlack@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748459587; 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=PGDPhsmZhFPLUE0e7mKHidePUZHitNrnRQ+jNJrByps=; b=evZC1RcuXxkf588lZQiLuCvWPNahhYzFozwKyCmTTVlBwR23Tun5xKFW4ojBotaY7/iRCy FCOgBcO/KmhyUnU4DS5yD0jX764Qyysg1mGyuPszmhWcikgYTnKhLZe9ZOYUeLeMzwaVAQ HCkFfwdJ6MtuaH5hCu0aVkIWnpeoOR8= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=lkHeudSW; spf=pass (imf14.hostedemail.com: domain of dmatlack@google.com designates 209.85.167.50 as permitted sender) smtp.mailfrom=dmatlack@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748459587; a=rsa-sha256; cv=none; b=X1gjmYNXs4HICwcsT7MzvhCpUI1/rO7FX9LeVc7/FGxWrgVNjzodikWwzuj4Fxlugfb+tX pH+75zCXlqVmAeBfQg/0H9naYE/2cinN2cP0m3U0qfQOPnF7ebIXozr+tS3KpZrQMBfv43 CbrQf0wsVpuIDpaPMNOepiXt7xIPoFo= Received: by mail-lf1-f50.google.com with SMTP id 2adb3069b0e04-54afb5fcebaso94037e87.3 for ; Wed, 28 May 2025 12:13:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1748459585; x=1749064385; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=PGDPhsmZhFPLUE0e7mKHidePUZHitNrnRQ+jNJrByps=; b=lkHeudSW67CwOqGCB8r0zqWi+BK+iWc53Lpryi9xIiEFYEyP0tJVrY9DveSp+SY7vF V6FuSZJu4McLSG47x2193bN5q16KnH5sErznKBCR3Q5Pu4UWkA9OJ/hrxO7s6W7Moj0h SmgGBG3CNYOHg9Gz8NhbF64k63x9fN16TOARZfV5f0s55gKIBGFOF51laZbDFo7qOS/o Sd6hmDbiAE+FHQocva7RBHsOsyVGE5HAN2g9eSrhswXKCZxhpU7iAM3WY9PtrlLJUV3p NBgCZzrhd4kHEwGG5HPdYoCq0P/0HzZeyEH9Sgh5UdJUcrLJ/d2zHqWkhvUn5N5gHztY fsLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748459585; x=1749064385; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PGDPhsmZhFPLUE0e7mKHidePUZHitNrnRQ+jNJrByps=; b=Qg8CZTp7U770u8WB0m0ttDE2HvzwVCuj33Z2Z8w2YlkYlq3thAnUl8tL3uKTt01uZr XYnnSIBhyellx0b83Ds0ftcAv8aED459F0PhIu5E2XifG+j2LySBDajY1defQJB1sn+1 EtRoHhpW3NSXU3LNeCA+vuzRHBzcHdWkAORjaI7ckBm4nNjjQ4Mke+/N62iP0v75Ltzy qbovK6VzmzTTziNvDjTPh69GEL1GhG+2vQaVh8oD78P6Qk6v5KqTYhF7kmruYCwcjPsm kraXheQNz9izY4qtomcS2XXlSv8+croMxiVyEBTdZTrAHkRKy4Z+7AyJwh5+DXlMnnsX KqZw== X-Forwarded-Encrypted: i=1; AJvYcCWRGCgPtcgymVVJoCarxgyXt1my200RABxcMiMF2OcoAMJZyXz0zLjQh3DBoykYJKAlaJmcipNSNg==@kvack.org X-Gm-Message-State: AOJu0YxNaf3/Xf43vUrUA3twi9Z9cBbv/SUD9Xx4B+4OPr3/3po4ltco V10RFbpnfGo/vYy+2ZCImbSf/rB0gEzfsgA2z98vd5vqaRjWlSi5rYrpGOw2hIC8gk3srt7qA1O V+gaS18+/NmYj/NxCYwoBlb2Th6TXSCpodHN+M6eO X-Gm-Gg: ASbGncvixAlrrUh0hXD3ZpVn7TKwlXVT+8g5xrGfla4vTkfV7hp45/RxKjDNhtMFBW3 tOAl8ZhGPBhBlSlhLMUxW67wydhKwLHFvgJd2gWYcz+eXXs/vBZ97H5Q33lLe+ooqCLooL473Cp Miz03BZnoxgeHj0f9GkB9UdqghOrhKD/TWw3OWbhEb3RU= X-Google-Smtp-Source: AGHT+IENSrWlJkxNFY4TOuDnvof9fLD0sj9JLDZQmVPx55WZqPCCzxZDtUORACYNFiuISGW1oR25nrmY+3RgCW6ZaZk= X-Received: by 2002:a05:6512:1189:b0:553:2ee0:7720 with SMTP id 2adb3069b0e04-5532ee077e2mr1435406e87.0.1748459585117; Wed, 28 May 2025 12:13:05 -0700 (PDT) MIME-Version: 1.0 References: <20250515182322.117840-1-pasha.tatashin@soleen.com> <20250515182322.117840-7-pasha.tatashin@soleen.com> In-Reply-To: <20250515182322.117840-7-pasha.tatashin@soleen.com> From: David Matlack Date: Wed, 28 May 2025 12:12:38 -0700 X-Gm-Features: AX0GCFuTxrjiUSGmZ0OzPPrEPW0tlYNVcfu7l32SNjf8l-9qIDQ4iNLU10iGMiQ Message-ID: Subject: Re: [RFC v2 06/16] luo: luo_subsystems: add subsystem registration To: Pasha Tatashin Cc: pratyush@kernel.org, jasonmiu@google.com, graf@amazon.com, changyuanl@google.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, andriy.shevchenko@linux.intel.com, leon@kernel.org, lukas@wunner.de, bhelgaas@google.com, wagi@kernel.org, djeffery@redhat.com, stuart.w.hayes@gmail.com, ptyadav@amazon.de Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 69966100011 X-Stat-Signature: a6zc3p9absifr9ewxi68a1zoi7cdhkz9 X-Rspam-User: X-HE-Tag: 1748459587-824086 X-HE-Meta: U2FsdGVkX1/dSIUIwhcr6fVAnlAtGNsB+fCom7h25kLDcbTrCvcXZ/3jICMixdcwzKimKrq0vsMtUbnzCoCPm0Tq2jxguQzpHHkkcTfg9VHI5ohLxhf3T5RH1RTELbhTY7x1wVDPovM3g1D3lO88wcR2t6gbUdUimAwtj4GOIBXg0dTK82W8EFBP6eoozsxjw3/LSjlg3Wdn17wIUxHZ59CWCNPgKpQ8QgvwwU68DLHiXiZUtqxS04fIBcIgX266QXvfD87w0oytLLfR6pY0OXO87CVpkCt1TKs/n61MV+NHTFV5nb0bDtug3tLfVo+W4aQYg0q6no5rfI1Y0cXESX1mu8k+GNjziVQQODK6mx+JGK8cUdusRRYjSQ2e1O2/l8OsT3+DOtQT0TLnHBdEH0R6FTO31aPZJbn8WzSofrn3F4ET59oyio6b51NLpsqXnWWHFC/EaMFhONC3XAVWYUXnN8iOErtYfbKThkUMUXtyrSwyKRiPUgvE+nu1wSyczTT8bvC8w2lFoB/QyqZX3AdkPOk9KSFKjzG3NwEf7HHu8NTdNyWH0cj2JbJOJbnHs12qXj/x+V/3o/D8m6BgRwNM+gPZJOiP+YLMvW1MKJgGUenzr4Vad00wtJGzM2029LOy0uBjQjssr5sJ+PDXcpP7vHRoyiAYKXEqLyfpoQRMjvPPL2GKRMvtHwPvOE24yhPWg3+RmREwcqHuKsBzopmR9GaCdRHssnHifkh717f+CpI4PqsLE5m4hlhkCnvzaxgXRKlxAVeYDtWlH8FPn/whwWCaX1onAVdJFwtQ8JV/d5JtJS7PrFMf/lYPp1WzLflT3L7whBlXZAq8wVwAY53FE8vAvMPsgWsQjim+qthD0//rtEsVG/3UauKdjPghMX2FXIAvNZDNsQgPNeiQyLNqMMesNSMSNTfa49A/KY5fNYAGni/n7V6BW8Fe8SsIDmUrM1TF7JRzcir2HRP dptQmWe+ yZu4zhrrj/dR5c2W5+vdWnEaB6dyDSllc6+i0tvYQDQ74iaiJ45nfPx8rY4lo399sGZwXPEVGhkZOP4NpkKM3aIRrQ0iSxK0dlPLMFM8N//3S1DUe2cr/4BRkPVjtfJ2vJhLEvG2LO6FLhPcaepgEnSURFoAW7WBUZf+Jt4/FjzNYnZJNfBim+qY0ZfkIWMhrTRyZuphfIvFiBQiwT6XwsUCqDNwt+7P1Nkhy7SfqXQoN7DJIvqfvHzsMXhe5R2MvbzwAIsXjOVRaN/OJgN8zbOS/FajZc29Ch4n4j+04sIdOSuGdjC79LFU0lOI3Lx6ieSNeeIbu9xCykgxWUYwiQmEqTG0KBs8c8L47dqc/ZJe2JRVEDmUKLnMb5A== 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, May 15, 2025 at 11:23=E2=80=AFAM Pasha Tatashin wrote: > > +int liveupdate_register_subsystem(struct liveupdate_subsystem *h) > +{ > + struct liveupdate_subsystem *iter; > + int ret =3D 0; > + > + luo_state_read_enter(); > + if (!liveupdate_state_normal() && !liveupdate_state_updated()) { > + luo_state_read_exit(); > + return -EBUSY; > + } > + > + mutex_lock(&luo_subsystem_list_mutex); > + list_for_each_entry(iter, &luo_subsystems_list, list) { > + if (iter =3D=3D h) { > + pr_warn("Subsystem '%s' (%p) already registered.\= n", > + h->name, h); > + ret =3D -EEXIST; > + goto out_unlock; > + } > + > + if (!strcmp(iter->name, h->name)) { > + pr_err("Subsystem with name '%s' already register= ed.\n", > + h->name); > + ret =3D -EEXIST; > + goto out_unlock; > + } > + } > + > + INIT_LIST_HEAD(&h->list); > + list_add_tail(&h->list, &luo_subsystems_list); > + > +out_unlock: > + mutex_unlock(&luo_subsystem_list_mutex); > + luo_state_read_exit(); > + > + return ret; > +} Suggest using guard()() and scoped_guard() throughout this series instead of manual lock/unlock and up/down. That will simplify the code and reduce the chance of silly bugs where a code path misses an unlock/down.