Hi QI, On 07/31/2018 01:15 AM, QI Fuli wrote: > When a monitor runs with [--log] option, the prefix will be dually > added to monitor.log. Therefore, the monitor cannot log the smart > notification to syslog. This patch is used to prevent prefix from > being dually added to monitor.log. > > Fixes: fdf6b6844ccf ("ndctl, monitor: add a new command - monitor") > Signed-off-by: QI Fuli <qi.f...@jp.fujitsu.com> > --- > ndctl/monitor.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/ndctl/monitor.c b/ndctl/monitor.c > index c6419ad..4e5daf5 100644 > --- a/ndctl/monitor.c > +++ b/ndctl/monitor.c > @@ -614,7 +614,8 @@ int cmd_monitor(int argc, const char **argv, void *ctx) > goto out; > > if (monitor.log) { > - fix_filename(prefix, (const char **)&monitor.log); > + if (strncmp(monitor.log, "./", 2) != 0) > + fix_filename(prefix, (const char **)&monitor.log);
prefix is not needed to 'syslog' and 'standard', so why don't you move the strncmp() before fix_filename(), like as: @@ -614,13 +619,14 @@ int cmd_monitor(int argc, const char **argv, void *ctx) goto out; if (monitor.log) { - fix_filename(prefix, (const char **)&monitor.log); if (strncmp(monitor.log, "./syslog", 8) == 0) ndctl_set_log_fn((struct ndctl_ctx *)ctx, log_syslog); else if (strncmp(monitor.log, "./standard", 10) == 0) ; /*default, already set */ - else + else { + fix_filename(prefix, (const char **)&monitor.log); ndctl_set_log_fn((struct ndctl_ctx *)ctx, log_file); + } } if (monitor.daemon) { Thanks, Masa > if (strncmp(monitor.log, "./syslog", 8) == 0) > ndctl_set_log_fn((struct ndctl_ctx *)ctx, log_syslog); > else if (strncmp(monitor.log, "./standard", 10) == 0) > _______________________________________________ Linux-nvdimm mailing list Linux-nvdimm@lists.01.org https://lists.01.org/mailman/listinfo/linux-nvdimm