search for: read_tscp

Displaying 8 results from an estimated 8 matches for "read_tscp".

Did you mean: read_tsc
2015 Jun 17
0
[PATCH v3 03/18] x86/tsc/paravirt: Remove the read_tsc and read_tscp paravirt hooks
+ paravirt list. On Tue, Jun 16, 2015 at 05:35:51PM -0700, Andy Lutomirski wrote: > We've had read_tsc and read_tscp paravirt hooks since the very > beginning of paravirt, i.e., d3561b7fa0fb ("[PATCH] paravirt: header > and stubs for paravirtualisation"). AFAICT the only paravirt guest > implementation that ever replaced these calls was vmware, and it's > gone. Arguably even vmware sho...
2015 Jun 17
0
[PATCH v3 03/18] x86/tsc/paravirt: Remove the read_tsc and read_tscp paravirt hooks
+ paravirt list. On Tue, Jun 16, 2015 at 05:35:51PM -0700, Andy Lutomirski wrote: > We've had read_tsc and read_tscp paravirt hooks since the very > beginning of paravirt, i.e., d3561b7fa0fb ("[PATCH] paravirt: header > and stubs for paravirtualisation"). AFAICT the only paravirt guest > implementation that ever replaced these calls was vmware, and it's > gone. Arguably even vmware sho...
2007 Apr 18
0
[PATCH] paravirt_ops x86_64 , take 2
...m volatile("wbinvd": : :"memory"); } -static unsigned long native_read_msr(unsigned int msr, int *err) +static u64 native_read_msr(unsigned int msr, int *err) { unsigned long val; @@ -287,6 +290,13 @@ static u64 native_read_tsc(void) return val; } +static u64 native_read_tscp(int *aux) +{ + u64 val; + asm volatile ("rdtscp" : "=A" (val), "=c" (aux)); + return val; +} + static u64 native_read_pmc(void) { unsigned long val; @@ -463,7 +473,8 @@ void native_pmd_clear(pmd_t *pmd) /* These are in entry.S */ extern void native_iret(void);...
2007 Apr 18
0
[PATCH] paravirt_ops x86_64 , take 2
...m volatile("wbinvd": : :"memory"); } -static unsigned long native_read_msr(unsigned int msr, int *err) +static u64 native_read_msr(unsigned int msr, int *err) { unsigned long val; @@ -287,6 +290,13 @@ static u64 native_read_tsc(void) return val; } +static u64 native_read_tscp(int *aux) +{ + u64 val; + asm volatile ("rdtscp" : "=A" (val), "=c" (aux)); + return val; +} + static u64 native_read_pmc(void) { unsigned long val; @@ -463,7 +473,8 @@ void native_pmd_clear(pmd_t *pmd) /* These are in entry.S */ extern void native_iret(void);...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 01/17] paravirt_ops - core changes
...ry"); +} + +static void native_halt(void) +{ + asm volatile("hlt": : :"memory"); +} + +static u64 native_read_tsc(void) +{ + unsigned long a, b; + asm volatile("rdtsc" : "=a" (a), "=d" (b)); + return a | (b << 32); +} + +static u64 native_read_tscp(int *aux) +{ + u64 a, b; + asm volatile ("rdtscp" : "=a" (a), "=b" (b), "=c" (aux)); + return a | (b << 32); +} + +static u64 native_read_pmc(void) +{ + unsigned long a, b; + asm volatile("rdpmc" : "=a" (a), "=b" (b)); + re...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 01/17] paravirt_ops - core changes
...ry"); +} + +static void native_halt(void) +{ + asm volatile("hlt": : :"memory"); +} + +static u64 native_read_tsc(void) +{ + unsigned long a, b; + asm volatile("rdtsc" : "=a" (a), "=d" (b)); + return a | (b << 32); +} + +static u64 native_read_tscp(int *aux) +{ + u64 a, b; + asm volatile ("rdtscp" : "=a" (a), "=b" (b), "=c" (aux)); + return a | (b << 32); +} + +static u64 native_read_pmc(void) +{ + unsigned long a, b; + asm volatile("rdpmc" : "=a" (a), "=b" (b)); + re...
2007 Dec 20
6
[PATCH 0/15] adjust pvops to accomodate its x86_64 variant
Hi folks, With this series, the bulk of the work of pvops64 is done. Here, I integrate most of the paravirt.c and paravirt.h files, making them applicable to both architectures. CONFIG_PARAVIRT is _not_ present yet. Basically, this code is missing page table integration (patches currently being worked on by Jeremy). Enjoy
2007 Dec 20
6
[PATCH 0/15] adjust pvops to accomodate its x86_64 variant
Hi folks, With this series, the bulk of the work of pvops64 is done. Here, I integrate most of the paravirt.c and paravirt.h files, making them applicable to both architectures. CONFIG_PARAVIRT is _not_ present yet. Basically, this code is missing page table integration (patches currently being worked on by Jeremy). Enjoy