From: Sean Christopherson <sean.j.christopherson@intel.com>
To: Yi Wang <wang.yi59@zte.com.cn>
Cc: pbonzini@redhat.com, rkrcmar@redhat.com, tglx@linutronix.de,
mingo@redhat.com, bp@alien8.de, hpa@zytor.com, x86@kernel.org,
kvm@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] [next] KVM: lapic: allow setting apic debug dynamically
Date: Wed, 8 May 2019 14:59:31 -0700 [thread overview]
Message-ID: <20190508215931.GG19656@linux.intel.com> (raw)
In-Reply-To: <1557211053-17275-1-git-send-email-wang.yi59@zte.com.cn>
On Tue, May 07, 2019 at 02:37:33PM +0800, Yi Wang wrote:
> There are many functions invoke apic_debug(), which is defined
> as a null function by default, and that's incovenient for debuging
> lapic.
>
> This patch allows setting apic debug according to add a apic_dbg
> parameter of kvm.
>
> Signed-off-by: Yi Wang <wang.yi59@zte.com.cn>
> ---
> arch/x86/kvm/lapic.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
> index 9bf70cf..4d8f10f 100644
> --- a/arch/x86/kvm/lapic.c
> +++ b/arch/x86/kvm/lapic.c
> @@ -54,8 +54,13 @@
> #define PRIu64 "u"
> #define PRIo64 "o"
>
> +static int apic_dbg;
s/int/bool to get this to compile. And module params of this nature
should be tagged __read_mostly.
> +module_param(apic_dbg, bool, 0644);
> +
> /* #define apic_debug(fmt,arg...) printk(KERN_WARNING fmt,##arg) */
> -#define apic_debug(fmt, arg...) do {} while (0)
> +#define apic_debug(fmt, arg...) do { if (apic_dbg) \
> + printk(KERN_DEBUG fmt, ##arg); \
> +} while (0)
I don't think we want to do this unless there is a very, very strong
argument to do so. The reason debug messages like this are #ifdef'd
out is because they add conditional branches all over the place and
measurably increase the code size. E.g.: this patch would increase
KVM's code footprint by 1100+ bytes:
[Nr] Name Type Address Off Size ES Flg Lk Inf Al
[ 2] .text PROGBITS 0000000000000000 000070 04c282 00 AX 0 0 16
vs.
[ 2] .text PROGBITS 0000000000000000 000070 04c6d2 00 AX 0 0 16
>
> /* 14 is the version for Xeon and Pentium 8.4.8*/
> #define APIC_VERSION (0x14UL | ((KVM_APIC_LVT_NUM - 1) << 16))
> --
> 1.8.3.1
>
prev parent reply other threads:[~2019-05-08 21:59 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-07 6:37 [PATCH] [next] KVM: lapic: allow setting apic debug dynamically Yi Wang
2019-05-08 21:59 ` Sean Christopherson [this message]
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=20190508215931.GG19656@linux.intel.com \
--to=sean.j.christopherson@intel.com \
--cc=bp@alien8.de \
--cc=hpa@zytor.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=pbonzini@redhat.com \
--cc=rkrcmar@redhat.com \
--cc=tglx@linutronix.de \
--cc=wang.yi59@zte.com.cn \
--cc=x86@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 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.