summaryrefslogtreecommitdiffstats
path: root/include/linux/rwsem.h
diff options
context:
space:
mode:
authorKirill Tkhai <ktkhai@virtuozzo.com>2017-09-29 19:06:28 +0300
committerIngo Molnar <mingo@kernel.org>2017-10-10 11:50:15 +0200
commit19c60923010b3f56f10ca1fb6d537c9cc852b3f1 (patch)
tree885cbcdb713272f54cd1baa3966d81b6cb7c4ff1 /include/linux/rwsem.h
parenta61ba2c8a48f150f5e6b6d14328fc7f1aa32969d (diff)
downloadlinux-19c60923010b3f56f10ca1fb6d537c9cc852b3f1.tar.gz
linux-19c60923010b3f56f10ca1fb6d537c9cc852b3f1.tar.bz2
linux-19c60923010b3f56f10ca1fb6d537c9cc852b3f1.zip
locking/arch, x86: Add __down_read_killable()
Similar to __down_write_killable(), add read killable primitive: extract current __down_read() code to macros and teach it to get different functions as slow_path argument: store ax register to ret, and add sp register and preserve its value. Add call_rwsem_down_read_failed_killable() assembly entry similar to call_rwsem_down_read_failed(): push dx register to stack in additional to common registers, as it's not declarated as modifiable in ____down_read(). Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: arnd@arndb.de Cc: avagin@virtuozzo.com Cc: davem@davemloft.net Cc: fenghua.yu@intel.com Cc: gorcunov@virtuozzo.com Cc: heiko.carstens@de.ibm.com Cc: hpa@zytor.com Cc: ink@jurassic.park.msu.ru Cc: mattst88@gmail.com Cc: rientjes@google.com Cc: rth@twiddle.net Cc: schwidefsky@de.ibm.com Cc: tony.luck@intel.com Cc: viro@zeniv.linux.org.uk Link: http://lkml.kernel.org/r/150670118802.23930.1316107715255410256.stgit@localhost.localdomain Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/linux/rwsem.h')
0 files changed, 0 insertions, 0 deletions