From cb34b1a3bc50bb5d663b84d1458236cac9b80a9f Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Mon, 11 Jan 2021 14:45:54 +0100 Subject: [PATCH] Revert "rwsem: Implement down_read_interruptible" This reverts commit d390fc97df62dd76770eeab53f78e8ce2a07113d which is commit 31784cff7ee073b34d6eddabb95e3be2880a425c upstream. It breaks the API and we don't need it right now in the 5.4 tree. Bug: 161946584 Signed-off-by: Greg Kroah-Hartman Change-Id: I5b47edd0c3e8370136dbba6a1df1ae8dcb0205bf --- include/linux/rwsem.h | 1 - kernel/locking/rwsem.c | 26 -------------------------- 2 files changed, 27 deletions(-) diff --git a/include/linux/rwsem.h b/include/linux/rwsem.h index 729965080acb..4c5770f7d40f 100644 --- a/include/linux/rwsem.h +++ b/include/linux/rwsem.h @@ -127,7 +127,6 @@ static inline int rwsem_is_contended(struct rw_semaphore *sem) * lock for reading */ extern void down_read(struct rw_semaphore *sem); -extern int __must_check down_read_interruptible(struct rw_semaphore *sem); extern int __must_check down_read_killable(struct rw_semaphore *sem); /* diff --git a/kernel/locking/rwsem.c b/kernel/locking/rwsem.c index 5598ca9b70f7..a459b2b004d2 100644 --- a/kernel/locking/rwsem.c +++ b/kernel/locking/rwsem.c @@ -1370,18 +1370,6 @@ inline void __down_read(struct rw_semaphore *sem) } } -static inline int __down_read_interruptible(struct rw_semaphore *sem) -{ - if (!rwsem_read_trylock(sem)) { - if (IS_ERR(rwsem_down_read_slowpath(sem, TASK_INTERRUPTIBLE))) - return -EINTR; - DEBUG_RWSEMS_WARN_ON(!is_rwsem_reader_owned(sem), sem); - } else { - rwsem_set_reader_owned(sem); - } - return 0; -} - static inline int __down_read_killable(struct rw_semaphore *sem) { if (!rwsem_read_trylock(sem)) { @@ -1532,20 +1520,6 @@ void __sched down_read(struct rw_semaphore *sem) } EXPORT_SYMBOL(down_read); -int __sched down_read_interruptible(struct rw_semaphore *sem) -{ - might_sleep(); - rwsem_acquire_read(&sem->dep_map, 0, 0, _RET_IP_); - - if (LOCK_CONTENDED_RETURN(sem, __down_read_trylock, __down_read_interruptible)) { - rwsem_release(&sem->dep_map, _RET_IP_); - return -EINTR; - } - - return 0; -} -EXPORT_SYMBOL(down_read_interruptible); - int __sched down_read_killable(struct rw_semaphore *sem) { might_sleep();