[PATCH] Directed yield: direct yield of spinlocks for s390.
Use the new diagnose 0x9c in the spinlock implementation for s390. It yields the remaining timeslice of the virtual cpu that tries to acquire a lock to the virtual cpu that is the current holder of the lock. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:

committed by
Linus Torvalds

parent
cdc39363d3
commit
3c1fcfe229
@@ -250,6 +250,17 @@ startup_continue:
|
||||
oi 7(%r12),0x80 # set IDTE flag
|
||||
0:
|
||||
|
||||
#
|
||||
# find out if the diag 0x9c is available
|
||||
#
|
||||
la %r1,0f-.LPG1(%r13) # set program check address
|
||||
stg %r1,__LC_PGM_NEW_PSW+8
|
||||
stap __LC_CPUID+4 # store cpu address
|
||||
lh %r1,__LC_CPUID+4
|
||||
diag %r1,0,0x9c # test diag 0x9c
|
||||
oi 6(%r12),1 # set diag9c flag
|
||||
0:
|
||||
|
||||
#
|
||||
# find out if we have the MVCOS instruction
|
||||
#
|
||||
|
Reference in New Issue
Block a user