> -----Original Message----- > From: Verma, Vishal L [mailto:[email protected]] > Sent: Saturday, March 30, 2019 2:37 AM > To: [email protected]; Qi, Fuli/斉 福利 <[email protected]> > Subject: Re: [ndctl PATCH] monitor: removing the requirement of default > config > > > On Fri, 2019-03-29 at 20:01 +0900, QI Fuli wrote: > > Removing the requirement of default configuration file. > > If "-c, --config-file" option is not specified, default configuration > > file should be dispensable. > > > > Link: https://github.com/pmem/ndctl/issues/83 > > Signed-off-by: QI Fuli <[email protected]> > > > > --- > > ndctl/monitor.c | 7 +++++-- > > 1 file changed, 5 insertions(+), 2 deletions(-) > > > > diff --git a/ndctl/monitor.c b/ndctl/monitor.c > > index 346a6df..6829a6b 100644 > > --- a/ndctl/monitor.c > > +++ b/ndctl/monitor.c > > @@ -484,8 +484,11 @@ static int read_config_file(struct ndctl_ctx *ctx, > struct monitor *_monitor, > > > > f = fopen(config_file, "r"); > > if (!f) { > > - err(&monitor, "config-file: %s cannot be opened\n", > config_file); > > - rc = -errno; > > + if (_monitor->config_file) { > > + err(&monitor, "config-file: %s cannot be > opened\n", > > + config_file); > > + rc = -errno; > > + } > > goto out; > > } > > > Hi Qi, > > Thanks for the quick patch. However, this makes it so that the only way > in which a config file gets used is by explicitly specifying it with a > -c option, and that kind of makes a 'default' config file pointless.. > > The ideal scenario would be: > 1. Check if default config exists > a. if it does, use options from there > b. if any cli options provided, use those to override the ones in > config file (if any) > > 2. If default config file is missing, only use cli options > > 3. If -c <file> provided, use that, but perform the same treatment as > 1b > above, i.e. any cli options override anything in the config file from > -c > as well.
Hi Vishal, Thanks for your comment. I think it might be misunderstood. Current scenario is: 1. Check if "-c <file>" option is provided a. if it is, make the <file> as config_file b. if it is not, make default configuration file(/etc/ndctl/monitor.conf) as config_file 2. Try to read options from config_file a. if config_file cannot be opened, then check if "-c" option is provided (1) if it is, stop starting monitor (user may make a wrong <file> in "-c" option) (2) if it is not, finish read_config_file (default configuration file(/etc/ndctl/monitor.conf) is missing) b. if config_file can be opened successfully, merge the options from config_file with cli options It is consistent with the ideal scenario as you mentioned. Thanks, QI Fuli _______________________________________________ Linux-nvdimm mailing list [email protected] https://lists.01.org/mailman/listinfo/linux-nvdimm
