Commit c92bda4c authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'edac_urgent_for_v6.16_rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras

Pull EDAC fix from Borislav Petkov:

 - Initialize sysfs attributes properly to avoid lockdep complaining
   about an uninitialized lock class

* tag 'edac_urgent_for_v6.16_rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
  EDAC: Initialize EDAC features sysfs attributes
parents bdde3141 1e14ea90
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -170,8 +170,10 @@ static int ecs_create_desc(struct device *ecs_dev, const struct attribute_group
		fru_ctx->dev_attr[ECS_RESET]		= EDAC_ECS_ATTR_WO(reset, fru);
		fru_ctx->dev_attr[ECS_THRESHOLD]	= EDAC_ECS_ATTR_RW(threshold, fru);

		for (i = 0; i < ECS_MAX_ATTRS; i++)
		for (i = 0; i < ECS_MAX_ATTRS; i++) {
			sysfs_attr_init(&fru_ctx->dev_attr[i].dev_attr.attr);
			fru_ctx->ecs_attrs[i] = &fru_ctx->dev_attr[i].dev_attr.attr;
		}

		sprintf(fru_ctx->name, "%s%d", EDAC_ECS_FRU_NAME, fru);
		group->name = fru_ctx->name;
+1 −0
Original line number Diff line number Diff line
@@ -333,6 +333,7 @@ static int mem_repair_create_desc(struct device *dev,
	for (i = 0; i < MR_MAX_ATTRS; i++) {
		memcpy(&ctx->mem_repair_dev_attr[i],
		       &dev_attr[i], sizeof(dev_attr[i]));
		sysfs_attr_init(&ctx->mem_repair_dev_attr[i].dev_attr.attr);
		ctx->mem_repair_attrs[i] =
			&ctx->mem_repair_dev_attr[i].dev_attr.attr;
	}
+1 −0
Original line number Diff line number Diff line
@@ -176,6 +176,7 @@ static int scrub_create_desc(struct device *scrub_dev,
	group = &scrub_ctx->group;
	for (i = 0; i < SCRUB_MAX_ATTRS; i++) {
		memcpy(&scrub_ctx->scrub_dev_attr[i], &dev_attr[i], sizeof(dev_attr[i]));
		sysfs_attr_init(&scrub_ctx->scrub_dev_attr[i].dev_attr.attr);
		scrub_ctx->scrub_attrs[i] = &scrub_ctx->scrub_dev_attr[i].dev_attr.attr;
	}
	sprintf(scrub_ctx->name, "%s%d", "scrub", instance);