From: Oren Laadan <orenl-RdfvBDnrOixBDgjK7y7TUQ@public.gmane.org>
To: "Serge E. Hallyn" <serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Cc: Linux Containers <containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org>
Subject: Re: [PATCH 1/1] fix compile with CONFIG_CHECKPOINT_DEBUG=n
Date: Fri, 23 Oct 2009 14:52:55 -0400 [thread overview]
Message-ID: <4AE1FB87.4050305@librato.com> (raw)
In-Reply-To: <20091022143238.GA31778-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Serge E. Hallyn wrote:
> On the one hand, compiling without checkpoing debug saves a
> lot of kernel size:
>
> with debug:
> -rwxrwxr-x 1 hallyn hallyn 62391508 Oct 21 22:08 vmlinux
> without debug:
> -rwxrwxr-x 1 hallyn hallyn 62298077 Oct 21 22:33 vmlinux
>
> OTOH the need for this patch just proves my point that we don't
> want any more config options than we need (especially no
> CONFIG_CHECKPOINT_LOGGING in addition to _DEBUG).
>
> So that begs the question - is there something we can do to
> avoid having to recompile the kernel to turn on debugging,
> but not take up 100k of space in vmlinux? Maybe get rid of
> the ckpt_debugs altogether and instead provide pre-written
> kprobe sets to turn on debugging at specific places?
What is the reason for the increase - the strings ? the extra
inlined code ? the passing of variables to printed ?
Turning on/off code at specific place requires that the code
still be there ...
do you intend to add a crdebug.ko module hat will hold all
that code ? (if so, you still need to pass the variables).
>
> Signed-off-by: Serge E. Hallyn <serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Meanwhile - pulled, thanks.
Oren
> ---
> checkpoint/restart.c | 23 +++++++++++++----------
> 1 files changed, 13 insertions(+), 10 deletions(-)
>
> diff --git a/checkpoint/restart.c b/checkpoint/restart.c
> index 32a9fc5..105dd0a 100644
> --- a/checkpoint/restart.c
> +++ b/checkpoint/restart.c
> @@ -26,6 +26,15 @@
> #include <linux/checkpoint.h>
> #include <linux/checkpoint_hdr.h>
>
> +#define RESTART_DBG_ROOT (1 << 0)
> +#define RESTART_DBG_GHOST (1 << 1)
> +#define RESTART_DBG_COORD (1 << 2)
> +#define RESTART_DBG_TASK (1 << 3)
> +#define RESTART_DBG_WAITING (1 << 4)
> +#define RESTART_DBG_RUNNING (1 << 5)
> +#define RESTART_DBG_EXITED (1 << 6)
> +#define RESTART_DBG_FAILED (1 << 7)
> +#define RESTART_DBG_SUCCESS (1 << 8)
>
> #ifdef CONFIG_CHECKPOINT_DEBUG
>
> @@ -44,15 +53,6 @@
>
> struct ckpt_task_status {
> pid_t pid;
> -#define RESTART_DBG_ROOT (1 << 0)
> -#define RESTART_DBG_GHOST (1 << 1)
> -#define RESTART_DBG_COORD (1 << 2)
> -#define RESTART_DBG_TASK (1 << 3)
> -#define RESTART_DBG_WAITING (1 << 4)
> -#define RESTART_DBG_RUNNING (1 << 5)
> -#define RESTART_DBG_EXITED (1 << 6)
> -#define RESTART_DBG_FAILED (1 << 7)
> -#define RESTART_DBG_SUCCESS (1 << 8)
> int flags;
> int error;
> struct list_head list;
> @@ -178,7 +178,10 @@ void restore_debug_free(struct ckpt_ctx *ctx)
>
> #else
>
> -static inline void restore_debug_task(struct ckpt_ctx *ctx, int flags) {}
> +static inline int restore_debug_task(struct ckpt_ctx *ctx, int flags)
> +{
> + return 0;
> +}
> static inline void restore_debug_error(struct ckpt_ctx *ctx, int err) {}
> static inline void restore_debug_running(struct ckpt_ctx *ctx) {}
> static inline void restore_debug_exit(struct ckpt_ctx *ctx) {}
next prev parent reply other threads:[~2009-10-23 18:52 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-22 14:32 [PATCH 1/1] fix compile with CONFIG_CHECKPOINT_DEBUG=n Serge E. Hallyn
[not found] ` <20091022143238.GA31778-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-10-22 19:36 ` [PATCH] ipc_ind_to_str unused if !CONFIG_CHECKPOINT_DEBUG Serge E. Hallyn
[not found] ` <20091022193657.GA12321-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-10-23 18:54 ` Oren Laadan
2009-10-23 18:52 ` Oren Laadan [this message]
[not found] ` <4AE1FB87.4050305-RdfvBDnrOixBDgjK7y7TUQ@public.gmane.org>
2009-10-23 19:46 ` [PATCH 1/1] fix compile with CONFIG_CHECKPOINT_DEBUG=n Serge E. Hallyn
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=4AE1FB87.4050305@librato.com \
--to=orenl-rdfvbdnroixbdgjk7y7tuq@public.gmane.org \
--cc=containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org \
--cc=serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.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 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.