serial_core:recognize invalid pointer from userspace
From: Jiang Lu
Date: Wed Mar 09 2016 - 03:02:49 EST
Hi,
When running setserial, application issue a TIOCGSERIAL iotcl to get serial setting, then update
serial setting with TIOCSSERIAL ioctl. It always failed with TIOCSSERIAL ioctl, for application
pass 0xffffffff for iomem_base in serial_struct to kernel.
On 32bit rootfs & 64bit kernel, compat_ioctl use 0xffffffff as a magic number to mark invalid pointer
for iomem_base in serial_struct when truncating a 64bit pointer into 32bit.
Serial driver need recognize this invalid pointer when parsing serial_struct from userspace.
Thanks
Jiang Lu