lkml.org 
[lkml]   [2012]   [Mar]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/4 V16] Add functions to check if the host has stopped the vm
    On Wed, 14 Mar 2012 11:12:35 +0100, Jan Kiszka wrote:
    > On 2012-03-10 20:37, Eric B Munson wrote:
    >> When a host stops or suspends a VM it will set a flag to show this.
    >> The
    >> watchdog will use these functions to determine if a softlockup is
    >> real, or the
    >> result of a suspended VM.
    >>
    >
    > ...
    >
    >> diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
    >> index f8492da..4ba090c 100644
    >> --- a/arch/x86/kernel/kvmclock.c
    >> +++ b/arch/x86/kernel/kvmclock.c
    >> @@ -22,6 +22,7 @@
    >> #include <asm/msr.h>
    >> #include <asm/apic.h>
    >> #include <linux/percpu.h>
    >> +#include <linux/hardirq.h>
    >>
    >> #include <asm/x86_init.h>
    >> #include <asm/reboot.h>
    >> @@ -114,6 +115,26 @@ static void kvm_get_preset_lpj(void)
    >> preset_lpj = lpj;
    >> }
    >>
    >> +bool kvm_check_and_clear_guest_paused(void)
    >> +{
    >> + bool ret = false;
    >> + struct pvclock_vcpu_time_info *src;
    >> +
    >> + /*
    >> + * per_cpu() is safe here because this function is only called
    >> from
    >> + * timer functions where preemption is already disabled.
    >> + */
    >> + WARN_ON(!in_atomic());
    >> + src = &__get_cpu_var(hv_clock);
    >> + if ((src->flags & PVCLOCK_GUEST_STOPPED) != 0) {
    >> + __this_cpu_and(hv_clock.flags, ~PVCLOCK_GUEST_STOPPED);
    >> + ret = true;
    >> + }
    >> +
    >> + return ret;
    >> +}
    >> +EXPORT_SYMBOL_GPL(kvm_check_and_clear_guest_paused);
    >
    > Which module is going to use this? I failed to find it, but I may
    > have
    > missed something.
    >
    > The actual reason for this reply: this patches causes a compiler
    > warning
    > here, likely due to lacking include for EXPORT_SYMBOL_GPL:
    >
    > CC arch/x86/kernel/kvmclock.o
    > /data/linux-kvm/arch/x86/kernel/kvmclock.c:136:1: warning: data
    > definition has no type or storage class
    > /data/linux-kvm/arch/x86/kernel/kvmclock.c:136:1: warning: type
    > defaults
    > to ‘int’ in declaration of ‘EXPORT_SYMBOL_GPL’
    > /data/linux-kvm/arch/x86/kernel/kvmclock.c:136:1: warning: parameter
    > names (without types) in function declaration
    >
    > Jan


    There isn't a module that will use it, I was under the (mistaken)
    understanding that
    the EXPORT was necessary for use in kernel/watchdog.c. Give that it
    isn't, I will
    post a patch to remove it shortly.

    Eric
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2012-03-15 23:17    [W:0.028 / U:59.896 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site