public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Reinette Chatre <reinette.chatre@intel.com>
To: James Morse <james.morse@arm.com>, <x86@kernel.org>,
	<linux-kernel@vger.kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	H Peter Anvin <hpa@zytor.com>, Babu Moger <Babu.Moger@amd.com>,
	<shameerali.kolothum.thodi@huawei.com>,
	"D Scott Phillips OS" <scott@os.amperecomputing.com>,
	<carl@os.amperecomputing.com>, <lcherian@marvell.com>,
	<bobo.shaobowang@huawei.com>, <tan.shaopeng@fujitsu.com>,
	<baolin.wang@linux.alibaba.com>,
	Jamie Iles <quic_jiles@quicinc.com>,
	Xin Hao <xhao@linux.alibaba.com>, <peternewman@google.com>,
	<dfustini@baylibre.com>, <amitsinght@marvell.com>,
	David Hildenbrand <david@redhat.com>,
	Rex Nie <rex.nie@jaguarmicro.com>,
	"Dave Martin" <dave.martin@arm.com>, Koba Ko <kobak@nvidia.com>,
	Shanker Donthineni <sdonthineni@nvidia.com>,
	<fenghuay@nvidia.com>, Shaopeng Tan <tan.shaopeng@jp.fujitsu.com>,
	Tony Luck <tony.luck@intel.com>
Subject: Re: [PATCH v9 04/27] x86/resctrl: resctrl_exit() teardown resctrl but leave the mount point
Date: Thu, 1 May 2025 10:03:20 -0700	[thread overview]
Message-ID: <669c32d0-384a-4224-87db-f8af551fd6d3@intel.com> (raw)
In-Reply-To: <20250425173809.5529-5-james.morse@arm.com>

Hi James,

On 4/25/25 10:37 AM, James Morse wrote:
> @@ -4432,23 +4445,42 @@ static bool __exit resctrl_online_domains_exist(void)
>  	return false;
>  }
>  
> -/*
> +/**

Why make the switch to kernel-doc now? The benefit is not clear considering
resctrl_init() is not using kernel-doc.

>   * resctrl_exit() - Remove the resctrl filesystem and free resources.
>   *
> + * Called by the architecture code in response to a fatal error.
> + * Removes resctrl files and structures from kernfs to prevent further
> + * configuration.
> + *
>   * When called by the architecture code, all CPUs and resctrl domains must be
>   * offline. This ensures the limbo and overflow handlers are not scheduled to
>   * run, meaning the data structures they access can be freed by
>   * resctrl_mon_resource_exit().
> + *
> + * After this function has returned, the architecture code should return an

nit: "After this function has returned," -> "After resctrl_exit() returns, "

"should return an" -> "should return an error"?

> + * from all resctrl_arch_ functions that can do this.
> + * resctrl_arch_get_resource() must continue to return struct rdt_resources
> + * with the correct rid field to ensure the filesystem can be unmounted.

Is this to get through set_mba_sc() and the for_each_alloc_capable_rdt_resource(r)
loop in rdt_kill_sb() or is there something more subtle?

>   */
>  void __exit resctrl_exit(void)
>  {
>  	cpus_read_lock();
>  	WARN_ON_ONCE(resctrl_online_domains_exist());
> +
> +	mutex_lock(&rdtgroup_mutex);
> +	resctrl_fs_teardown();
> +	mutex_unlock(&rdtgroup_mutex);
> +
>  	cpus_read_unlock();
>  
>  	debugfs_remove_recursive(debugfs_resctrl);
> +	debugfs_resctrl = NULL;
>  	unregister_filesystem(&rdt_fs_type);
> -	sysfs_remove_mount_point(fs_kobj, "resctrl");
> +
> +	/*
> +	 * Do not remove the sysfs mount point added by resctrl_init() so that
> +	 * it can be used to umount resctrl.
> +	 */
>  
>  	resctrl_mon_resource_exit();
>  }

Looks good to me.

Thank you.

