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 880D1C6FD1F for ; Tue, 19 Mar 2024 16:33:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 204AD6B007B; Tue, 19 Mar 2024 12:33:00 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 18F016B0082; Tue, 19 Mar 2024 12:33:00 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 056416B0083; Tue, 19 Mar 2024 12:32:59 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id E98276B007B for ; Tue, 19 Mar 2024 12:32:59 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 94EA34107B for ; Tue, 19 Mar 2024 16:32:59 +0000 (UTC) X-FDA: 81914332878.18.F83547A Received: from mail-qt1-f179.google.com (mail-qt1-f179.google.com [209.85.160.179]) by imf05.hostedemail.com (Postfix) with ESMTP id A741410001E for ; Tue, 19 Mar 2024 16:32:56 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=soleen-com.20230601.gappssmtp.com header.s=20230601 header.b=QAzuAYzC; spf=pass (imf05.hostedemail.com: domain of pasha.tatashin@soleen.com designates 209.85.160.179 as permitted sender) smtp.mailfrom=pasha.tatashin@soleen.com; dmarc=pass (policy=none) header.from=soleen.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710865976; 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=Nzek8Gf7DG6ZMdD1Al+3PbmxtLzp1kN+e70/4S3zho0=; b=1tCll+m8q/xgnNQcJT0mmJe8GSquU+8Pi39OW3MdegiZhrrk6FXUzcW77C7LdddO5I+TnQ Ab7w4pNiOD60bu9W6+QnKeJRTbnYTsahT5YNh7mEX8+KJ0JTxDN69ZubZF46u1OVGNndL2 yKtQDbw32fwwcRexx2MeoTDf80t04Ww= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=soleen-com.20230601.gappssmtp.com header.s=20230601 header.b=QAzuAYzC; spf=pass (imf05.hostedemail.com: domain of pasha.tatashin@soleen.com designates 209.85.160.179 as permitted sender) smtp.mailfrom=pasha.tatashin@soleen.com; dmarc=pass (policy=none) header.from=soleen.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710865976; a=rsa-sha256; cv=none; b=GeSqOjqNEqVufzeEZRuoHnrEPufe71VFFOudsW+P3bj7QoCsz6jxFSpAmKASUPgpn4hkrb meKaksht5XrgIaXAHTIslCo5ABoNKmrMsz+t36bwSRsj75Vsv25Ggq7RVceJLiQDWtwhLv nNaOlEe+HammY1YfKD0oc89BYZ5XN88= Received: by mail-qt1-f179.google.com with SMTP id d75a77b69052e-42f2d02fbdeso25639261cf.1 for ; Tue, 19 Mar 2024 09:32:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=soleen-com.20230601.gappssmtp.com; s=20230601; t=1710865975; x=1711470775; 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=Nzek8Gf7DG6ZMdD1Al+3PbmxtLzp1kN+e70/4S3zho0=; b=QAzuAYzCiKWTcmDZNK9hhRC971qCC+wqnw/2eZzXjuJcRNv8uRPUQBy6XWNZ/fmBup 8Wirzr4ZbWrY1V1vKUiw+4ZqJu7f5eTSj8k0vTJ19JTgv8axrPmo+aVoqoDGgPW2McVy WvOcu6bEys95VhnaNpSSIExOO+osQ9uV62VSg0GNRBzKF2w75r5ArEUNMkd5GihWnmgo w3pVXbtBhYBYzVAPYLN6EFfhnFsUvZmARnrZY9yG1gLVumaJlNTMJwQWfVsCeoNH1W57 SqgKBrdqhoZSNASknKtC0XdtP+13m4MYdgTx5XnJF7JPGOJ3fP5ylnvex8Wt/s0TQ/Ip qckw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710865975; x=1711470775; 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=Nzek8Gf7DG6ZMdD1Al+3PbmxtLzp1kN+e70/4S3zho0=; b=Co9A59/d/gMdiwaHAK1Q65CjqKy99Avwk0C+X4RLOpXIxuUwODJLZkV8CWHzQ7jsq5 hlxIYemEPiAH21nTWfTkJyuoElkbHRJUqFK7px8sNQcfuPKLdIH302PoKcGATDgosKUt rMqBWzuB1CTUhFWyomGeDfEoTLYS0fSxUJ58+tZhtZDUMef+SeuphMcjRBBE2BOK0gor 9hT1Je6OCE9nfB6mTLF6oWf7oLxem+6knNxerAfFCD3vh/isZo33zWMc5vNtN9vep+kp iWUNV1isOdfRIebqWQJXjcYgfyOw4Y3aAE9/Aa8g9RMtqSd7hlLwRKEmPCnVwSIw8w9n +wIw== X-Forwarded-Encrypted: i=1; AJvYcCXLqMTR2mqePc74/ogW6rn951cbDWbIuCTKr5dyftG3F7Mc4XsMvrX8XT9mT6c8y9FCvAtwsQmBU7FyDTeci5PNjFI= X-Gm-Message-State: AOJu0YzTUZxlYqCi7Gvq3kg8IJ7kJqIZQ0W83bd43++RAC9T5TIdrnQF yscxm3iPr0zCqsd7KdhF9MeHPxxvDIxML2VPbNZ3/MEV+VU50SGLvEkz2Imcb4dJLbNgz41kzG5 pKHajbhjcsQWufAdg2qASy7k5hETzB2m48TpezA== X-Google-Smtp-Source: AGHT+IF3il8rC6AkOG+mwJ0bGCtUPSJ60cvvJqjTmASvQRVnBM9H20Un/qh1I6wqhVVsobUZyQNc5uYuSU7SYSVnows= X-Received: by 2002:a05:622a:52:b0:430:e945:b119 with SMTP id y18-20020a05622a005200b00430e945b119mr2480646qtw.43.1710865975570; Tue, 19 Mar 2024 09:32:55 -0700 (PDT) MIME-Version: 1.0 References: <20240311164638.2015063-1-pasha.tatashin@soleen.com> <20240311164638.2015063-4-pasha.tatashin@soleen.com> <1af02bc8-1b20-4508-909d-342f3b06bf78@wanadoo.fr> In-Reply-To: <1af02bc8-1b20-4508-909d-342f3b06bf78@wanadoo.fr> From: Pasha Tatashin Date: Tue, 19 Mar 2024 12:32:18 -0400 Message-ID: Subject: Re: [RFC 03/14] fork: Clean-up naming of vm_strack/vm_struct variables in vmap stacks code To: Christophe JAILLET Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, x86@kernel.org, bp@alien8.de, brauner@kernel.org, bristot@redhat.com, bsegall@google.com, dave.hansen@linux.intel.com, dianders@chromium.org, dietmar.eggemann@arm.com, eric.devolder@oracle.com, hca@linux.ibm.com, hch@infradead.org, hpa@zytor.com, jacob.jun.pan@linux.intel.com, jgg@ziepe.ca, jpoimboe@kernel.org, jroedel@suse.de, juri.lelli@redhat.com, kent.overstreet@linux.dev, kinseyho@google.com, kirill.shutemov@linux.intel.com, lstoakes@gmail.com, luto@kernel.org, mgorman@suse.de, mic@digikod.net, michael.christie@oracle.com, mingo@redhat.com, mjguzik@gmail.com, mst@redhat.com, npiggin@gmail.com, peterz@infradead.org, pmladek@suse.com, rick.p.edgecombe@intel.com, rostedt@goodmis.org, surenb@google.com, tglx@linutronix.de, urezki@gmail.com, vincent.guittot@linaro.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: A741410001E X-Rspam-User: X-Stat-Signature: jf1e8ugabr81ptc865qasg4ubguayrra X-Rspamd-Server: rspam01 X-HE-Tag: 1710865976-418390 X-HE-Meta: U2FsdGVkX1+ASmAhA80W4BbCoLqS5ds3wzeF6PPCLw3GmnHtMS+R6Km8UBPQ/xeLGisGR1Gnu7xU119EngMt/shYXj9LwluHGjW/SokQ57Pb8fpsrLG4Gn+X2Q17PfVzyOE5FX0OBD4TfGH/tv5QOJakcIV4jVBQeAMDrjQmtwt5G4Oshcg+6pNxo2kV+p/k78pLkvFbatMwWPs8xgAypuo5JyF8QLFGhjMFXTJOzLNx8y0kvGTHlZ5Zm1z5xaD9e5o8KRM67Ge0/cD/QbbyEtZtOPnQpBwl8o7kT7TDtzH6mA7UaI0q0ITO5T3YUSeg3nRTDOBC3JJ+clL1RxHT1jmHn861tc5xSAo9HceX0ug7rY15rv4R6t8NOkO501HopOkHyLG8rscfQlOHzrJyUw8qzaSWd+Dx9kr5UKGEalWPoOVKtXR1PWqvocuRdnjdett3OD3rNbS+23rggoO21IbJ9w6CS9gg8oW5OnydtnXyW7sOsIOOgNkz5fTaN948EOoB605rS78tfzu/lOx0z/HvPk7qxpAgYXVLFFnOlh8GhNRC1Fl8KigUaQkNNqfukviOAin1XjAguAdpt5LoY2gtgf5oz44eUChX1XyhPelphpJTmU2DNCqOz+nITNxGwpLS8eL1ltnlGihcTyxRsBbuF/h2cBCxwVp/cHeYtT795lA8TNkGBSx8aX1kXBYOI9cNAV7nEnT2CYKrr6DPA7t3uIlslo8bZ4QhHGTKZEq5jGkJt5YVJz4NIxmC+NsAkbV4FuPTRof24vUW0socps/wNHjRNnk84hnddT61aah+uYAv/unEWbOl6V4QUa+DwDAD4SkP5fX9vcfilE8SnXRXagqsB3WGKALa1iHMFlKBVby871aUD2VAnHN9YwwXum6Fmo8J5uDT4KDK448Z25E4uSPeL4NHRt2get2KG+NkRph/2xK69qzopDQtEYHIhzqsYi3VpkwfFaMv6Ns FIF9UJBK gF+gS8JSKR4af2GWeDGyEokmOUdzIX1uNQH8O98No60aqXODH6aYTbkAvkf3S0z4iz3iYL/UCU/I2Zv8ZcY2d6ku4ChxJQ5iCJBis3s3Gd0UdfyqaWYJMy3oLVhgcGaBspL/uGbXiI0HvXndORyongmXPKfbljI5iOSLdym7adV2dt8WXC07NgM24oU6WOTYmdS/QTDao+S+EiEAeohXb1SBjwMH61QJaAHONeGO4d81X+Gyft7eeqTiabLU8PXWXpvWDt1Tus4wz7dc3nBY5mINfdZuLOFSLRSBly74aGGnmBN5nXX1AjRdVwtvOLWjkApj3Pyx5pf8Lelh6vWIVwzaR8EKscuaPxk33DukSDkBtzKaurSds7HKusAuwS9jfje0vM9baffhRYliluuJAZfDRzWS+17GA7/KugGXbutFjHAQ= 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 Sun, Mar 17, 2024 at 10:42=E2=80=AFAM Christophe JAILLET wrote: > > Le 11/03/2024 =C3=A0 17:46, Pasha Tatashin a =C3=A9crit : > > There are two data types: "struct vm_struct" and "struct vm_stack" that > > have the same local variable names: vm_stack, or vm, or s, which makes > > code confusing to read. > > > > Change the code so the naming is consisent: > > Nit: consistent > > > > > struct vm_struct is always called vm_area > > struct vm_stack is always called vm_stack > > > > Signed-off-by: Pasha Tatashin > > --- > > kernel/fork.c | 38 ++++++++++++++++++-------------------- > > 1 file changed, 18 insertions(+), 20 deletions(-) > > > > diff --git a/kernel/fork.c b/kernel/fork.c > > index 32600bf2422a..60e812825a7a 100644 > > --- a/kernel/fork.c > > +++ b/kernel/fork.c > > @@ -192,12 +192,12 @@ struct vm_stack { > > struct vm_struct *stack_vm_area; > > }; > > > > -static bool try_release_thread_stack_to_cache(struct vm_struct *vm) > > +static bool try_release_thread_stack_to_cache(struct vm_struct *vm_are= a) > > { > > unsigned int i; > > > > for (i =3D 0; i < NR_CACHED_STACKS; i++) { > > - if (this_cpu_cmpxchg(cached_stacks[i], NULL, vm) !=3D NUL= L) > > + if (this_cpu_cmpxchg(cached_stacks[i], NULL, vm_area) != =3D NULL) > > continue; > > return true; > > } > > @@ -207,11 +207,12 @@ static bool try_release_thread_stack_to_cache(str= uct vm_struct *vm) > > static void thread_stack_free_rcu(struct rcu_head *rh) > > { > > struct vm_stack *vm_stack =3D container_of(rh, struct vm_stack, r= cu); > > + struct vm_struct *vm_area =3D vm_stack->stack_vm_area; > > > > if (try_release_thread_stack_to_cache(vm_stack->stack_vm_area)) > > return; > > > > - vfree(vm_stack); > > + vfree(vm_area->addr); > > This does not look like only a renaming of a variable. Is it? > > If no, should there be a Fixes tag and should it be detailed in the > commit description? This change is only for readability purposes. vm_stack is stored in vm_area, so vfree(vm_stack) equals to vfree(vm_area->addr), but is hard to read. I will add it to changelog. > > CJ > > > } > > > > static void thread_stack_delayed_free(struct task_struct *tsk) > > @@ -228,12 +229,12 @@ static int free_vm_stack_cache(unsigned int cpu) > > int i; > > > > for (i =3D 0; i < NR_CACHED_STACKS; i++) { > > - struct vm_struct *vm_stack =3D cached_vm_stacks[i]; > > + struct vm_struct *vm_area =3D cached_vm_stacks[i]; > > > > - if (!vm_stack) > > + if (!vm_area) > > continue; > > > > - vfree(vm_stack->addr); > > + vfree(vm_area->addr); > > cached_vm_stacks[i] =3D NULL; > > } > > > > @@ -263,32 +264,29 @@ static int memcg_charge_kernel_stack(struct vm_st= ruct *vm) > > > > static int alloc_thread_stack_node(struct task_struct *tsk, int node) > > { > > - struct vm_struct *vm; > > + struct vm_struct *vm_area; > > void *stack; > > int i; > > > > for (i =3D 0; i < NR_CACHED_STACKS; i++) { > > - struct vm_struct *s; > > - > > - s =3D this_cpu_xchg(cached_stacks[i], NULL); > > - > > - if (!s) > > + vm_area =3D this_cpu_xchg(cached_stacks[i], NULL); > > + if (!vm_area) > > continue; > > > > /* Reset stack metadata. */ > > - kasan_unpoison_range(s->addr, THREAD_SIZE); > > + kasan_unpoison_range(vm_area->addr, THREAD_SIZE); > > > > - stack =3D kasan_reset_tag(s->addr); > > + stack =3D kasan_reset_tag(vm_area->addr); > > > > /* Clear stale pointers from reused stack. */ > > memset(stack, 0, THREAD_SIZE); > > > > - if (memcg_charge_kernel_stack(s)) { > > - vfree(s->addr); > > + if (memcg_charge_kernel_stack(vm_area)) { > > + vfree(vm_area->addr); > > return -ENOMEM; > > } > > > > - tsk->stack_vm_area =3D s; > > + tsk->stack_vm_area =3D vm_area; > > tsk->stack =3D stack; > > return 0; > > } > > @@ -306,8 +304,8 @@ static int alloc_thread_stack_node(struct task_stru= ct *tsk, int node) > > if (!stack) > > return -ENOMEM; > > > > - vm =3D find_vm_area(stack); > > - if (memcg_charge_kernel_stack(vm)) { > > + vm_area =3D find_vm_area(stack); > > + if (memcg_charge_kernel_stack(vm_area)) { > > vfree(stack); > > return -ENOMEM; > > } > > @@ -316,7 +314,7 @@ static int alloc_thread_stack_node(struct task_stru= ct *tsk, int node) > > * free_thread_stack() can be called in interrupt context, > > * so cache the vm_struct. > > */ > > - tsk->stack_vm_area =3D vm; > > + tsk->stack_vm_area =3D vm_area; > > stack =3D kasan_reset_tag(stack); > > tsk->stack =3D stack; > > return 0; >