mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 21:54:11 +08:00
Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm
Pull nvdimm fixlet from Dan Williams: "This is a libnvdimm ABI fixup. I pushed back on this change quite hard given the late date, that it appears to be purely cosmetic, sysfs is not necessarily meant to be a user friendly UI, and the kernel interprets the reversed polarity of the ACPI_NFIT_MEM_ARMED flag correctly. When this flag is set, the energy source of an NVDIMM is not armed and any new writes to the DIMM may not be preserved. However, Bob Moore warned me that it is important to get these things named correctly wherever they appear otherwise we run the risk of a less than cautious firmware engineer implementing the polarity the wrong way. Once a mistake like that escapes into production platforms the flag becomes useless and we need to move to a new bit position. Bob has agreed to take a change through ACPICA to rename ACPI_NFIT_MEM_ARMED to ACPI_NFIT_MEM_NOT_ARMED, and the patch below from Toshi brings the sysfs representation of these flags in line with their respective polarities. Please pull for 4.2 as this is the first kernel to expose the ACPI NFIT sysfs representation, and this is likely a kernel that firmware developers will be using for checking out their NVDIMM enabling" * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: nfit: Clarify memory device state flags strings
This commit is contained in:
commit
5c98bcce64
@ -702,11 +702,11 @@ static ssize_t flags_show(struct device *dev,
|
||||
u16 flags = to_nfit_memdev(dev)->flags;
|
||||
|
||||
return sprintf(buf, "%s%s%s%s%s\n",
|
||||
flags & ACPI_NFIT_MEM_SAVE_FAILED ? "save " : "",
|
||||
flags & ACPI_NFIT_MEM_RESTORE_FAILED ? "restore " : "",
|
||||
flags & ACPI_NFIT_MEM_FLUSH_FAILED ? "flush " : "",
|
||||
flags & ACPI_NFIT_MEM_ARMED ? "arm " : "",
|
||||
flags & ACPI_NFIT_MEM_HEALTH_OBSERVED ? "smart " : "");
|
||||
flags & ACPI_NFIT_MEM_SAVE_FAILED ? "save_fail " : "",
|
||||
flags & ACPI_NFIT_MEM_RESTORE_FAILED ? "restore_fail " : "",
|
||||
flags & ACPI_NFIT_MEM_FLUSH_FAILED ? "flush_fail " : "",
|
||||
flags & ACPI_NFIT_MEM_ARMED ? "not_armed " : "",
|
||||
flags & ACPI_NFIT_MEM_HEALTH_OBSERVED ? "smart_event " : "");
|
||||
}
|
||||
static DEVICE_ATTR_RO(flags);
|
||||
|
||||
@ -849,12 +849,12 @@ static int acpi_nfit_register_dimms(struct acpi_nfit_desc *acpi_desc)
|
||||
if ((mem_flags & ACPI_NFIT_MEM_FAILED_MASK) == 0)
|
||||
continue;
|
||||
|
||||
dev_info(acpi_desc->dev, "%s: failed: %s%s%s%s\n",
|
||||
dev_info(acpi_desc->dev, "%s flags:%s%s%s%s\n",
|
||||
nvdimm_name(nvdimm),
|
||||
mem_flags & ACPI_NFIT_MEM_SAVE_FAILED ? "save " : "",
|
||||
mem_flags & ACPI_NFIT_MEM_RESTORE_FAILED ? "restore " : "",
|
||||
mem_flags & ACPI_NFIT_MEM_FLUSH_FAILED ? "flush " : "",
|
||||
mem_flags & ACPI_NFIT_MEM_ARMED ? "arm " : "");
|
||||
mem_flags & ACPI_NFIT_MEM_SAVE_FAILED ? " save_fail" : "",
|
||||
mem_flags & ACPI_NFIT_MEM_RESTORE_FAILED ? " restore_fail":"",
|
||||
mem_flags & ACPI_NFIT_MEM_FLUSH_FAILED ? " flush_fail" : "",
|
||||
mem_flags & ACPI_NFIT_MEM_ARMED ? " not_armed" : "");
|
||||
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user