From: Carsten Haitzler carsten.haitzler@foss.arm.com
In one case the arg is actually just an int passed into the arg and was being casted from ptr -> long -> int. Now goes through user_intptr_t.
Signed-off-by: Carsten Haitzler Carsten.Haitzler@arm.com --- drivers/input/evdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c index ea4dab2a53f7..066dd1d8cfe4 100644 --- a/drivers/input/evdev.c +++ b/drivers/input/evdev.c @@ -1074,7 +1074,7 @@ static long evdev_do_ioctl(struct file *file, unsigned int cmd, return 0;
case EVIOCRMFF: - return input_ff_erase(dev, (int)(unsigned long) p, file); + return input_ff_erase(dev, (int)(user_intptr_t) p, file);
case EVIOCGEFFECTS: i = test_bit(EV_FF, dev->evbit) ?
On 25/01/2023 14:02, carsten.haitzler@foss.arm.com wrote:
From: Carsten Haitzler carsten.haitzler@foss.arm.com
In one case the arg is actually just an int passed into the arg and was being casted from ptr -> long -> int. Now goes through user_intptr_t.
Signed-off-by: Carsten Haitzler Carsten.Haitzler@arm.com
drivers/input/evdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c index ea4dab2a53f7..066dd1d8cfe4 100644 --- a/drivers/input/evdev.c +++ b/drivers/input/evdev.c @@ -1074,7 +1074,7 @@ static long evdev_do_ioctl(struct file *file, unsigned int cmd, return 0; case EVIOCRMFF:
return input_ff_erase(dev, (int)(unsigned long) p, file);
return input_ff_erase(dev, (int)(user_intptr_t) p, file);
case EVIOCGEFFECTS: i = test_bit(EV_FF, dev->evbit) ?
Thanks, looks all good. Merged together with the HID patch, before the defconfig patch to avoid getting a warning.
Kevin
linux-morello@op-lists.linaro.org