Reinette

  reply	other threads:[~2025-05-01 17:03 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-25 17:37 [PATCH v9 00/27] x86/resctrl: Move the resctrl filesystem code to /fs/resctrl James Morse
2025-04-25 17:37 ` [PATCH v9 01/27] x86/resctrl: Remove the limit on the number of CLOSID James Morse
2025-04-25 17:37 ` [PATCH v9 02/27] x86/resctrl: Rename resctrl_sched_in() to begin with "resctrl_arch_" James Morse
2025-04-25 17:37 ` [PATCH v9 03/27] x86/resctrl: Check all domains are offline in resctrl_exit() James Morse
2025-05-01 17:02   ` Reinette Chatre
2025-04-25 17:37 ` [PATCH v9 04/27] x86/resctrl: resctrl_exit() teardown resctrl but leave the mount point James Morse
2025-05-01 17:03   ` Reinette Chatre [this message]
2025-05-07 16:48     ` James Morse
2025-05-07 17:23       ` Reinette Chatre
2025-04-25 17:37 ` [PATCH v9 05/27] x86/resctrl: Drop __init/__exit on assorted symbols James Morse
2025-04-25 17:37 ` [PATCH v9 06/27] x86/resctrl: Move is_mba_sc() out of core.c James Morse
2025-04-25 17:37 ` [PATCH v9 07/27] x86/resctrl: Add end-marker to the resctrl_event_id enum James Morse
2025-05-01 17:03   ` Reinette Chatre
2025-04-25 17:37 ` [PATCH v9 08/27] x86/resctrl: Expand the width of domid by replacing mon_data_bits James Morse
2025-05-01 17:04   ` Reinette Chatre
2025-05-07 16:48     ` James Morse
2025-04-25 17:37 ` [PATCH v9 09/27] x86/resctrl: Split trace.h James Morse
2025-04-25 17:37 ` [PATCH v9 10/27] x86/resctrl: Add 'resctrl' to the title of the resctrl documentation James Morse
2025-05-01 17:07   ` Reinette Chatre
2025-05-01 21:17   ` Fenghua Yu
2025-04-25 17:37 ` [PATCH v9 11/27] fs/resctrl: Add boiler plate for external resctrl code James Morse
2025-04-25 17:37 ` [PATCH v9 12/27] x86/resctrl: Move the filesystem bits to headers visible to fs/resctrl James Morse
2025-04-25 17:37 ` [PATCH v9 13/27] x86/resctrl: Move enum resctrl_event_id to resctrl.h James Morse
2025-05-01 17:19   ` Reinette Chatre
2025-05-07 16:48     ` James Morse
2025-04-25 17:37 ` [PATCH v9 14/27] x86/resctrl: Fix types in resctrl_arch_mon_ctx_alloc() and free stubs James Morse
2025-05-01 17:27   ` Reinette Chatre
2025-05-07 16:48     ` James Morse
2025-04-25 17:37 ` [PATCH v9 15/27] x86/resctrl: Move pseudo lock prototypes to include/linux/resctrl.h James Morse
2025-05-01 17:29   ` Reinette Chatre
2025-04-25 17:37 ` [PATCH v9 16/27] x86/resctrl: Squelch whitespace anomalies in resctrl core code James Morse
2025-04-25 17:37 ` [PATCH v9 17/27] x86/resctrl: Prefer alloc(sizeof(*foo)) idiom in rdt_init_fs_context() James Morse
2025-04-25 17:38 ` [PATCH v9 18/27] x86/resctrl: Relax some asm #includes James Morse
2025-04-25 17:38 ` [PATCH v9 19/27] x86/resctrl: Always initialise rid field in rdt_resources_all[] James Morse
2025-05-01 17:31   ` Reinette Chatre
2025-04-25 17:38 ` [PATCH v9 20/27] x86/resctrl: Remove a newline to avoid confusing the code move script James Morse
2025-04-25 17:38 ` [PATCH v9 21/27] x86/resctrl: Add python script to move resctrl code to /fs/resctrl James Morse
2025-04-25 17:38 ` [PATCH v9 22/27] x86,fs/resctrl: Move the resctrl filesystem code to live in /fs/resctrl James Morse
2025-04-25 17:38 ` [PATCH v9 23/27] x86,fs/resctrl: Remove duplicated trace header files James Morse
2025-05-01 17:34   ` Reinette Chatre
2025-04-25 17:38 ` [PATCH v9 24/27] fs/resctrl: Remove unnecessary includes James Morse
2025-05-01 17:34   ` Reinette Chatre
2025-05-01 22:27   ` Fenghua Yu
2025-04-25 17:38 ` [PATCH v9 25/27] fs/resctrl: Change internal.h's header guard macros James Morse
2025-05-01 17:35   ` Reinette Chatre
2025-05-01 22:25   ` Fenghua Yu
2025-04-25 17:38 ` [PATCH v9 26/27] x86,fs/resctrl: Move resctrl.rst to live under Documentation/filesystems James Morse
2025-04-25 17:38 ` [PATCH v9 27/27] MAINTAINERS: Add reviewers for fs/resctrl James Morse
2025-04-29 14:25   ` Dave Martin
2025-05-01 17:41   ` Reinette Chatre
2025-05-01 17:51 ` [PATCH v9 00/27] x86/resctrl: Move the resctrl filesystem code to /fs/resctrl Reinette Chatre
2025-05-07 16:49   ` James Morse
2025-05-07 17:25     ` Reinette Chatre
2025-05-02 16:04 ` Moger, Babu
2025-05-02 16:30   ` Reinette Chatre
2025-05-02 16:45     ` Moger, Babu
2025-05-07 16:49       ` James Morse
2025-05-07 20:27         ` Moger, Babu
2025-05-07 20:36           ` Reinette Chatre
2025-05-07 12:00 ` Shaopeng Tan (Fujitsu)
2025-05-07 16:51   ` James Morse

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=669c32d0-384a-4224-87db-f8af551fd6d3@intel.com \
    --to=reinette.chatre@intel.com \
    --cc=Babu.Moger@amd.com \
    --cc=amitsinght@marvell.com \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=bobo.shaobowang@huawei.com \
    --cc=bp@alien8.de \
    --cc=carl@os.amperecomputing.com \
    --cc=dave.martin@arm.com \
    --cc=david@redhat.com \
    --cc=dfustini@baylibre.com \
    --cc=fenghuay@nvidia.com \
    --cc=hpa@zytor.com \
    --cc=james.morse@arm.com \
    --cc=kobak@nvidia.com \
    --cc=lcherian@marvell.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=peternewman@google.com \
    --cc=quic_jiles@quicinc.com \
    --cc=rex.nie@jaguarmicro.com \
    --cc=scott@os.amperecomputing.com \
    --cc=sdonthineni@nvidia.com \
    --cc=shameerali.kolothum.thodi@huawei.com \
    --cc=tan.shaopeng@fujitsu.com \
    --cc=tan.shaopeng@jp.fujitsu.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    --cc=xhao@linux.alibaba.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox