On 02/09/2016 05:05 AM, Andrew Cooper wrote:
On 09/02/16 04:15, Doug Goldstein wrote:
diff --git a/xen/include/asm-x86/vpmu.h b/xen/include/asm-x86/vpmu.h
index 67e73dc..4750a1f 100644
--- a/xen/include/asm-x86/vpmu.h
+++ b/xen/include/asm-x86/vpmu.h
@@ -89,10 +89,14 @@ static inline void vpmu_clear(struct vpmu_struct *vpmu)
{
vpmu->flags = 0;
}
+#ifdef CONFIG_XENOPROF
static inline bool_t vpmu_is_set(const struct vpmu_struct *vpmu, const u32
mask)
{
return !!(vpmu->flags & mask);
}
+#else
+#define vpmu_is_set(x, y) (!!0)
Why vpmu_is_set()? this wasn't guarded in v1.
This looks wrong to me. vpmu_is_set() is almost exclusively used by VPMU
code.
+#endif
static inline bool_t vpmu_are_all_set(const struct vpmu_struct *vpmu,
const u32 mask)
{
@@ -121,8 +125,13 @@ static inline int vpmu_do_rdmsr(unsigned int msr, uint64_t
*msr_content)
return vpmu_do_msr(msr, msr_content, 0, 0);
}
+#ifdef CONFIG_XENOPROF
extern int acquire_pmu_ownership(int pmu_ownership);
extern void release_pmu_ownership(int pmu_ownership);
+#else
+#define acquire_pmu_ownership(x) (1)
+#define release_pmu_ownership(x)
Hmm... acquire_pmu_ownship() vs acquire_pmu_ownership() and
release_pmu_ownship() vs. release_pmu_ownership().
Since you are working with this code, can you also clean that up? It
looks to me that at some point names got messed up.
-boris
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel