All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] x86/CPU/AMD: use default_groups in kobj_type
@ 2022-01-06 10:35 Greg Kroah-Hartman
  2022-01-17 21:52 ` Yazen Ghannam
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Greg Kroah-Hartman @ 2022-01-06 10:35 UTC (permalink / raw)
  To: linux-kernel
  Cc: Greg Kroah-Hartman, Tony Luck, Borislav Petkov, Thomas Gleixner,
	Ingo Molnar, Dave Hansen, x86, H. Peter Anvin, linux-edac

There are currently 2 ways to create a set of sysfs files for a
kobj_type, through the default_attrs field, and the default_groups
field.  Move the AMD mce sysfs code to use default_groups field which
has been the preferred way since aa30f47cf666 ("kobject: Add support for
default attribute groups to kobj_type") so that we can soon get rid of
the obsolete default_attrs field.

Cc: Tony Luck <tony.luck@intel.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: x86@kernel.org
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: linux-edac@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
v2: fix up direct pointers through the kobj_type to the default_attrs
    The logic here still isn't all that nice, ideally the is_visible()
    callback for the attribute group should be used instead as that is
    what it is for.

 arch/x86/kernel/cpu/mce/amd.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kernel/cpu/mce/amd.c b/arch/x86/kernel/cpu/mce/amd.c
index fc85eb17cb6d..a165e8065e7f 100644
--- a/arch/x86/kernel/cpu/mce/amd.c
+++ b/arch/x86/kernel/cpu/mce/amd.c
@@ -1171,6 +1171,7 @@ static struct attribute *default_attrs[] = {
 	NULL,	/* possibly interrupt_enable if supported, see below */
 	NULL,
 };
+ATTRIBUTE_GROUPS(default);
 
 #define to_block(k)	container_of(k, struct threshold_block, kobj)
 #define to_attr(a)	container_of(a, struct threshold_attr, attr)
@@ -1207,7 +1208,7 @@ static void threshold_block_release(struct kobject *kobj);
 
 static struct kobj_type threshold_ktype = {
 	.sysfs_ops		= &threshold_ops,
-	.default_attrs		= default_attrs,
+	.default_groups		= default_groups,
 	.release		= threshold_block_release,
 };
 
@@ -1279,10 +1280,10 @@ static int allocate_threshold_blocks(unsigned int cpu, struct threshold_bank *tb
 	b->threshold_limit	= THRESHOLD_MAX;
 
 	if (b->interrupt_capable) {
-		threshold_ktype.default_attrs[2] = &interrupt_enable.attr;
+		default_attrs[2] = &interrupt_enable.attr;
 		b->interrupt_enable = 1;
 	} else {
-		threshold_ktype.default_attrs[2] = NULL;
+		default_attrs[2] = NULL;
 	}
 
 	INIT_LIST_HEAD(&b->miscj);
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] x86/CPU/AMD: use default_groups in kobj_type
  2022-01-06 10:35 [PATCH v2] x86/CPU/AMD: use default_groups in kobj_type Greg Kroah-Hartman
@ 2022-01-17 21:52 ` Yazen Ghannam
  2022-01-23 19:37 ` [tip: x86/cpu] x86/CPU/AMD: Use " tip-bot2 for Greg Kroah-Hartman
  2022-02-02  6:31 ` tip-bot2 for Greg Kroah-Hartman
  2 siblings, 0 replies; 4+ messages in thread
From: Yazen Ghannam @ 2022-01-17 21:52 UTC (permalink / raw)
  To: Greg Kroah-Hartman
  Cc: linux-kernel, Tony Luck, Borislav Petkov, Thomas Gleixner,
	Ingo Molnar, Dave Hansen, x86, H. Peter Anvin, linux-edac

