~ubuntu-branches/ubuntu/quantal/linux-ti-omap4/quantal

« back to all changes in this revision

Viewing changes to arch/arm/kernel/perf_event_v7.c

  • Committer: Package Import Robot
  • Author(s): Paolo Pisati, Paolo Pisati, Ubuntu: 3.2.0-19.31, Ubuntu: 3.2.0-19.30
  • Date: 2012-03-21 15:23:51 UTC
  • Revision ID: package-import@ubuntu.com-20120321152351-ya52awpl9cmqlwrs
Tags: 3.2.0-1410.13
[ Paolo Pisati ]

* rebased on Ubuntu-3.2.0-19.31

[ Ubuntu: 3.2.0-19.31 ]

* d-i: Add dm-multipath and scsi device handlers
  - LP: #959749
* d-i: Move multipath modules into their own udeb
  - LP: #598251, #959749
* [Config] Auto-detect do_tools setting
* [Config] correctly specify CROSS_COMPILE for tools build
* [Config] CONFIG_DRM_PSB_CDV=n
* Rebase to v3.2.12
* powerpc/pmac: Fix SMP kernels on pre-core99 UP machines
  - LP: #959959
* rebase to v3.2.12

[ Ubuntu: 3.2.0-19.30 ]

* [Config] Fix typeo in the Hyper-V module names
* [Config] Move kernels to "Section: kernel"
  - LP: #499557
* SAUCE: AppArmor: Add ability to load extended policy
* SAUCE: AppArmor: Add the ability to mediate mount
* SAUCE: AppArmor: Add profile introspection file to interface
* SAUCE: AppArmor: basic networking rules
* [Config] Disable CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER
  - LP: #952035
* Rebase to v3.2.10
* [Config] Update configs after rebase to v3.2.10
* Rebase to v3.2.11
* [Config] Disable CONFIG_STUB_POULSBO
  - LP: #899244
* [Config] Add CONFIG_DRM_PSB check to enforcer
  - LP: #899244
* [Config] Drop non-SMP powerpc
* net/hyperv: Use the built-in macro KBUILD_MODNAME for this driver
* x86: Derandom delay_tsc for 64 bit
* Bluetooth: Fix l2cap conn failures for ssp devices
  - LP: #872044
* KVM: x86: extend "struct x86_emulate_ops" with "get_cpuid"
  - LP: #917842
  - CVE-2012-0045
* KVM: x86: fix missing checks in syscall emulation
  - LP: #917842
  - CVE-2012-0045
* rebase to v3.2.11
* rebase to v3.2.10

Show diffs side-by-side

added added

removed removed

Lines of Context:
878
878
 
879
879
        counter = ARMV7_IDX_TO_COUNTER(idx);
880
880
        asm volatile("mcr p15, 0, %0, c9, c14, 2" : : "r" (BIT(counter)));
 
881
        isb();
 
882
        /* Clear the overflow flag in case an interrupt is pending. */
 
883
        asm volatile("mcr p15, 0, %0, c9, c12, 3" : : "r" (BIT(counter)));
 
884
        isb();
 
885
 
881
886
        return idx;
882
887
}
883
888
 
1024
1029
                struct perf_event *event = cpuc->events[idx];
1025
1030
                struct hw_perf_event *hwc;
1026
1031
 
 
1032
                /* Ignore if we don't have an event. */
 
1033
                if (!event)
 
1034
                        continue;
 
1035
 
1027
1036
                /*
1028
1037
                 * We have a single interrupt for all counters. Check that
1029
1038
                 * each counter has overflowed before we process it.
1032
1041
                        continue;
1033
1042
 
1034
1043
                hwc = &event->hw;
1035
 
                armpmu_event_update(event, hwc, idx, 1);
 
1044
                armpmu_event_update(event, hwc, idx);
1036
1045
                data.period = event->hw.last_period;
1037
1046
                if (!armpmu_event_set_period(event, hwc, idx))
1038
1047
                        continue;