lkml.org 
[lkml]   [2007]   [Dec]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 7/10] change rdpmc interface
    Date
    the rdpmc instruction gets a counter argument in rcx. However,
    the i386 version was ignoring it. To make both x86_64 and i386 versions
    the same, as well as to comply with the instruction semantics, this
    parameter is added in the i386 version

    Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com>
    ---
    include/asm-x86/msr.h | 6 +++---
    include/asm-x86/paravirt.h | 2 +-
    2 files changed, 4 insertions(+), 4 deletions(-)

    diff --git a/include/asm-x86/msr.h b/include/asm-x86/msr.h
    index 0296358..ce2a257 100644
    --- a/include/asm-x86/msr.h
    +++ b/include/asm-x86/msr.h
    @@ -90,10 +90,10 @@ static inline unsigned long long native_read_tsc(void)
    return val;
    }

    -static inline unsigned long long native_read_pmc(void)
    +static inline unsigned long long native_read_pmc(int counter)
    {
    unsigned long long val;
    - asm volatile("rdpmc" : "=A" (val));
    + asm volatile("rdpmc" : "=A" (val) : "c" (counter));
    return val;
    }

    @@ -150,7 +150,7 @@ static inline int wrmsr_safe(u32 __msr, u32 __low, u32 __high)

    #define rdpmc(counter,low,high) \
    do { \
    - u64 _l = native_read_pmc(); \
    + u64 _l = native_read_pmc(counter); \
    (low) = (u32)_l; \
    (high) = (u32)(_l >> 32); \
    } while(0)
    diff --git a/include/asm-x86/paravirt.h b/include/asm-x86/paravirt.h
    index f59d370..4a7be97 100644
    --- a/include/asm-x86/paravirt.h
    +++ b/include/asm-x86/paravirt.h
    @@ -118,7 +118,7 @@ struct pv_cpu_ops {
    int (*write_msr)(unsigned int msr, u64 val);

    u64 (*read_tsc)(void);
    - u64 (*read_pmc)(void);
    + u64 (*read_pmc)(int counter);

    /* These two are jmp to, not actually called. */
    void (*irq_enable_sysexit)(void);
    --
    1.4.4.2


    \
     
     \ /
      Last update: 2007-12-04 14:59    [W:0.024 / U:0.924 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site