android_kernel_xiaomi_sm8350/arch/powerpc/kernel
Paul Mackerras d095cd46da perfcounters/powerpc: Make exclude_kernel bit work on Apple G5 processors
Currently, setting hw_event.exclude_kernel does nothing on the PPC970
variants used in Apple G5 machines, because they have the HV (hypervisor)
bit in the MSR forced to 1, so as far as the PMU is concerned, the
kernel runs in hypervisor mode.  Thus we have to use the MMCR0_FCHV
(freeze counters in hypervisor mode) bit rather than the MMCR0_FCS
(freeze counters in supervisor mode) bit.

This checks the MSR.HV bit at startup, and if it is set, we set the
freeze_counters_kernel variable to MMCR0_FCHV (it was initialized to
MMCR0_FCS).  We then use that whenever we need to exclude kernel events.

Signed-off-by: Paul Mackerras <paulus@samba.org>
2009-02-23 23:01:28 +11:00
..
vdso32 powerpc/mm: Introduce MMU features 2008-12-21 14:21:16 +11:00
vdso64 powerpc/mm: Introduce MMU features 2008-12-21 14:21:16 +11:00
.gitignore
align.c
asm-offsets.c Merge commit 'v2.6.29-rc2' into perfcounters/core 2009-01-21 16:37:27 +01:00
audit.c
btext.c
cacheinfo.c powerpc/cacheinfo: Rename cache_dir per-cpu variable 2009-01-13 14:48:02 +11:00
cacheinfo.h powerpc: Rewrite sysfs processor cache info code 2009-01-08 16:25:10 +11:00
clock.c
compat_audit.c
cpu_setup_6xx.S
cpu_setup_44x.S powerpc/virtex5: Fix Virtex5 machine check handling 2008-12-05 14:34:26 -05:00
cpu_setup_pa6t.S
cpu_setup_ppc970.S
cputable.c powerpc/mm: Introduce MMU features 2008-12-21 14:21:16 +11:00
crash_dump.c powerpc: Support for relocatable kdump kernel 2008-10-22 15:01:22 +11:00
crash.c
dma-iommu.c powerpc: Change u64/s64 to a long long integer type 2009-01-13 14:47:59 +11:00
dma.c powerpc: Add sync_*_for_* to dma_ops 2008-12-03 20:46:36 +11:00
entry_32.S powerpc: ftrace, do nothing in mcount call for dyn ftrace 2008-11-28 14:07:45 +01:00
entry_64.S powerpc: Provide a way to defer perf counter work until interrupts are enabled 2009-01-09 19:48:17 +11:00
firmware.c
fpu.S
ftrace.c powerpc/ftrace: Fix math to calculate offset in TOC 2009-02-10 14:39:08 +11:00
head_8xx.S
head_32.S powerpc/32: Add the ability for a classic ppc kernel to be loaded at 32M 2008-12-23 15:13:29 +11:00
head_40x.S
head_44x.S powerpc/44x: Support 16K/64K base page sizes on 44x 2008-12-29 09:53:25 +11:00
head_64.S powerpc/powermac: Fix occasional SMP boot failure 2009-01-13 14:48:03 +11:00
head_booke.h
head_fsl_booke.S powerpc/e500mc: Doorbells need to be taken w/exceptions disabled 2009-01-13 17:46:24 -06:00
ibmebus.c powerpc: struct device - replace bus_id with dev_name(), dev_set_name() 2008-12-16 15:53:38 +11:00
idle_6xx.S
idle_e500.S
idle_power4.S
idle.c powerpc: ftrace, do not latency trace idle 2008-11-20 10:51:15 -08:00
init_task.c take init_fs to saner place 2008-12-31 18:07:42 -05:00
io.c
iomap.c
iommu.c powerpc: Change u64/s64 to a long long integer type 2009-01-13 14:47:59 +11:00
irq.c Merge branch 'core/percpu' into perfcounters/core 2009-01-18 18:15:49 +01:00
isa-bridge.c
kgdb.c
kprobes.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2009-01-07 11:31:52 -08:00
l2cr_6xx.S
legacy_serial.c
lparcfg.c powerpc: Change u64/s64 to a long long integer type 2009-01-13 14:47:59 +11:00
machine_kexec_32.c
machine_kexec_64.c powerpc/32: Setup OF properties for kdump 2008-12-23 15:13:29 +11:00
machine_kexec.c powerpc/kexec: Check crash_base for relocatable kernel 2009-01-13 14:47:59 +11:00
Makefile Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/perfcounters into perfcounters/core 2009-01-11 02:44:08 +01:00
misc_32.S powerpc/44x: Support 16K/64K base page sizes on 44x 2008-12-29 09:53:25 +11:00
misc_64.S powerpc: Kexec exit should not use magic numbers 2008-10-31 16:11:44 +11:00
misc.S
module_32.c powerpc/ppc32: ftrace, dynamic ftrace to handle modules 2008-11-20 10:52:53 -08:00
module_64.c powerpc/ppc64: ftrace, handle module trampolines for dyn ftrace 2008-11-20 10:52:28 -08:00
module.c powerpc/mm: Introduce MMU features 2008-12-21 14:21:16 +11:00
msi.c
nvram_64.c
of_device.c powerpc: struct device - replace bus_id with dev_name(), dev_set_name() 2008-12-16 15:53:38 +11:00
of_platform.c
paca.c powerpc: Update page-in counter for CMM 2008-11-05 22:08:28 +11:00
pci_32.c powerpc: Remove `have_of' global variable 2008-12-16 15:52:57 +11:00
pci_64.c powerpc: Cleanup from l64 to ll64 change: arch code 2009-01-13 14:47:59 +11:00
pci_dn.c
pci-common.c powerpc/pci: mmap anonymous memory when legacy_mem doesn't exist 2009-02-10 14:39:08 +11:00
perf_counter.c perfcounters/powerpc: Make exclude_kernel bit work on Apple G5 processors 2009-02-23 23:01:28 +11:00
pmc.c
power6-pmu.c powerpc/perf_counter: Add support for POWER6 2009-01-10 16:35:01 +11:00
ppc32.h
ppc970-pmu.c powerpc/perf_counter: Add support for PPC970 family 2009-01-10 16:34:07 +11:00
ppc_ksyms.c powerpc: Export cacheable_memzero as its now used in a driver 2009-01-08 16:25:17 +11:00
ppc_save_regs.S powerpc: Prepare xmon_save_regs for use with kdump 2008-12-23 15:13:28 +11:00
proc_ppc64.c
process.c [PATCH] idle cputime accounting 2008-12-31 15:11:46 +01:00
prom_init_check.sh powerpc: Fix build issue with CONFIG_RELOCATABLE=y 2008-10-21 15:17:49 +11:00
prom_init.c powerpc: Use correct type in prom_init.c 2009-01-08 16:25:16 +11:00
prom_parse.c PCI: powerpc: use generic pci_swizzle_interrupt_pin() 2009-01-07 11:12:52 -08:00
prom.c powerpc: Get the number of SLBs from "slb-size" property 2009-01-16 16:15:16 +11:00
ptrace32.c
ptrace.c
reloc_64.S
rtas_flash.c
rtas_pci.c powerpc/pci: Fix various pseries PCI hotplug issues 2008-11-06 09:31:52 +11:00
rtas-proc.c
rtas-rtc.c
rtas.c powerpc/pseries: Check for GIQ indicator before calling set-indicator 2008-12-16 15:53:13 +11:00
setup_32.c powerpc/32: Wire up the trampoline code for kdump 2008-12-23 15:13:29 +11:00
setup_64.c powerpc: Change u64/s64 to a long long integer type 2009-01-13 14:47:59 +11:00
setup-common.c powerpc: Move memory size print into common show_cpuinfo for 32-bit 2008-10-22 11:00:25 +11:00
setup.h
signal_32.c powerpc: Fix msr check in compat_sys_swapcontext 2008-11-11 19:42:22 +11:00
signal_64.c powerpc: Fix swapcontext system for VSX + old ucontext size 2008-10-31 16:12:00 +11:00
signal.c
signal.h x86, um: get rid of uml signal.h 2008-10-22 22:55:20 -07:00
smp-tbsync.c powerpc: Silence software timebase sync 2008-11-05 22:08:28 +11:00
smp.c Merge branch 'cpus4096-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-01-02 11:44:09 -08:00
softemu8xx.c
stacktrace.c
suspend.c
swsusp_32.S powerpc/mm: Introduce MMU features 2008-12-21 14:21:16 +11:00
swsusp_64.c
swsusp_asm64.S
swsusp.c powerpc/mm: Split mmu_context handling 2008-12-21 14:21:15 +11:00
sys_ppc32.c compat: generic compat get/settimeofday 2008-10-16 11:21:33 -07:00
syscalls.c
sysfs.c powerpc: Rewrite sysfs processor cache info code 2009-01-08 16:25:10 +11:00
systbl_chk.c
systbl_chk.sh
systbl.S
tau_6xx.c
time.c Merge branch 'cputime' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 2009-01-03 11:56:24 -08:00
traps.c powerpc: Add SPE/EFP math emulation for E500v1/v2 processors. 2008-12-03 08:19:16 -06:00
udbg_16550.c powerpc: Unsigned speed cannot be negative in udbg_16559.c 2008-10-21 15:17:47 +11:00
udbg.c
vdso.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc 2008-12-28 16:54:33 -08:00
vecemu.c
vector.S
vio.c powerpc/pseries: Correct VIO bus accounting problem in CMO env. 2009-01-28 17:15:52 +11:00
vmlinux.lds.S Merge commit 'v2.6.29-rc2' into perfcounters/core 2009-01-21 16:37:27 +01:00