All of lore.kernel.org
 help / color / mirror / Atom feed
From: George Dunlap <george.dunlap@citrix.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
	"xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>
Subject: Re: [PATCH 2 of 2] libxc: Print domain ID in save restore messages
Date: Mon, 12 Mar 2012 10:37:41 +0000	[thread overview]
Message-ID: <1331548661.21818.11.camel@elijah> (raw)
In-Reply-To: <1331318012.3560.49.camel@cthulhu.hellion.org.uk>

On Fri, 2012-03-09 at 18:33 +0000, Ian Campbell wrote:
> On Fri, 2012-03-09 at 13:25 -0500, George Dunlap wrote:
> > On Fri, 2012-03-09 at 18:19 +0000, Ian Campbell wrote:
> > > On Fri, 2012-03-09 at 12:29 -0500, George Dunlap wrote:
> > > > XenServer redirects all libxc output to /var/log/messages, so when a
> > > > large stress test is running, it's hard to tell which message belongs
> > > > to which domain.
> > > > 
> > > > This patch adds the domain ID to output made by the save/restore
> > > > functions.
> > > > 
> > > > To do this, we introduce a layer of indirection in the libxc print
> > > > macros, so that they can be "interposed on" by individual functions.
> > > > 
> > > > We then add the domain ID to the context structs in the save and restore
> > > > paths, and replace the toplevel macros with ones which add the domain to the
> > > > output.
> > > > 
> > > > Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
> > > > 
> > > > diff --git a/tools/libxc/xc_domain_restore.c b/tools/libxc/xc_domain_restore.c
> > > > --- a/tools/libxc/xc_domain_restore.c
> > > > +++ b/tools/libxc/xc_domain_restore.c
> > > > @@ -33,7 +33,20 @@
> > > >  #include <xen/hvm/ioreq.h>
> > > >  #include <xen/hvm/params.h>
> > > >  
> > > > +/* Override default output f'ns with functions that include the domain id */
> > > > +#undef IPRINTF
> > > > +#define IPRINTF(_F, _A...) _IPRINTF("d%d:" _F, ctx->dom, ## _A)
> > > 
> > > I think
> > > 
> > > #define DIPRINTF(_F, _A...) IPRINTF("d%s:" _F, ctx->dom, ## _A)
> > > 
> > > (or DOMIPRINTF etc) would end up looking nicer than these undef and the
> > > _IPRINTFs you've had to scatter around the place.
> > 
> > Perhaps; but that also requires that every person changing this file
> > forever more must remember to write "DIPRINTF" instead of "IPRINTF".
> 
> They already have to remember to write IPRINTF instead of printf(), most
> people will just copy whatever is used nearby, whether that is IPRINTF,
> _IPRINTF or DIPRINTF...
> 
> > (And it requires me to change 10x as many LoC.)
> 
> That's irritating but not a show stopper IMHO.
> 
> Coming from the other angle can you omit all uses of _IPRINTF by passing
> the context around a few more places? I'd have expected that everything
> in xc_domain_save.c was ultimately called from xc_domain_save and
> therefore the is a dom which could be printed?

There's a non-static function xc_map_m2p() which is defined in
xc_domain_save.c, but called from xc_offline_page.c and
tools/tests/mce-test/tools/xce-mceinj.c.  That should probably then be
moved to another file in any case.

If I move that function to a different file, so that there are no
_IPRINTF's, would that suffice?

 -George

> 
> Ian.
> 

  reply	other threads:[~2012-03-12 10:37 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-09 17:29 [PATCH 0 of 2] libxc: Print domain ID with libxc save/restore messages George Dunlap
2012-03-09 17:29 ` [PATCH 1 of 2] libxc: Pass the save_ctx struct to more functions George Dunlap
2012-03-13 16:15   ` Ian Jackson
2012-03-09 17:29 ` [PATCH 2 of 2] libxc: Print domain ID in save restore messages George Dunlap
2012-03-09 18:19   ` Ian Campbell
2012-03-09 18:25     ` George Dunlap
2012-03-09 18:33       ` Ian Campbell
2012-03-12 10:37         ` George Dunlap [this message]
2012-03-12 10:41           ` Ian Campbell
2012-03-13 16:15           ` Ian Jackson

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=1331548661.21818.11.camel@elijah \
    --to=george.dunlap@citrix.com \
    --cc=George.Dunlap@eu.citrix.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=xen-devel@lists.xensource.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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.