Blame src/perfctr-2.7.x/linux/drivers/perfctr/cpumask.h

Packit 577717
/* $Id: cpumask.h,v 1.11 2004/07/12 22:44:14 mikpe Exp $
Packit 577717
 * Performance-monitoring counters driver.
Packit 577717
 * Partial simulation of cpumask_t on non-cpumask_t kernels.
Packit 577717
 * Extension to allow inspecting a cpumask_t as array of ulong.
Packit 577717
 * Appropriate definition of perfctr_cpus_forbidden_mask.
Packit 577717
 *
Packit 577717
 * Copyright (C) 2003-2004  Mikael Pettersson
Packit 577717
 */
Packit 577717
Packit 577717
#ifdef CPU_ARRAY_SIZE
Packit 577717
#define PERFCTR_CPUMASK_NRLONGS	CPU_ARRAY_SIZE
Packit 577717
#else
Packit 577717
#define PERFCTR_CPUMASK_NRLONGS	1
Packit 577717
#endif
Packit 577717
Packit 577717
/* CPUs in `perfctr_cpus_forbidden_mask' must not use the
Packit 577717
   performance-monitoring counters. TSC use is unrestricted.
Packit 577717
   This is needed to prevent resource conflicts on hyper-threaded P4s. */
Packit 577717
#ifdef CONFIG_PERFCTR_CPUS_FORBIDDEN_MASK
Packit 577717
extern cpumask_t perfctr_cpus_forbidden_mask;
Packit 577717
#define perfctr_cpu_is_forbidden(cpu)	cpu_isset((cpu), perfctr_cpus_forbidden_mask)
Packit 577717
#else
Packit 577717
#define perfctr_cpus_forbidden_mask	CPU_MASK_NONE
Packit 577717
#define perfctr_cpu_is_forbidden(cpu)	0 /* cpu_isset() needs an lvalue :-( */
Packit 577717
#endif