On Tue, May 29, 2018 at 07:07:40PM +0100, Mark Rutland wrote: > In ldsem_cmpxchg a pointer to unsigned long is passed to > atomic_long_cmpxchg(), which expects a pointer to atomic_long_t. > > In preparation for making the atomic_long_* APIs type safe, add a cast > before passing the value to atomic_long_cmpxchg(). Similar is already > done in ldsem_atomic_update() when it calls atomic_long_add_return(). > > Signed-off-by: Mark Rutland <[email protected]> > Cc: Boqun Feng <[email protected]> > Cc: Peter Zijlstra <[email protected]> > Cc: Will Deacon <[email protected]> > Cc: Greg Kroah-Hartman <[email protected]> > Cc: Jiri Slaby <[email protected]> > --- > drivers/tty/tty_ldsem.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/tty/tty_ldsem.c b/drivers/tty/tty_ldsem.c > index 37a91b3df980..5f8aef97973f 100644 > --- a/drivers/tty/tty_ldsem.c > +++ b/drivers/tty/tty_ldsem.c > @@ -86,7 +86,7 @@ static inline long ldsem_atomic_update(long delta, struct > ld_semaphore *sem) > */ > static inline int ldsem_cmpxchg(long *old, long new, struct ld_semaphore > *sem) > { > - long tmp = atomic_long_cmpxchg(&sem->count, *old, new); > + long tmp = atomic_long_cmpxchg((atomic_long_t *)&sem->count, *old, new); > if (tmp == *old) { > *old = new; > return 1; > -- > 2.11.0
Acked-by: Greg Kroah-Hartman <[email protected]>

