> -----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

Reply via email to