forked from Minki/linux
tools/virtio/ringtest: tweaks for s390
Make ringtest work on s390 too. Signed-off-by: Halil Pasic <pasic@linux.vnet.ibm.com> Acked-by: Sascha Silbe <silbe@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
This commit is contained in:
parent
21f5eda9b8
commit
47a4c49af6
@ -26,6 +26,16 @@ static inline void wait_cycles(unsigned long long cycles)
|
||||
#define VMEXIT_CYCLES 500
|
||||
#define VMENTRY_CYCLES 500
|
||||
|
||||
#elif defined(__s390x__)
|
||||
static inline void wait_cycles(unsigned long long cycles)
|
||||
{
|
||||
asm volatile("0: brctg %0,0b" : : "d" (cycles));
|
||||
}
|
||||
|
||||
/* tweak me */
|
||||
#define VMEXIT_CYCLES 200
|
||||
#define VMENTRY_CYCLES 200
|
||||
|
||||
#else
|
||||
static inline void wait_cycles(unsigned long long cycles)
|
||||
{
|
||||
@ -81,6 +91,8 @@ extern unsigned ring_size;
|
||||
/* Is there a portable way to do this? */
|
||||
#if defined(__x86_64__) || defined(__i386__)
|
||||
#define cpu_relax() asm ("rep; nop" ::: "memory")
|
||||
#elif defined(__s390x__)
|
||||
#define cpu_relax() barrier()
|
||||
#else
|
||||
#define cpu_relax() assert(0)
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user