Messages in this thread | | | From | Dan Williams <> | Date | Tue, 30 Jul 2019 13:14:52 -0700 | Subject | Re: [PATCH v5 13/29] compat_ioctl: move more drivers to compat_ptr_ioctl |
| |
On Tue, Jul 30, 2019 at 12:59 PM Arnd Bergmann <arnd@arndb.de> wrote: > > The .ioctl and .compat_ioctl file operations have the same prototype so > they can both point to the same function, which works great almost all > the time when all the commands are compatible. > > One exception is the s390 architecture, where a compat pointer is only > 31 bit wide, and converting it into a 64-bit pointer requires calling > compat_ptr(). Most drivers here will never run in s390, but since we now > have a generic helper for it, it's easy enough to use it consistently. > > I double-checked all these drivers to ensure that all ioctl arguments > are used as pointers or are ignored, but are not interpreted as integer > values. > > Acked-by: Jason Gunthorpe <jgg@mellanox.com> > Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> > Acked-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> > Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Acked-by: David Sterba <dsterba@suse.com> > Acked-by: Darren Hart (VMware) <dvhart@infradead.org> > Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> > Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org> > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/nvdimm/bus.c | 4 ++-- [..] > diff --git a/drivers/nvdimm/bus.c b/drivers/nvdimm/bus.c > index 798c5c4aea9c..6ca142d833ab 100644 > --- a/drivers/nvdimm/bus.c > +++ b/drivers/nvdimm/bus.c > @@ -1229,7 +1229,7 @@ static const struct file_operations nvdimm_bus_fops = { > .owner = THIS_MODULE, > .open = nd_open, > .unlocked_ioctl = bus_ioctl, > - .compat_ioctl = bus_ioctl, > + .compat_ioctl = compat_ptr_ioctl, > .llseek = noop_llseek, > }; > > @@ -1237,7 +1237,7 @@ static const struct file_operations nvdimm_fops = { > .owner = THIS_MODULE, > .open = nd_open, > .unlocked_ioctl = dimm_ioctl, > - .compat_ioctl = dimm_ioctl, > + .compat_ioctl = compat_ptr_ioctl, > .llseek = noop_llseek, > };
Acked-by: Dan Williams <dan.j.williams@intel.com>
| |