linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: David Sterba <dsterba@suse.cz>
To: Anand Jain <anand.jain@oracle.com>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: [PATCH v1.1 00/18] btrfs-progs: global verbose and quiet option
Date: Fri, 15 Nov 2019 17:11:47 +0100	[thread overview]
Message-ID: <20191115161147.GY3001@twin.jikos.cz> (raw)
In-Reply-To: <1572849196-21775-1-git-send-email-anand.jain@oracle.com>

On Mon, Nov 04, 2019 at 02:32:58PM +0800, Anand Jain wrote:
> v1->v1.1:
>  . Fix typo in HELPINFO_INSERT_QUIET.
>  . Remove #include <stdbool.h> where its no more required.
>    (was needed when %bconf.verbose was declared as bool).
>  . Use pr_verbose(-1,..) instead of all conditions printf()
>  . Use pr_verbose(1,..) instead of pr_verbose(true,..)
> 
> verbosity sample code as in v1.1

Please user integer numbers for patch revisions, no need to mark patches
that haven't changed, the overall summary of changes can mention what
changed where if needed.

> pr_verbose()
> ------------
> /*
>  * level -1: prints message unless bconf.verbose == 0;
>  * level  0: quiet

Are we ever going to call the function with level == 0?

>  * level >0: prints message only if <= bconf.verbose
>  */
> void pr_verbose(int level, const char *fmt, ...)
> {
>         va_list args;
> 
>         if (level == 0 || bconf.verbose == 0)
>                 return;
> 
>         if (level > bconf.verbose)
>                 return;
> 
>         va_start(args, fmt);
>         vfprintf(stdout, fmt, args);
>         va_end(args);
> }
> 
> 1.
>  There are certain sub-commands which does not have any verbose output
>  or quiet output. However if the global options were used with those
>  sub-commands then the command shall not report any usage error. Or
>  my question is should it error out.? For example:
>   (with the patch) btrfs --verbose device ready /dev/sdb
>  actually there isn't any verbose output but we won't error out.
>  Similarly,
>   (without the patch) btrfs send -vvvvv will not show usage error
>   as well.
>   So I believe this is fine. IMO.

Yes this is fine.

> 2.
>   There is slight difference in output when global options are used
>   as compared to the output using the same sequence of options at the
>   sub-command level. For example:
> 
>    btrfs send -v -q -v  is-equal-to  btrfs send
>    But same sequence in the global option
>    btrfs -v -q -v send is-not-equal-to btrfs send
>    but is-equal-to btrfs -v send or btrfs send -v.
>    (similarly applies to receive as well).
> 
>   which IMO is fair expectation as -v is ending last.

Agreed, hopefully the wild combinations of -v and -q are not too common.

The patchset looks good, though it needs the small fixups like the
global header or the helper macros, the core of the changes is there.
That should be good for 5.4.

The first version merged should bring the support for global verbosity
options, then we can gradually convert all fprintf/printf to the helpers
and add new printfs with higher verbosity levels.

  parent reply	other threads:[~2019-11-15 16:11 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-04  6:32 [PATCH v1.1 00/18] btrfs-progs: global verbose and quiet option Anand Jain
2019-11-04  6:32 ` [PATCH v1 01/18] btrfs-progs: receive: fix option quiet Anand Jain
2019-11-04  6:33 ` [PATCH v1 02/18] btrfs-progs: balance status: fix usage show long verbose Anand Jain
2019-11-04  6:33 ` [PATCH v1 03/18] btrfs-progs: balance start: fix usage add " Anand Jain
2019-11-04  6:33 ` [PATCH v1.1 04/18] btrfs-progs: add global verbose and quiet options and helper functions Anand Jain
2019-11-14 16:08   ` David Sterba
2019-11-19  2:44     ` Anand Jain
2019-11-19  3:36     ` Anand Jain
2019-11-19 16:51       ` David Sterba
2019-11-25 10:36         ` Anand Jain
2019-11-15 15:58   ` David Sterba
2019-11-19  5:07     ` Anand Jain
2019-11-19 17:02       ` David Sterba
2019-11-04  6:33 ` [PATCH v1.1 05/18] btrfs-progs: send: use global verbose and quiet options Anand Jain
2019-11-04  6:33 ` [PATCH v1.1 06/18] btrfs-progs: receive: " Anand Jain
2019-11-04  6:33 ` [PATCH v1.1 07/18] btrfs-progs: subvolume delete: use global verbose option Anand Jain
2019-11-04  6:33 ` [PATCH v1 08/18] btrfs-progs: filesystem defragment: " Anand Jain
2019-11-14 16:16   ` David Sterba
2019-11-25 10:35     ` Anand Jain
2019-11-04  6:33 ` [PATCH v1 09/18] btrfs-progs: balance start: " Anand Jain
2019-11-04  6:33 ` [PATCH v1 10/18] btrfs-progs: balance status: " Anand Jain
2019-11-04  6:33 ` [PATCH v1 11/18] btrfs-progs: rescue chunk-recover: " Anand Jain
2019-11-04  6:33 ` [PATCH v1 12/18] btrfs-progs: rescue super-recover: " Anand Jain
2019-11-04  6:33 ` [PATCH v1.1 13/18] btrfs-progs: restore: " Anand Jain
2019-11-04  6:33 ` [PATCH v1 14/18] btrfs-progs: inspect-internal inode-resolve: use global verbose Anand Jain
2019-11-04  6:33 ` [PATCH v1 15/18] btrfs-progs: inspect-internal logical-resolve: use global verbose option Anand Jain
2019-11-04  6:33 ` [PATCH v1.1 16/18] btrfs-progs: refactor btrfs_scan_devices() to accept verbose argument Anand Jain
2019-11-04  6:33 ` [PATCH v1 17/18] btrfs-progs: device scan: add verbose option Anand Jain
2019-11-04  6:33 ` [PATCH v1.1 18/18] btrfs-progs: device scan: add quiet option Anand Jain
2019-11-15 16:11 ` David Sterba [this message]
2019-11-19  3:50   ` [PATCH v1.1 00/18] btrfs-progs: global verbose and " Anand Jain

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=20191115161147.GY3001@twin.jikos.cz \
    --to=dsterba@suse.cz \
    --cc=anand.jain@oracle.com \
    --cc=linux-btrfs@vger.kernel.org \
    /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).