Commit "tty: Modify ioctl to use user_uintptr_t" converted most of the tty ioctl handlers and helpers to propagate the argument as user_uintptr_t instead of unsigned long. n_tty_ioctl_helper() was however missed, and as a result of number of commands receive a truncated pointer in PCuABI.
Switch to representing arg as user_uintptr_t in n_tty_ioctl_helper() as well, so that a pointer argument is fully propagated in PCuABI.
Fixes: ("tty: Modify ioctl to use user_uintptr_t") Signed-off-by: Kevin Brodsky kevin.brodsky@arm.com --- drivers/tty/tty_ioctl.c | 2 +- include/linux/tty.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/tty/tty_ioctl.c b/drivers/tty/tty_ioctl.c index 79fa230994f2..7a7705ee0cb2 100644 --- a/drivers/tty/tty_ioctl.c +++ b/drivers/tty/tty_ioctl.c @@ -954,7 +954,7 @@ int tty_perform_flush(struct tty_struct *tty, unsigned long arg) EXPORT_SYMBOL_GPL(tty_perform_flush);
int n_tty_ioctl_helper(struct tty_struct *tty, unsigned int cmd, - unsigned long arg) + user_uintptr_t arg) { int retval;
diff --git a/include/linux/tty.h b/include/linux/tty.h index a2752f8f1cdd..86797ca61512 100644 --- a/include/linux/tty.h +++ b/include/linux/tty.h @@ -497,7 +497,7 @@ static inline int tty_audit_push(void)
/* tty_ioctl.c */ int n_tty_ioctl_helper(struct tty_struct *tty, unsigned int cmd, - unsigned long arg); + user_uintptr_t arg);
/* vt.c */