mbox series

[ndctl,v2,0/3] ndctl: Remove udev rule for latch and dirty-shutdown-count

Message ID 153730081688.72626.14830966608644541641.stgit@dwillia2-desk3.amr.corp.intel.com (mailing list archive)
Headers show
Series ndctl: Remove udev rule for latch and dirty-shutdown-count | expand

Message

Dan Williams Sept. 18, 2018, 8 p.m. UTC
Changes since v1:
* Add an error message for the not supported case (Vishal)
* Asciidoctor format fixup

---

The latch needs to be coordinated with writes to the namespace and that
makes it not suitable as a dimm-add-event udev rule.

Additionally, the dirty-shutdown-count is something that can live in
sysfs alongside the other health state flags in /sys/.../nmemX/nfit.
Otherwise, calling any of the libndctl apis from a udev script means the
entire udev queue can get blocked behind a ndctl_bus_wait_probe() call.
That's too much overhead for a non-default policy.

In other words, while the latch event remains in userspace as close as
possible to the application that wants to manage dimm-flush-failed
policy as anything other than fatal, dirty-shutdown-count caching should
move to sysfs where it is cheap to implement and compliments the
flush-failed health state flag.

---

Dan Williams (3):
      ndctl: Introduce dirty-dimm command
      ndctl: Revert "ndctl, intel: Fallback to smart cached shutdown_count"
      ndctl: Revert "ndctl: Create ndctl udev rules for dirty shutdown"


 .gitignore                               |    1 
 Documentation/ndctl/Makefile.am          |    1 
 Documentation/ndctl/ndctl-dirty-dimm.txt |   29 ++++++
 Makefile.am                              |    3 -
 builtin.h                                |    1 
 configure.ac                             |   10 --
 contrib/80-ndctl.rules                   |    3 -
 ndctl.spec.in                            |    3 -
 ndctl/Makefile.am                        |    5 -
 ndctl/dimm.c                             |   31 ++++++
 ndctl/lib/intel.c                        |   41 --------
 ndctl/lib/libndctl.c                     |    6 -
 ndctl/lib/private.h                      |    3 -
 ndctl/ndctl-udev.c                       |  150 ------------------------------
 ndctl/ndctl.c                            |    1 
 15 files changed, 64 insertions(+), 224 deletions(-)
 create mode 100644 Documentation/ndctl/ndctl-dirty-dimm.txt
 delete mode 100644 contrib/80-ndctl.rules
 delete mode 100644 ndctl/ndctl-udev.c