On Thu, Jan 06, 2022 at 11:35:37AM +0100, Greg Kroah-Hartman wrote:
> There are currently 2 ways to create a set of sysfs files for a
> kobj_type, through the default_attrs field, and the default_groups
> field.  Move the AMD mce sysfs code to use default_groups field which
> has been the preferred way since aa30f47cf666 ("kobject: Add support for
> default attribute groups to kobj_type") so that we can soon get rid of
> the obsolete default_attrs field.
> 
> Cc: Tony Luck <tony.luck@intel.com>
> Cc: Borislav Petkov <bp@alien8.de>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Dave Hansen <dave.hansen@linux.intel.com>
> Cc: x86@kernel.org
> Cc: "H. Peter Anvin" <hpa@zytor.com>
> Cc: linux-edac@vger.kernel.org
> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Tested-by: Yazen Ghannam <yazen.ghannam@amd.com>

> ---
> v2: fix up direct pointers through the kobj_type to the default_attrs
>     The logic here still isn't all that nice, ideally the is_visible()
>     callback for the attribute group should be used instead as that is
>     what it is for.
>

I'll check that out. Thanks!

-Yazen 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [tip: x86/cpu] x86/CPU/AMD: Use default_groups in kobj_type
  2022-01-06 10:35 [PATCH v2] x86/CPU/AMD: use default_groups in kobj_type Greg Kroah-Hartman
  2022-01-17 21:52 ` Yazen Ghannam
@ 2022-01-23 19:37 ` tip-bot2 for Greg Kroah-Hartman
  2022-02-02  6:31 ` tip-bot2 for Greg Kroah-Hartman
  2 siblings, 0 replies; 4+ messages in thread
From: tip-bot2 for Greg Kroah-Hartman @ 2022-01-23 19:37 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: Greg Kroah-Hartman, Borislav Petkov, Yazen Ghannam, x86, linux-kernel

The following commit has been merged into the x86/cpu branch of tip:

Commit-ID:     7237727f8c4415fa925c723fc03be373834c21b9
Gitweb:        https://git.kernel.org/tip/7237727f8c4415fa925c723fc03be373834c21b9
Author:        Greg Kroah-Hartman <gregkh@linuxfoundation.org>
AuthorDate:    Thu, 06 Jan 2022 11:35:37 +01:00
Committer:     Borislav Petkov <bp@suse.de>
CommitterDate: Sun, 23 Jan 2022 20:30:27 +01:00

x86/CPU/AMD: Use default_groups in kobj_type

There are currently 2 ways to create a set of sysfs files for a
kobj_type, through the default_attrs field, and the default_groups
field. Move the AMD mce sysfs code to use default_groups field which has
been the preferred way since

  aa30f47cf666 ("kobject: Add support for default attribute groups to kobj_type")

so that the obsolete default_attrs field can be removed soon.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Tested-by: Yazen Ghannam <yazen.ghannam@amd.com>
Link: https://lore.kernel.org/r/20220106103537.3663852-1-gregkh@linuxfoundation.org
---
 arch/x86/kernel/cpu/mce/amd.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kernel/cpu/mce/amd.c b/arch/x86/kernel/cpu/mce/amd.c
index a1e2f41..c0660c1 100644
--- a/arch/x86/kernel/cpu/mce/amd.c
+++ b/arch/x86/kernel/cpu/mce/amd.c
@@ -993,6 +993,7 @@ static struct attribute *default_attrs[] = {
 	NULL,	/* possibly interrupt_enable if supported, see below */
 	NULL,
 };
+ATTRIBUTE_GROUPS(default);
 
 #define to_block(k)	container_of(k, struct threshold_block, kobj)
 #define to_attr(a)	container_of(a, struct threshold_attr, attr)
@@ -1029,7 +1030,7 @@ static void threshold_block_release(struct kobject *kobj);
 
 static struct kobj_type threshold_ktype = {
 	.sysfs_ops		= &threshold_ops,
-	.default_attrs		= default_attrs,
+	.default_groups		= default_groups,
 	.release		= threshold_block_release,
 };
 
@@ -1101,10 +1102,10 @@ static int allocate_threshold_blocks(unsigned int cpu, struct threshold_bank *tb
 	b->threshold_limit	= THRESHOLD_MAX;
 
 	if (b->interrupt_capable) {
-		threshold_ktype.default_attrs[2] = &interrupt_enable.attr;
+		default_attrs[2] = &interrupt_enable.attr;
 		b->interrupt_enable = 1;
 	} else {
-		threshold_ktype.default_attrs[2] = NULL;
+		default_attrs[2] = NULL;
 	}
 
 	INIT_LIST_HEAD(&b->miscj);

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [tip: x86/cpu] x86/CPU/AMD: Use default_groups in kobj_type
  2022-01-06 10:35 [PATCH v2] x86/CPU/AMD: use default_groups in kobj_type Greg Kroah-Hartman
  2022-01-17 21:52 ` Yazen Ghannam
  2022-01-23 19:37 ` [tip: x86/cpu] x86/CPU/AMD: Use " tip-bot2 for Greg Kroah-Hartman
@ 2022-02-02  6:31 ` tip-bot2 for Greg Kroah-Hartman
  2 siblings, 0 replies; 4+ messages in thread
From: tip-bot2 for Greg Kroah-Hartman @ 2022-02-02  6:31 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: Greg Kroah-Hartman, Borislav Petkov, Yazen Ghannam, x86, linux-kernel

The following commit has been merged into the x86/cpu branch of tip:

Commit-ID:     7f99cb5e60392fc3494c610776e733b68784280c
Gitweb:        https://git.kernel.org/tip/7f99cb5e60392fc3494c610776e733b68784280c
Author:        Greg Kroah-Hartman <gregkh@linuxfoundation.org>
AuthorDate:    Thu, 06 Jan 2022 11:35:37 +01:00
Committer:     Borislav Petkov <bp@suse.de>
CommitterDate: Tue, 01 Feb 2022 12:41:24 +01:00

x86/CPU/AMD: Use default_groups in kobj_type

There are currently 2 ways to create a set of sysfs files for a
kobj_type, through the default_attrs field, and the default_groups
field. Move the AMD mce sysfs code to use default_groups field which has
been the preferred way since

  aa30f47cf666 ("kobject: Add support for default attribute groups to kobj_type")

so that the obsolete default_attrs field can be removed soon.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Tested-by: Yazen Ghannam <yazen.ghannam@amd.com>
Link: https://lore.kernel.org/r/20220106103537.3663852-1-gregkh@linuxfoundation.org
---
 arch/x86/kernel/cpu/mce/amd.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kernel/cpu/mce/amd.c b/arch/x86/kernel/cpu/mce/amd.c
index 9f4b508..1940d30 100644
--- a/arch/x86/kernel/cpu/mce/amd.c
+++ b/arch/x86/kernel/cpu/mce/amd.c
@@ -993,6 +993,7 @@ static struct attribute *default_attrs[] = {
 	NULL,	/* possibly interrupt_enable if supported, see below */
 	NULL,
 };
+ATTRIBUTE_GROUPS(default);
 
 #define to_block(k)	container_of(k, struct threshold_block, kobj)
 #define to_attr(a)	container_of(a, struct threshold_attr, attr)
@@ -1029,7 +1030,7 @@ static void threshold_block_release(struct kobject *kobj);
 
 static struct kobj_type threshold_ktype = {
 	.sysfs_ops		= &threshold_ops,
-	.default_attrs		= default_attrs,
+	.default_groups		= default_groups,
 	.release		= threshold_block_release,
 };
 
@@ -1101,10 +1102,10 @@ static int allocate_threshold_blocks(unsigned int cpu, struct threshold_bank *tb
 	b->threshold_limit	= THRESHOLD_MAX;
 
 	if (b->interrupt_capable) {
-		threshold_ktype.default_attrs[2] = &interrupt_enable.attr;
+		default_attrs[2] = &interrupt_enable.attr;
 		b->interrupt_enable = 1;
 	} else {
-		threshold_ktype.default_attrs[2] = NULL;
+		default_attrs[2] = NULL;
 	}
 
 	INIT_LIST_HEAD(&b->miscj);

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-02-02  6:53 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-06 10:35 [PATCH v2] x86/CPU/AMD: use default_groups in kobj_type Greg Kroah-Hartman
2022-01-17 21:52 ` Yazen Ghannam
2022-01-23 19:37 ` [tip: x86/cpu] x86/CPU/AMD: Use " tip-bot2 for Greg Kroah-Hartman
2022-02-02  6:31 ` tip-bot2 for Greg Kroah-Hartman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.