Messages in this thread | | | Date | Wed, 18 Mar 2020 00:43:43 +0900 | From | Keith Busch <> | Subject | Re: [PATCH V2] nvme: Add compat_ioctl handler for NVME_IOCTL_SUBMIT_IO |
| |
On Thu, Mar 05, 2020 at 11:13:29AM +0000, masahiro31.yamada@kioxia.com wrote: > Currently 32 bit application gets ENOTTY when it calls > compat_ioctl with NVME_IOCTL_SUBMIT_IO in 64 bit kernel. > > The cause is that the results of sizeof(struct nvme_user_io), > which is used to define NVME_IOCTL_SUBMIT_IO, > are not same between 32 bit compiler and 64 bit compiler. > > * 32 bit: the result of sizeof nvme_user_io is 44. > * 64 bit: the result of sizeof nvme_user_io is 48. > > 64 bit compiler seems to add 32 bit padding for multiple of 8 bytes. > > This patch adds a compat_ioctl handler. > The handler replaces NVME_IOCTL_SUBMIT_IO32 with NVME_IOCTL_SUBMIT_IO > in case 32 bit application calls compat_ioctl for submit in 64 bit kernel. > Then, it calls nvme_ioctl as usual. > > Signed-off-by: Masahiro Yamada (KIOXIA) <masahiro31.yamada@kioxia.com>
Thank you, applied for 5.7.
| |