Skip to content

Commit

Permalink
locking/rwsem: Get rid of __down_write_nested()
Browse files Browse the repository at this point in the history
This is no longer used anywhere and all callers (__down_write()) use
0 as a subclass. Ditch __down_write_nested() to make the code easier
to follow.

This shouldn't introduce any functional change.

Signed-off-by: Michal Hocko <[email protected]>
Acked-by: Davidlohr Bueso <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Chris Zankel <[email protected]>
Cc: David S. Miller <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Max Filippov <[email protected]>
Cc: Paul E. McKenney <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Signed-off-by: Davidlohr Bueso <[email protected]>
Cc: Signed-off-by: Jason Low <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Tony Luck <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Ingo Molnar <[email protected]>
  • Loading branch information
Michal Hocko authored and Ingo Molnar committed Apr 13, 2016
1 parent 1c74a7f commit f8e04d8
Show file tree
Hide file tree
Showing 7 changed files with 5 additions and 36 deletions.
7 changes: 1 addition & 6 deletions arch/s390/include/asm/rwsem.h
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ static inline int __down_read_trylock(struct rw_semaphore *sem)
/*
* lock for writing
*/
static inline void __down_write_nested(struct rw_semaphore *sem, int subclass)
static inline void __down_write(struct rw_semaphore *sem)
{
signed long old, new, tmp;

Expand All @@ -108,11 +108,6 @@ static inline void __down_write_nested(struct rw_semaphore *sem, int subclass)
rwsem_down_write_failed(sem);
}

static inline void __down_write(struct rw_semaphore *sem)
{
__down_write_nested(sem, 0);
}

/*
* trylock for writing -- returns 1 if successful, 0 if contention
*/
Expand Down
5 changes: 0 additions & 5 deletions arch/sh/include/asm/rwsem.h
Original file line number Diff line number Diff line change
Expand Up @@ -114,11 +114,6 @@ static inline void __downgrade_write(struct rw_semaphore *sem)
rwsem_downgrade_wake(sem);
}

static inline void __down_write_nested(struct rw_semaphore *sem, int subclass)
{
__down_write(sem);
}

/*
* implement exchange and add functionality
*/
Expand Down
7 changes: 1 addition & 6 deletions arch/sparc/include/asm/rwsem.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ static inline int __down_read_trylock(struct rw_semaphore *sem)
/*
* lock for writing
*/
static inline void __down_write_nested(struct rw_semaphore *sem, int subclass)
static inline void __down_write(struct rw_semaphore *sem)
{
long tmp;

Expand All @@ -55,11 +55,6 @@ static inline void __down_write_nested(struct rw_semaphore *sem, int subclass)
rwsem_down_write_failed(sem);
}

static inline void __down_write(struct rw_semaphore *sem)
{
__down_write_nested(sem, 0);
}

static inline int __down_write_trylock(struct rw_semaphore *sem)
{
long tmp;
Expand Down
7 changes: 1 addition & 6 deletions arch/x86/include/asm/rwsem.h
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ static inline int __down_read_trylock(struct rw_semaphore *sem)
/*
* lock for writing
*/
static inline void __down_write_nested(struct rw_semaphore *sem, int subclass)
static inline void __down_write(struct rw_semaphore *sem)
{
long tmp;
asm volatile("# beginning down_write\n\t"
Expand All @@ -116,11 +116,6 @@ static inline void __down_write_nested(struct rw_semaphore *sem, int subclass)
: "memory", "cc");
}

static inline void __down_write(struct rw_semaphore *sem)
{
__down_write_nested(sem, 0);
}

/*
* trylock for writing -- returns 1 if successful, 0 if contention
*/
Expand Down
7 changes: 1 addition & 6 deletions include/asm-generic/rwsem.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ static inline int __down_read_trylock(struct rw_semaphore *sem)
/*
* lock for writing
*/
static inline void __down_write_nested(struct rw_semaphore *sem, int subclass)
static inline void __down_write(struct rw_semaphore *sem)
{
long tmp;

Expand All @@ -63,11 +63,6 @@ static inline void __down_write_nested(struct rw_semaphore *sem, int subclass)
rwsem_down_write_failed(sem);
}

static inline void __down_write(struct rw_semaphore *sem)
{
__down_write_nested(sem, 0);
}

static inline int __down_write_trylock(struct rw_semaphore *sem)
{
long tmp;
Expand Down
1 change: 0 additions & 1 deletion include/linux/rwsem-spinlock.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ struct rw_semaphore {
extern void __down_read(struct rw_semaphore *sem);
extern int __down_read_trylock(struct rw_semaphore *sem);
extern void __down_write(struct rw_semaphore *sem);
extern void __down_write_nested(struct rw_semaphore *sem, int subclass);
extern int __down_write_trylock(struct rw_semaphore *sem);
extern void __up_read(struct rw_semaphore *sem);
extern void __up_write(struct rw_semaphore *sem);
Expand Down
7 changes: 1 addition & 6 deletions kernel/locking/rwsem-spinlock.c
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ int __down_read_trylock(struct rw_semaphore *sem)
/*
* get a write lock on the semaphore
*/
void __sched __down_write_nested(struct rw_semaphore *sem, int subclass)
void __sched __down_write(struct rw_semaphore *sem)
{
struct rwsem_waiter waiter;
struct task_struct *tsk;
Expand Down Expand Up @@ -227,11 +227,6 @@ void __sched __down_write_nested(struct rw_semaphore *sem, int subclass)
raw_spin_unlock_irqrestore(&sem->wait_lock, flags);
}

void __sched __down_write(struct rw_semaphore *sem)
{
__down_write_nested(sem, 0);
}

/*
* trylock for writing -- returns 1 if successful, 0 if contention
*/
Expand Down

0 comments on commit f8e04d8

Please sign in to comment.