public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: Stefano Brivio <sbrivio@redhat.com>
Cc: passt-dev@passt.top, Yalan Zhang <yalzhang@redhat.com>
Subject: Re: [PATCH v5 0/9] Fixes for early logging/prints and related cleanups
Date: Fri, 21 Jun 2024 11:17:34 +1000	[thread overview]
Message-ID: <ZnTUrhu8LNWi-krS@zatzit> (raw)
In-Reply-To: <20240620161518.142285-1-sbrivio@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 3586 bytes --]

On Thu, Jun 20, 2024 at 06:15:09PM +0200, Stefano Brivio wrote:
> The most apparent issue fixed by this series is the one from 4/6: with
> a log file configured, we wouldn't print to standard error anymore,
> during initialisation, which means that users such as libvirt lost
> the ability to report meaningful error messages that occurred during
> initialisation, in that case.
> 
> v5:
> - in 4/8, rename the new flag once more to 'log_runtime': we don't
>   want to log to standard error if we're running in foreground, a
>   log file is given, and initialisation is done, otherwise debugging
>   pasta when it spawns its own shell becomes rather impractical

Ah.. right.  See, I still think the semantics of always printing to
stderr when foreground make more sense, but I guess I do see the point
that having pasta messages appear in your pasta-spawned shell is ugly.

My preferred approach for that would to keep the basic semantics that
we always log to stderr when foreground, but when we're spawning a
pasta shell we default to 'quiet' log level.  That way if you really
do want messages to stderr along with your shell/command (which I
sometimes do), you can get that by using --debug or whatever.

Regardless of that quibble, though, the semantics are substantially
saner with this series than without so I'm happy to go ahead with it.

> - add 9/8, taking care of a direct stderr print left-over
> 
> v4:
> - in 4/8, name the new flag 'log_daemonised' instead of
>   'log_daemon_ready'
> 
> v3:
> - add 2/8: we don't really need --stderr anymore
> - in 5/8, save errno at the beginning of the _perror() helper
> - in 7/8, avoid assigning errno to whatever return code we have just
>   for the sake of using the new helpers: strerror() is actually less
>   convoluted than that
> - add 8/8: there's no need to call __openlog() with a log file
> 
> v2:
> - turn flag bitmap into simple, separate boolean flags
> - move errno description after message in _perror() functions
> - make some of the old perror() messages more descriptive
> *** BLURB HERE ***
> 
> Stefano Brivio (9):
>   conf, passt: Don't try to log to stderr after we close it
>   conf, passt: Make --stderr do nothing, and deprecate it
>   conf, log: Instead of abusing log levels, add log_conf_parsed flag
>   log, passt: Always print to stderr before initialisation is complete
>   log: Add _perror() logging function variants
>   treewide: Replace perror() calls with calls to logging functions
>   treewide: Replace strerror() calls
>   conf, passt: Don't call __openlog() if a log file is used
>   log: Don't report syslog failures to stderr after initialisation
> 
>  arch.c      | 10 ++++-----
>  conf.c      | 41 ++++++++++++---------------------
>  fwd.c       |  2 +-
>  isolation.c | 46 ++++++++++++++++---------------------
>  log.c       | 65 ++++++++++++++++++++++++++++++++---------------------
>  log.h       | 25 +++++++++++++++++----
>  netlink.c   |  4 ++--
>  passt.1     |  9 ++++----
>  passt.c     | 64 +++++++++++++++++++---------------------------------
>  passt.h     |  2 --
>  pasta.c     | 27 +++++++++-------------
>  pcap.c      |  8 +++----
>  tap.c       | 14 ++++++------
>  tcp.c       | 24 +++++++-------------
>  util.c      | 12 +++++-----
>  15 files changed, 164 insertions(+), 189 deletions(-)
> 

-- 
David Gibson (he or they)	| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you, not the other way
				| around.
http://www.ozlabs.org/~dgibson

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  parent reply	other threads:[~2024-06-21  1:17 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-20 16:15 [PATCH v5 0/9] Fixes for early logging/prints and related cleanups Stefano Brivio
2024-06-20 16:15 ` [PATCH v5 1/9] conf, passt: Don't try to log to stderr after we close it Stefano Brivio
2024-06-20 16:15 ` [PATCH v5 2/9] conf, passt: Make --stderr do nothing, and deprecate it Stefano Brivio
2024-06-20 16:15 ` [PATCH v5 3/9] conf, log: Instead of abusing log levels, add log_conf_parsed flag Stefano Brivio
2024-06-20 16:15 ` [PATCH v5 4/9] log, passt: Always print to stderr before initialisation is complete Stefano Brivio
2024-06-21  1:13   ` David Gibson
2024-06-20 16:15 ` [PATCH v5 5/9] log: Add _perror() logging function variants Stefano Brivio
2024-06-20 16:15 ` [PATCH v5 6/9] treewide: Replace perror() calls with calls to logging functions Stefano Brivio
2024-06-20 16:15 ` [PATCH v5 7/9] treewide: Replace strerror() calls Stefano Brivio
2024-06-20 16:15 ` [PATCH v5 8/9] conf, passt: Don't call __openlog() if a log file is used Stefano Brivio
2024-06-20 16:15 ` [PATCH v5 9/9] log: Don't report syslog failures to stderr after initialisation Stefano Brivio
2024-06-21  1:11   ` David Gibson
2024-06-21  1:17 ` David Gibson [this message]
2024-06-21  9:33   ` [PATCH v5 0/9] Fixes for early logging/prints and related cleanups Stefano Brivio
2024-06-24  5:32     ` David Gibson
2024-06-24  9:45       ` Stefano Brivio
2024-06-26  1:50         ` David Gibson

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=ZnTUrhu8LNWi-krS@zatzit \
    --to=david@gibson.dropbear.id.au \
    --cc=passt-dev@passt.top \
    --cc=sbrivio@redhat.com \
    --cc=yalzhang@redhat.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.
Code repositories for project(s) associated with this public inbox

	https://passt.top/passt

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 IMAP folder(s).