nvdimm.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: "Verma, Vishal L" <vishal.l.verma@intel.com>
To: "Williams, Dan J" <dan.j.williams@intel.com>
Cc: "nvdimm@lists.linux.dev" <nvdimm@lists.linux.dev>,
	"Hu, Fenghua" <fenghua.hu@intel.com>,
	"qi.fuli@jp.fujitsu.com" <qi.fuli@jp.fujitsu.com>
Subject: Re: [ndctl PATCH 0/7] Policy based reconfiguration for daxctl
Date: Fri, 19 Nov 2021 20:57:03 +0000	[thread overview]
Message-ID: <12c8ad6454965f5f901bfda869135d919ca420ea.camel@intel.com> (raw)
In-Reply-To: <CAPcyv4jGs9t6zKdzOJL1watQ7RvC0qdbT=jB2Cn948iM+0eLQw@mail.gmail.com>

On Thu, 2021-09-16 at 15:12 -0700, Dan Williams wrote:
> On Tue, Aug 31, 2021 at 2:05 AM Vishal Verma <vishal.l.verma@intel.com> wrote:
> > 
> > These patches add policy (config file) support to daxctl. The
> > introductory user is daxctl-reconfigure-device. Sysadmins may wish to
> > use daxctl devices as system-ram, but it may be cumbersome to automate
> > the reconfiguration step for every device upon boot.
> > 
> > Introduce a new option for daxctl-reconfigure-device, --check-config.
> > This is at the heart of policy based reconfiguration, as it allows
> > daxctl to look up reconfiguration parameters for a given device from the
> > config system instead of the command line.
> > 
> > Some systemd and udev glue then automates this for every new dax device
> > that shows up, providing a way for the administrator to simply list all
> > the 'system-ram' UUIDs in a config file, and not have to worry about
> > anything else.
> > 
> > An example config file can be:
> > 
> >   # cat /etc/ndctl/daxctl.conf
> 
> Take these comments as provisional until I read through the rest, but
> this is just a reaction to the proposed ini format.

I somehow missed this email originally, and just saw it on lore..

> > 
> >   [auto-online unique_identifier_foo]
> 
> I am thinking this section name should be "reconfigure-device
> unique_identifier_foo" if only because resize might also be something
> someone wants to do, and if other commands get config automation it
> makes it clearer which config snippets apply to which command.

Yep that makes sense - I'll change this.
> 
> >   uuid = 48d8e42c-a2f0-4312-9e70-a837faafe862
> 
> I think this should be called:
> 
> "nvdimm.uuid"
> 
> ...or something like that to make it clear this depends on dax devices
> emitted by libnvdimm, and not those that come from "soft-reserved"
> memory. It also helps distinguish if we ever get UUIDs in the HMAT
> which is something I have been meaning to propose.

Yep makes sense, will change.

> >   mode = system-ram
> 
> I can see this being "mode = devdax" if feature was being used to
> change size or alignment.

Agreed, but that should 'just work' right - especially once we rename
the section name from auto-online to reconfigure-device.

> 
> >   online = true
> >   movable = false
> 
> I wonder if these keys should be prefixed by the mode name:
> 
> system-ram.online = true
> system-ram.movable = false

Hm, maybe, but since the config options feed directly into the commands
params, I figured we can let the command's option parsing throw any
errors for incompatible options. My hope was for config identifiers to
- as far as possible - exactly match command-line options. If we do
make changes like this, I feel for every command that supports config,
the man page is asking for a dedicated config section documenting every
config option it supports. Maybe this is a good idea regardless :)

> 
> ...so it's a bit more self documenting about which parameters are
> sub-options, and delineates them from generic options like size.
> 
> > Any file under '/etc/ndctl/' can be used - all files with a '.conf' suffix
> > will be considered when looking for matches.
> 
> any concern about name collisions between ndctl, daxctl, and cxl-cli
> section names?

Yep good point, changed this to be in /etc/daxctl/, and cxl-cli can get
its own directory too when the time comes.


      reply	other threads:[~2021-11-19 20:57 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-31  9:04 [ndctl PATCH 0/7] Policy based reconfiguration for daxctl Vishal Verma
2021-08-31  9:04 ` [ndctl PATCH 1/7] ndctl: Update ndctl.spec.in for 'ndctl.conf' Vishal Verma
2021-09-02 12:15   ` qi.fuli
2021-08-31  9:04 ` [ndctl PATCH 2/7] daxctl: Documentation updates for persistent reconfiguration Vishal Verma
2021-09-16 22:47   ` Dan Williams
2021-11-17 23:02     ` Verma, Vishal L
2021-08-31  9:04 ` [ndctl PATCH 3/7] util/parse-config: refactor filter_conf_files into util/ Vishal Verma
2021-09-02 12:17   ` qi.fuli
2021-09-16 22:54   ` Dan Williams
2021-08-31  9:04 ` [ndctl PATCH 4/7] daxctl: add basic config parsing support Vishal Verma
2021-09-02 12:19   ` qi.fuli
2021-09-16 22:58   ` Dan Williams
2021-11-17 23:17     ` Verma, Vishal L
2021-08-31  9:04 ` [ndctl PATCH 5/7] util/parse-configs: add a key/value search helper Vishal Verma
2021-09-02 13:12   ` qi.fuli
2021-09-16 23:54   ` Dan Williams
2021-11-17 23:21     ` Verma, Vishal L
2021-08-31  9:04 ` [ndctl PATCH 6/7] daxctl/device.c: add an option for getting params from a config file Vishal Verma
2021-09-17  1:59   ` Dan Williams
2021-11-17 23:45     ` Verma, Vishal L
2021-08-31  9:04 ` [ndctl PATCH 7/7] daxctl: add systemd service and udev rule for auto-onlining Vishal Verma
2021-09-03  0:56   ` qi.fuli
2021-09-17 18:10   ` Dan Williams
2021-11-17 23:29     ` Verma, Vishal L
2021-11-17 23:43       ` Dan Williams
2021-11-18  2:40     ` Verma, Vishal L
2021-11-18  3:40       ` Dan Williams
2021-09-16 22:12 ` [ndctl PATCH 0/7] Policy based reconfiguration for daxctl Dan Williams
2021-11-19 20:57   ` Verma, Vishal L [this message]

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=12c8ad6454965f5f901bfda869135d919ca420ea.camel@intel.com \
    --to=vishal.l.verma@intel.com \
    --cc=dan.j.williams@intel.com \
    --cc=fenghua.hu@intel.com \
    --cc=nvdimm@lists.linux.dev \
    --cc=qi.fuli@jp.fujitsu.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;
as well as URLs for NNTP newsgroup(s).