From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2504FC10F13 for ; Tue, 16 Apr 2019 20:22:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id DD11120663 for ; Tue, 16 Apr 2019 20:22:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730828AbfDPUWt (ORCPT ); Tue, 16 Apr 2019 16:22:49 -0400 Received: from mout.kundenserver.de ([212.227.126.134]:54037 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730472AbfDPUWs (ORCPT ); Tue, 16 Apr 2019 16:22:48 -0400 Received: from threadripper.lan ([149.172.19.189]) by mrelayeu.kundenserver.de (mreue012 [212.227.15.129]) with ESMTPA (Nemesis) id 1MYLqs-1hKMVj2DQ2-00VROG; Tue, 16 Apr 2019 22:22:29 +0200 From: Arnd Bergmann To: Alexander Viro Cc: linux-fsdevel@vger.kernel.org, y2038@lists.linaro.org, linux-kernel@vger.kernel.org, Arnd Bergmann , Greg Kroah-Hartman , Andrew Donnellan , Felipe Balbi , Frederic Barrat , Frank Haverkamp , Kashyap Desai , Sumit Saxena , Shivasharan S , "James E.J. Bottomley" , "Martin K. Petersen" , Felipe Balbi , Jerry Zhang , Vincent Pelletier , Andrzej Pietrasiewicz , Shen Jing , linuxppc-dev@lists.ozlabs.org, megaraidlinux.pdl@broadcom.com, linux-scsi@vger.kernel.org, linux-usb@vger.kernel.org Subject: [PATCH v3 10/26] compat_ioctl: use correct compat_ptr() translation in drivers Date: Tue, 16 Apr 2019 22:19:48 +0200 Message-Id: <20190416202013.4034148-11-arnd@arndb.de> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20190416202013.4034148-1-arnd@arndb.de> References: <20190416202013.4034148-1-arnd@arndb.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Provags-ID: V03:K1:dhXxVwlF+OTv8zTau2mq8cW9se+5+L4XB4D+BXwtDLVtt1eHtvH 9j0eCYXXgpxChG2e+3m5sp1o66pwBmHIM2FHcEPi9zE0BZKkLHbZNmHnn2+GcU+w9KKJ0Xr +OSW2NH8h1S951PFymOn/9mrd2neAmTVkxmgkRDwiI2y7EQMG12TYsIUTnf0SUxFMAktcKM /O02KIxJdbN27u4CGMA4g== X-UI-Out-Filterresults: notjunk:1;V03:K0:p/lEhNyfi0M=:BGMO+DqJh9KBHQtwPEOwGx ZvFHFvMvfly9/nfku2neA5EJJ0wA/7lYo2R92uQbDZ4RSunLr4T3lNgvwy8J2miL4ONveNol0 NO0TBQCQ+Kv4Lr9VnORrI9XV8IR9huTtI9Kkz+kuzHZWlivbFJwQxgX7hGtYwV3fJxnY1rWn3 1UYFA/0oowmuOdzjvn1K8BEwz2lOGQz/TMc+yv5UuJQ2v3iaXL8fqpOg7oM/SGBngGL9Zq3QJ 76Lo3SUQuBgoBwW3vyukwEHw363Va2GXlPbbF4mPDzOGRpDBunS1ghS2gYU9ZjTbDlc6FHtDf XuZCgJ1WkglsDHhbegTdCIgzhRz9CY8MLOarplHlUkrqVjxKIo+EQDw3rlUWdxSIjutMjadMp Q5d+sYXmL5nxc41yjTr6IEy+FRb8M/gFRpiCrqHKh6lV7IF6OwfDFLuXN64Od+s/YCQ4yze1S 4NGTx3sJiDXUXsY0G7E+ne1X2DSfvtoF6PbZzOcWGUvYNKcz6GzPB9eoA4hgO5JXXgu8OP4GH 9mvOERN3xpBwk409vs3LKwMiNar3EdDF75tVcEQEzX8WPIJ+deJwS44rhZ4pSp8usbPjrGC8c EsfY+Ftfu9ngwxbRw5lLYuN8AsTEl/BSELPDew5KLKLNBkfVq54qhM3qs654jfrPJyWhnArQN FRh2ekxvl5xRzxrw9VCHRmLcdkyamf/BKexhZefiopdVuK7TmkF3IyUBtt1Tbrr4LAmGWj4Rv 60qC4WULwufY42ykZcHrTiyfzlUZFbScqwLLkA== Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org A handful of drivers all have a trivial wrapper around their ioctl handler, but don't call the compat_ptr() conversion function at the moment. In practice this does not matter, since none of them are used on the s390 architecture and for all other architectures, compat_ptr() does not do anything, but using the new compat_ptr_ioctl() helper makes it more correct in theory, and simplifies the code. Acked-by: Greg Kroah-Hartman Acked-by: Andrew Donnellan Acked-by: Felipe Balbi Signed-off-by: Arnd Bergmann --- drivers/misc/cxl/flash.c | 8 +------- drivers/misc/genwqe/card_dev.c | 23 +---------------------- drivers/scsi/megaraid/megaraid_mm.c | 28 +--------------------------- drivers/usb/gadget/function/f_fs.c | 12 +----------- 4 files changed, 4 insertions(+), 67 deletions(-) diff --git a/drivers/misc/cxl/flash.c b/drivers/misc/cxl/flash.c index 4d6836f19489..cb9cca35a226 100644 --- a/drivers/misc/cxl/flash.c +++ b/drivers/misc/cxl/flash.c @@ -473,12 +473,6 @@ static long device_ioctl(struct file *file, unsigned int cmd, unsigned long arg) return -EINVAL; } -static long device_compat_ioctl(struct file *file, unsigned int cmd, - unsigned long arg) -{ - return device_ioctl(file, cmd, arg); -} - static int device_close(struct inode *inode, struct file *file) { struct cxl *adapter = file->private_data; @@ -514,7 +508,7 @@ static const struct file_operations fops = { .owner = THIS_MODULE, .open = device_open, .unlocked_ioctl = device_ioctl, - .compat_ioctl = device_compat_ioctl, + .compat_ioctl = compat_ptr_ioctl, .release = device_close, }; diff --git a/drivers/misc/genwqe/card_dev.c b/drivers/misc/genwqe/card_dev.c index 8c1b63a4337b..5de0796f2786 100644 --- a/drivers/misc/genwqe/card_dev.c +++ b/drivers/misc/genwqe/card_dev.c @@ -1221,34 +1221,13 @@ static long genwqe_ioctl(struct file *filp, unsigned int cmd, return rc; } -#if defined(CONFIG_COMPAT) -/** - * genwqe_compat_ioctl() - Compatibility ioctl - * - * Called whenever a 32-bit process running under a 64-bit kernel - * performs an ioctl on /dev/genwqe_card. - * - * @filp: file pointer. - * @cmd: command. - * @arg: user argument. - * Return: zero on success or negative number on failure. - */ -static long genwqe_compat_ioctl(struct file *filp, unsigned int cmd, - unsigned long arg) -{ - return genwqe_ioctl(filp, cmd, arg); -} -#endif /* defined(CONFIG_COMPAT) */ - static const struct file_operations genwqe_fops = { .owner = THIS_MODULE, .open = genwqe_open, .fasync = genwqe_fasync, .mmap = genwqe_mmap, .unlocked_ioctl = genwqe_ioctl, -#if defined(CONFIG_COMPAT) - .compat_ioctl = genwqe_compat_ioctl, -#endif + .compat_ioctl = compat_ptr_ioctl, .release = genwqe_release, }; diff --git a/drivers/scsi/megaraid/megaraid_mm.c b/drivers/scsi/megaraid/megaraid_mm.c index 3ce837e4b24c..21ee5751c04e 100644 --- a/drivers/scsi/megaraid/megaraid_mm.c +++ b/drivers/scsi/megaraid/megaraid_mm.c @@ -45,10 +45,6 @@ static int mraid_mm_setup_dma_pools(mraid_mmadp_t *); static void mraid_mm_free_adp_resources(mraid_mmadp_t *); static void mraid_mm_teardown_dma_pools(mraid_mmadp_t *); -#ifdef CONFIG_COMPAT -static long mraid_mm_compat_ioctl(struct file *, unsigned int, unsigned long); -#endif - MODULE_AUTHOR("LSI Logic Corporation"); MODULE_DESCRIPTION("LSI Logic Management Module"); MODULE_LICENSE("GPL"); @@ -72,9 +68,7 @@ static wait_queue_head_t wait_q; static const struct file_operations lsi_fops = { .open = mraid_mm_open, .unlocked_ioctl = mraid_mm_unlocked_ioctl, -#ifdef CONFIG_COMPAT - .compat_ioctl = mraid_mm_compat_ioctl, -#endif + .compat_ioctl = compat_ptr_ioctl, .owner = THIS_MODULE, .llseek = noop_llseek, }; @@ -228,7 +222,6 @@ mraid_mm_unlocked_ioctl(struct file *filep, unsigned int cmd, { int err; - /* inconsistent: mraid_mm_compat_ioctl doesn't take the BKL */ mutex_lock(&mraid_mm_mutex); err = mraid_mm_ioctl(filep, cmd, arg); mutex_unlock(&mraid_mm_mutex); @@ -1232,25 +1225,6 @@ mraid_mm_init(void) } -#ifdef CONFIG_COMPAT -/** - * mraid_mm_compat_ioctl - 32bit to 64bit ioctl conversion routine - * @filep : file operations pointer (ignored) - * @cmd : ioctl command - * @arg : user ioctl packet - */ -static long -mraid_mm_compat_ioctl(struct file *filep, unsigned int cmd, - unsigned long arg) -{ - int err; - - err = mraid_mm_ioctl(filep, cmd, arg); - - return err; -} -#endif - /** * mraid_mm_exit - Module exit point */ diff --git a/drivers/usb/gadget/function/f_fs.c b/drivers/usb/gadget/function/f_fs.c index 20413c276c61..addc210d198a 100644 --- a/drivers/usb/gadget/function/f_fs.c +++ b/drivers/usb/gadget/function/f_fs.c @@ -1347,14 +1347,6 @@ static long ffs_epfile_ioctl(struct file *file, unsigned code, return ret; } -#ifdef CONFIG_COMPAT -static long ffs_epfile_compat_ioctl(struct file *file, unsigned code, - unsigned long value) -{ - return ffs_epfile_ioctl(file, code, value); -} -#endif - static const struct file_operations ffs_epfile_operations = { .llseek = no_llseek, @@ -1363,9 +1355,7 @@ static const struct file_operations ffs_epfile_operations = { .read_iter = ffs_epfile_read_iter, .release = ffs_epfile_release, .unlocked_ioctl = ffs_epfile_ioctl, -#ifdef CONFIG_COMPAT - .compat_ioctl = ffs_epfile_compat_ioctl, -#endif + .compat_ioctl = compat_ptr_ioctl, }; -- 2.20.0 From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v3,10/26] compat_ioctl: use correct compat_ptr() translation in drivers From: Arnd Bergmann Message-Id: <20190416202013.4034148-11-arnd@arndb.de> Date: Tue, 16 Apr 2019 22:19:48 +0200 To: Alexander Viro Cc: linux-fsdevel@vger.kernel.org, y2038@lists.linaro.org, linux-kernel@vger.kernel.org, Arnd Bergmann , Greg Kroah-Hartman , Andrew Donnellan , Felipe Balbi , Frederic Barrat , Frank Haverkamp , Kashyap Desai , Sumit Saxena , Shivasharan S , "James E.J. Bottomley" , "Martin K. Petersen" , Felipe Balbi , Jerry Zhang , Vincent Pelletier , Andrzej Pietrasiewicz , Shen Jing , linuxppc-dev@lists.ozlabs.org, megaraidlinux.pdl@broadcom.com, linux-scsi@vger.kernel.org, linux-usb@vger.kernel.org List-ID: QSBoYW5kZnVsIG9mIGRyaXZlcnMgYWxsIGhhdmUgYSB0cml2aWFsIHdyYXBwZXIgYXJvdW5kIHRo ZWlyIGlvY3RsCmhhbmRsZXIsIGJ1dCBkb24ndCBjYWxsIHRoZSBjb21wYXRfcHRyKCkgY29udmVy c2lvbiBmdW5jdGlvbiBhdCB0aGUKbW9tZW50LiBJbiBwcmFjdGljZSB0aGlzIGRvZXMgbm90IG1h dHRlciwgc2luY2Ugbm9uZSBvZiB0aGVtIGFyZSB1c2VkCm9uIHRoZSBzMzkwIGFyY2hpdGVjdHVy ZSBhbmQgZm9yIGFsbCBvdGhlciBhcmNoaXRlY3R1cmVzLCBjb21wYXRfcHRyKCkKZG9lcyBub3Qg ZG8gYW55dGhpbmcsIGJ1dCB1c2luZyB0aGUgbmV3IGNvbXBhdF9wdHJfaW9jdGwoKQpoZWxwZXIg bWFrZXMgaXQgbW9yZSBjb3JyZWN0IGluIHRoZW9yeSwgYW5kIHNpbXBsaWZpZXMgdGhlIGNvZGUu CgpBY2tlZC1ieTogR3JlZyBLcm9haC1IYXJ0bWFuIDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9y Zz4KQWNrZWQtYnk6IEFuZHJldyBEb25uZWxsYW4gPGFuZHJldy5kb25uZWxsYW5AYXUxLmlibS5j b20+CkFja2VkLWJ5OiBGZWxpcGUgQmFsYmkgPGZlbGlwZS5iYWxiaUBsaW51eC5pbnRlbC5jb20+ ClNpZ25lZC1vZmYtYnk6IEFybmQgQmVyZ21hbm4gPGFybmRAYXJuZGIuZGU+Ci0tLQogZHJpdmVy cy9taXNjL2N4bC9mbGFzaC5jICAgICAgICAgICAgfCAgOCArLS0tLS0tLQogZHJpdmVycy9taXNj L2dlbndxZS9jYXJkX2Rldi5jICAgICAgfCAyMyArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogZHJp dmVycy9zY3NpL21lZ2FyYWlkL21lZ2FyYWlkX21tLmMgfCAyOCArLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiBkcml2ZXJzL3VzYi9nYWRnZXQvZnVuY3Rpb24vZl9mcy5jICB8IDEyICstLS0t LS0tLS0tLQogNCBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDY3IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWlzYy9jeGwvZmxhc2guYyBiL2RyaXZlcnMvbWlzYy9j eGwvZmxhc2guYwppbmRleCA0ZDY4MzZmMTk0ODkuLmNiOWNjYTM1YTIyNiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9taXNjL2N4bC9mbGFzaC5jCisrKyBiL2RyaXZlcnMvbWlzYy9jeGwvZmxhc2guYwpA QCAtNDczLDEyICs0NzMsNiBAQCBzdGF0aWMgbG9uZyBkZXZpY2VfaW9jdGwoc3RydWN0IGZpbGUg KmZpbGUsIHVuc2lnbmVkIGludCBjbWQsIHVuc2lnbmVkIGxvbmcgYXJnKQogCQlyZXR1cm4gLUVJ TlZBTDsKIH0KIAotc3RhdGljIGxvbmcgZGV2aWNlX2NvbXBhdF9pb2N0bChzdHJ1Y3QgZmlsZSAq ZmlsZSwgdW5zaWduZWQgaW50IGNtZCwKLQkJCQl1bnNpZ25lZCBsb25nIGFyZykKLXsKLQlyZXR1 cm4gZGV2aWNlX2lvY3RsKGZpbGUsIGNtZCwgYXJnKTsKLX0KLQogc3RhdGljIGludCBkZXZpY2Vf Y2xvc2Uoc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbGUpCiB7CiAJc3RydWN0 IGN4bCAqYWRhcHRlciA9IGZpbGUtPnByaXZhdGVfZGF0YTsKQEAgLTUxNCw3ICs1MDgsNyBAQCBz dGF0aWMgY29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyBmb3BzID0gewogCS5vd25lcgkJPSBU SElTX01PRFVMRSwKIAkub3BlbgkJPSBkZXZpY2Vfb3BlbiwKIAkudW5sb2NrZWRfaW9jdGwJPSBk ZXZpY2VfaW9jdGwsCi0JLmNvbXBhdF9pb2N0bAk9IGRldmljZV9jb21wYXRfaW9jdGwsCisJLmNv bXBhdF9pb2N0bAk9IGNvbXBhdF9wdHJfaW9jdGwsCiAJLnJlbGVhc2UJPSBkZXZpY2VfY2xvc2Us CiB9OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL21pc2MvZ2Vud3FlL2NhcmRfZGV2LmMgYi9kcml2 ZXJzL21pc2MvZ2Vud3FlL2NhcmRfZGV2LmMKaW5kZXggOGMxYjYzYTQzMzdiLi41ZGUwNzk2ZjI3 ODYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWlzYy9nZW53cWUvY2FyZF9kZXYuYworKysgYi9kcml2 ZXJzL21pc2MvZ2Vud3FlL2NhcmRfZGV2LmMKQEAgLTEyMjEsMzQgKzEyMjEsMTMgQEAgc3RhdGlj IGxvbmcgZ2Vud3FlX2lvY3RsKHN0cnVjdCBmaWxlICpmaWxwLCB1bnNpZ25lZCBpbnQgY21kLAog CXJldHVybiByYzsKIH0KIAotI2lmIGRlZmluZWQoQ09ORklHX0NPTVBBVCkKLS8qKgotICogZ2Vu d3FlX2NvbXBhdF9pb2N0bCgpIC0gQ29tcGF0aWJpbGl0eSBpb2N0bAotICoKLSAqIENhbGxlZCB3 aGVuZXZlciBhIDMyLWJpdCBwcm9jZXNzIHJ1bm5pbmcgdW5kZXIgYSA2NC1iaXQga2VybmVsCi0g KiBwZXJmb3JtcyBhbiBpb2N0bCBvbiAvZGV2L2dlbndxZTxuPl9jYXJkLgotICoKLSAqIEBmaWxw OiAgICAgICAgZmlsZSBwb2ludGVyLgotICogQGNtZDogICAgICAgICBjb21tYW5kLgotICogQGFy ZzogICAgICAgICB1c2VyIGFyZ3VtZW50LgotICogUmV0dXJuOiAgICAgICB6ZXJvIG9uIHN1Y2Nl c3Mgb3IgbmVnYXRpdmUgbnVtYmVyIG9uIGZhaWx1cmUuCi0gKi8KLXN0YXRpYyBsb25nIGdlbndx ZV9jb21wYXRfaW9jdGwoc3RydWN0IGZpbGUgKmZpbHAsIHVuc2lnbmVkIGludCBjbWQsCi0JCQkJ dW5zaWduZWQgbG9uZyBhcmcpCi17Ci0JcmV0dXJuIGdlbndxZV9pb2N0bChmaWxwLCBjbWQsIGFy Zyk7Ci19Ci0jZW5kaWYgLyogZGVmaW5lZChDT05GSUdfQ09NUEFUKSAqLwotCiBzdGF0aWMgY29u c3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyBnZW53cWVfZm9wcyA9IHsKIAkub3duZXIJCT0gVEhJ U19NT0RVTEUsCiAJLm9wZW4JCT0gZ2Vud3FlX29wZW4sCiAJLmZhc3luYwkJPSBnZW53cWVfZmFz eW5jLAogCS5tbWFwCQk9IGdlbndxZV9tbWFwLAogCS51bmxvY2tlZF9pb2N0bAk9IGdlbndxZV9p b2N0bCwKLSNpZiBkZWZpbmVkKENPTkZJR19DT01QQVQpCi0JLmNvbXBhdF9pb2N0bCAgID0gZ2Vu d3FlX2NvbXBhdF9pb2N0bCwKLSNlbmRpZgorCS5jb21wYXRfaW9jdGwgICA9IGNvbXBhdF9wdHJf aW9jdGwsCiAJLnJlbGVhc2UJPSBnZW53cWVfcmVsZWFzZSwKIH07CiAKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvc2NzaS9tZWdhcmFpZC9tZWdhcmFpZF9tbS5jIGIvZHJpdmVycy9zY3NpL21lZ2FyYWlk L21lZ2FyYWlkX21tLmMKaW5kZXggM2NlODM3ZTRiMjRjLi4yMWVlNTc1MWMwNGUgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvc2NzaS9tZWdhcmFpZC9tZWdhcmFpZF9tbS5jCisrKyBiL2RyaXZlcnMvc2Nz aS9tZWdhcmFpZC9tZWdhcmFpZF9tbS5jCkBAIC00NSwxMCArNDUsNiBAQCBzdGF0aWMgaW50IG1y YWlkX21tX3NldHVwX2RtYV9wb29scyhtcmFpZF9tbWFkcF90ICopOwogc3RhdGljIHZvaWQgbXJh aWRfbW1fZnJlZV9hZHBfcmVzb3VyY2VzKG1yYWlkX21tYWRwX3QgKik7CiBzdGF0aWMgdm9pZCBt cmFpZF9tbV90ZWFyZG93bl9kbWFfcG9vbHMobXJhaWRfbW1hZHBfdCAqKTsKIAotI2lmZGVmIENP TkZJR19DT01QQVQKLXN0YXRpYyBsb25nIG1yYWlkX21tX2NvbXBhdF9pb2N0bChzdHJ1Y3QgZmls ZSAqLCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGxvbmcpOwotI2VuZGlmCi0KIE1PRFVMRV9BVVRI T1IoIkxTSSBMb2dpYyBDb3Jwb3JhdGlvbiIpOwogTU9EVUxFX0RFU0NSSVBUSU9OKCJMU0kgTG9n aWMgTWFuYWdlbWVudCBNb2R1bGUiKTsKIE1PRFVMRV9MSUNFTlNFKCJHUEwiKTsKQEAgLTcyLDkg KzY4LDcgQEAgc3RhdGljIHdhaXRfcXVldWVfaGVhZF90IHdhaXRfcTsKIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGxzaV9mb3BzID0gewogCS5vcGVuCT0gbXJhaWRfbW1fb3Bl biwKIAkudW5sb2NrZWRfaW9jdGwgPSBtcmFpZF9tbV91bmxvY2tlZF9pb2N0bCwKLSNpZmRlZiBD T05GSUdfQ09NUEFUCi0JLmNvbXBhdF9pb2N0bCA9IG1yYWlkX21tX2NvbXBhdF9pb2N0bCwKLSNl bmRpZgorCS5jb21wYXRfaW9jdGwgPSBjb21wYXRfcHRyX2lvY3RsLAogCS5vd25lcgk9IFRISVNf TU9EVUxFLAogCS5sbHNlZWsgPSBub29wX2xsc2VlaywKIH07CkBAIC0yMjgsNyArMjIyLDYgQEAg bXJhaWRfbW1fdW5sb2NrZWRfaW9jdGwoc3RydWN0IGZpbGUgKmZpbGVwLCB1bnNpZ25lZCBpbnQg Y21kLAogewogCWludCBlcnI7CiAKLQkvKiBpbmNvbnNpc3RlbnQ6IG1yYWlkX21tX2NvbXBhdF9p b2N0bCBkb2Vzbid0IHRha2UgdGhlIEJLTCAqLwogCW11dGV4X2xvY2soJm1yYWlkX21tX211dGV4 KTsKIAllcnIgPSBtcmFpZF9tbV9pb2N0bChmaWxlcCwgY21kLCBhcmcpOwogCW11dGV4X3VubG9j aygmbXJhaWRfbW1fbXV0ZXgpOwpAQCAtMTIzMiwyNSArMTIyNSw2IEBAIG1yYWlkX21tX2luaXQo dm9pZCkKIH0KIAogCi0jaWZkZWYgQ09ORklHX0NPTVBBVAotLyoqCi0gKiBtcmFpZF9tbV9jb21w YXRfaW9jdGwJLSAzMmJpdCB0byA2NGJpdCBpb2N0bCBjb252ZXJzaW9uIHJvdXRpbmUKLSAqIEBm aWxlcAk6IGZpbGUgb3BlcmF0aW9ucyBwb2ludGVyIChpZ25vcmVkKQotICogQGNtZAkJOiBpb2N0 bCBjb21tYW5kCi0gKiBAYXJnCQk6IHVzZXIgaW9jdGwgcGFja2V0Ci0gKi8KLXN0YXRpYyBsb25n Ci1tcmFpZF9tbV9jb21wYXRfaW9jdGwoc3RydWN0IGZpbGUgKmZpbGVwLCB1bnNpZ25lZCBpbnQg Y21kLAotCQkgICAgICB1bnNpZ25lZCBsb25nIGFyZykKLXsKLQlpbnQgZXJyOwotCi0JZXJyID0g bXJhaWRfbW1faW9jdGwoZmlsZXAsIGNtZCwgYXJnKTsKLQotCXJldHVybiBlcnI7Ci19Ci0jZW5k aWYKLQogLyoqCiAgKiBtcmFpZF9tbV9leGl0CS0gTW9kdWxlIGV4aXQgcG9pbnQKICAqLwpkaWZm IC0tZ2l0IGEvZHJpdmVycy91c2IvZ2FkZ2V0L2Z1bmN0aW9uL2ZfZnMuYyBiL2RyaXZlcnMvdXNi L2dhZGdldC9mdW5jdGlvbi9mX2ZzLmMKaW5kZXggMjA0MTNjMjc2YzYxLi5hZGRjMjEwZDE5OGEg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdXNiL2dhZGdldC9mdW5jdGlvbi9mX2ZzLmMKKysrIGIvZHJp dmVycy91c2IvZ2FkZ2V0L2Z1bmN0aW9uL2ZfZnMuYwpAQCAtMTM0NywxNCArMTM0Nyw2IEBAIHN0 YXRpYyBsb25nIGZmc19lcGZpbGVfaW9jdGwoc3RydWN0IGZpbGUgKmZpbGUsIHVuc2lnbmVkIGNv ZGUsCiAJcmV0dXJuIHJldDsKIH0KIAotI2lmZGVmIENPTkZJR19DT01QQVQKLXN0YXRpYyBsb25n IGZmc19lcGZpbGVfY29tcGF0X2lvY3RsKHN0cnVjdCBmaWxlICpmaWxlLCB1bnNpZ25lZCBjb2Rl LAotCQl1bnNpZ25lZCBsb25nIHZhbHVlKQotewotCXJldHVybiBmZnNfZXBmaWxlX2lvY3RsKGZp bGUsIGNvZGUsIHZhbHVlKTsKLX0KLSNlbmRpZgotCiBzdGF0aWMgY29uc3Qgc3RydWN0IGZpbGVf b3BlcmF0aW9ucyBmZnNfZXBmaWxlX29wZXJhdGlvbnMgPSB7CiAJLmxsc2VlayA9CW5vX2xsc2Vl aywKIApAQCAtMTM2Myw5ICsxMzU1LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJh dGlvbnMgZmZzX2VwZmlsZV9vcGVyYXRpb25zID0gewogCS5yZWFkX2l0ZXIgPQlmZnNfZXBmaWxl X3JlYWRfaXRlciwKIAkucmVsZWFzZSA9CWZmc19lcGZpbGVfcmVsZWFzZSwKIAkudW5sb2NrZWRf aW9jdGwgPQlmZnNfZXBmaWxlX2lvY3RsLAotI2lmZGVmIENPTkZJR19DT01QQVQKLQkuY29tcGF0 X2lvY3RsID0gZmZzX2VwZmlsZV9jb21wYXRfaW9jdGwsCi0jZW5kaWYKKwkuY29tcGF0X2lvY3Rs ID0gY29tcGF0X3B0cl9pb2N0bCwKIH07CiAKIAo= From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnd Bergmann Subject: [PATCH v3 10/26] compat_ioctl: use correct compat_ptr() translation in drivers Date: Tue, 16 Apr 2019 22:19:48 +0200 Message-ID: <20190416202013.4034148-11-arnd@arndb.de> References: <20190416202013.4034148-1-arnd@arndb.de> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Return-path: In-Reply-To: <20190416202013.4034148-1-arnd@arndb.de> Sender: linux-kernel-owner@vger.kernel.org To: Alexander Viro Cc: linux-fsdevel@vger.kernel.org, y2038@lists.linaro.org, linux-kernel@vger.kernel.org, Arnd Bergmann , Greg Kroah-Hartman , Andrew Donnellan , Felipe Balbi , Frederic Barrat , Frank Haverkamp , Kashyap Desai , Sumit Saxena , Shivasharan S , "James E.J. Bottomley" , "Martin K. Petersen" , Felipe Balbi , Jerry Zhang , Vincent Pelletier , Andrzej Pietrasiewicz , Shen Jing List-Id: linux-scsi@vger.kernel.org A handful of drivers all have a trivial wrapper around their ioctl handler, but don't call the compat_ptr() conversion function at the moment. In practice this does not matter, since none of them are used on the s390 architecture and for all other architectures, compat_ptr() does not do anything, but using the new compat_ptr_ioctl() helper makes it more correct in theory, and simplifies the code. Acked-by: Greg Kroah-Hartman Acked-by: Andrew Donnellan Acked-by: Felipe Balbi Signed-off-by: Arnd Bergmann --- drivers/misc/cxl/flash.c | 8 +------- drivers/misc/genwqe/card_dev.c | 23 +---------------------- drivers/scsi/megaraid/megaraid_mm.c | 28 +--------------------------- drivers/usb/gadget/function/f_fs.c | 12 +----------- 4 files changed, 4 insertions(+), 67 deletions(-) diff --git a/drivers/misc/cxl/flash.c b/drivers/misc/cxl/flash.c index 4d6836f19489..cb9cca35a226 100644 --- a/drivers/misc/cxl/flash.c +++ b/drivers/misc/cxl/flash.c @@ -473,12 +473,6 @@ static long device_ioctl(struct file *file, unsigned int cmd, unsigned long arg) return -EINVAL; } -static long device_compat_ioctl(struct file *file, unsigned int cmd, - unsigned long arg) -{ - return device_ioctl(file, cmd, arg); -} - static int device_close(struct inode *inode, struct file *file) { struct cxl *adapter = file->private_data; @@ -514,7 +508,7 @@ static const struct file_operations fops = { .owner = THIS_MODULE, .open = device_open, .unlocked_ioctl = device_ioctl, - .compat_ioctl = device_compat_ioctl, + .compat_ioctl = compat_ptr_ioctl, .release = device_close, }; diff --git a/drivers/misc/genwqe/card_dev.c b/drivers/misc/genwqe/card_dev.c index 8c1b63a4337b..5de0796f2786 100644 --- a/drivers/misc/genwqe/card_dev.c +++ b/drivers/misc/genwqe/card_dev.c @@ -1221,34 +1221,13 @@ static long genwqe_ioctl(struct file *filp, unsigned int cmd, return rc; } -#if defined(CONFIG_COMPAT) -/** - * genwqe_compat_ioctl() - Compatibility ioctl - * - * Called whenever a 32-bit process running under a 64-bit kernel - * performs an ioctl on /dev/genwqe_card. - * - * @filp: file pointer. - * @cmd: command. - * @arg: user argument. - * Return: zero on success or negative number on failure. - */ -static long genwqe_compat_ioctl(struct file *filp, unsigned int cmd, - unsigned long arg) -{ - return genwqe_ioctl(filp, cmd, arg); -} -#endif /* defined(CONFIG_COMPAT) */ - static const struct file_operations genwqe_fops = { .owner = THIS_MODULE, .open = genwqe_open, .fasync = genwqe_fasync, .mmap = genwqe_mmap, .unlocked_ioctl = genwqe_ioctl, -#if defined(CONFIG_COMPAT) - .compat_ioctl = genwqe_compat_ioctl, -#endif + .compat_ioctl = compat_ptr_ioctl, .release = genwqe_release, }; diff --git a/drivers/scsi/megaraid/megaraid_mm.c b/drivers/scsi/megaraid/megaraid_mm.c index 3ce837e4b24c..21ee5751c04e 100644 --- a/drivers/scsi/megaraid/megaraid_mm.c +++ b/drivers/scsi/megaraid/megaraid_mm.c @@ -45,10 +45,6 @@ static int mraid_mm_setup_dma_pools(mraid_mmadp_t *); static void mraid_mm_free_adp_resources(mraid_mmadp_t *); static void mraid_mm_teardown_dma_pools(mraid_mmadp_t *); -#ifdef CONFIG_COMPAT -static long mraid_mm_compat_ioctl(struct file *, unsigned int, unsigned long); -#endif - MODULE_AUTHOR("LSI Logic Corporation"); MODULE_DESCRIPTION("LSI Logic Management Module"); MODULE_LICENSE("GPL"); @@ -72,9 +68,7 @@ static wait_queue_head_t wait_q; static const struct file_operations lsi_fops = { .open = mraid_mm_open, .unlocked_ioctl = mraid_mm_unlocked_ioctl, -#ifdef CONFIG_COMPAT - .compat_ioctl = mraid_mm_compat_ioctl, -#endif + .compat_ioctl = compat_ptr_ioctl, .owner = THIS_MODULE, .llseek = noop_llseek, }; @@ -228,7 +222,6 @@ mraid_mm_unlocked_ioctl(struct file *filep, unsigned int cmd, { int err; - /* inconsistent: mraid_mm_compat_ioctl doesn't take the BKL */ mutex_lock(&mraid_mm_mutex); err = mraid_mm_ioctl(filep, cmd, arg); mutex_unlock(&mraid_mm_mutex); @@ -1232,25 +1225,6 @@ mraid_mm_init(void) } -#ifdef CONFIG_COMPAT -/** - * mraid_mm_compat_ioctl - 32bit to 64bit ioctl conversion routine - * @filep : file operations pointer (ignored) - * @cmd : ioctl command - * @arg : user ioctl packet - */ -static long -mraid_mm_compat_ioctl(struct file *filep, unsigned int cmd, - unsigned long arg) -{ - int err; - - err = mraid_mm_ioctl(filep, cmd, arg); - - return err; -} -#endif - /** * mraid_mm_exit - Module exit point */ diff --git a/drivers/usb/gadget/function/f_fs.c b/drivers/usb/gadget/function/f_fs.c index 20413c276c61..addc210d198a 100644 --- a/drivers/usb/gadget/function/f_fs.c +++ b/drivers/usb/gadget/function/f_fs.c @@ -1347,14 +1347,6 @@ static long ffs_epfile_ioctl(struct file *file, unsigned code, return ret; } -#ifdef CONFIG_COMPAT -static long ffs_epfile_compat_ioctl(struct file *file, unsigned code, - unsigned long value) -{ - return ffs_epfile_ioctl(file, code, value); -} -#endif - static const struct file_operations ffs_epfile_operations = { .llseek = no_llseek, @@ -1363,9 +1355,7 @@ static const struct file_operations ffs_epfile_operations = { .read_iter = ffs_epfile_read_iter, .release = ffs_epfile_release, .unlocked_ioctl = ffs_epfile_ioctl, -#ifdef CONFIG_COMPAT - .compat_ioctl = ffs_epfile_compat_ioctl, -#endif + .compat_ioctl = compat_ptr_ioctl, }; -- 2.20.0 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C9AC0C10F13 for ; Tue, 16 Apr 2019 20:27:47 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5375E20868 for ; Tue, 16 Apr 2019 20:27:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5375E20868 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arndb.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 44kH411T7qzDq7n for ; Wed, 17 Apr 2019 06:27:45 +1000 (AEST) Authentication-Results: lists.ozlabs.org; spf=none (mailfrom) smtp.mailfrom=arndb.de (client-ip=212.227.126.134; helo=mout.kundenserver.de; envelope-from=arnd@arndb.de; receiver=) Authentication-Results: lists.ozlabs.org; dmarc=none (p=none dis=none) header.from=arndb.de Received: from mout.kundenserver.de (mout.kundenserver.de [212.227.126.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 44kGyP2K2DzDqDM for ; Wed, 17 Apr 2019 06:22:52 +1000 (AEST) Received: from threadripper.lan ([149.172.19.189]) by mrelayeu.kundenserver.de (mreue012 [212.227.15.129]) with ESMTPA (Nemesis) id 1MYLqs-1hKMVj2DQ2-00VROG; Tue, 16 Apr 2019 22:22:29 +0200 From: Arnd Bergmann To: Alexander Viro Subject: [PATCH v3 10/26] compat_ioctl: use correct compat_ptr() translation in drivers Date: Tue, 16 Apr 2019 22:19:48 +0200 Message-Id: <20190416202013.4034148-11-arnd@arndb.de> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20190416202013.4034148-1-arnd@arndb.de> References: <20190416202013.4034148-1-arnd@arndb.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Provags-ID: V03:K1:dhXxVwlF+OTv8zTau2mq8cW9se+5+L4XB4D+BXwtDLVtt1eHtvH 9j0eCYXXgpxChG2e+3m5sp1o66pwBmHIM2FHcEPi9zE0BZKkLHbZNmHnn2+GcU+w9KKJ0Xr +OSW2NH8h1S951PFymOn/9mrd2neAmTVkxmgkRDwiI2y7EQMG12TYsIUTnf0SUxFMAktcKM /O02KIxJdbN27u4CGMA4g== X-UI-Out-Filterresults: notjunk:1;V03:K0:p/lEhNyfi0M=:BGMO+DqJh9KBHQtwPEOwGx ZvFHFvMvfly9/nfku2neA5EJJ0wA/7lYo2R92uQbDZ4RSunLr4T3lNgvwy8J2miL4ONveNol0 NO0TBQCQ+Kv4Lr9VnORrI9XV8IR9huTtI9Kkz+kuzHZWlivbFJwQxgX7hGtYwV3fJxnY1rWn3 1UYFA/0oowmuOdzjvn1K8BEwz2lOGQz/TMc+yv5UuJQ2v3iaXL8fqpOg7oM/SGBngGL9Zq3QJ 76Lo3SUQuBgoBwW3vyukwEHw363Va2GXlPbbF4mPDzOGRpDBunS1ghS2gYU9ZjTbDlc6FHtDf XuZCgJ1WkglsDHhbegTdCIgzhRz9CY8MLOarplHlUkrqVjxKIo+EQDw3rlUWdxSIjutMjadMp Q5d+sYXmL5nxc41yjTr6IEy+FRb8M/gFRpiCrqHKh6lV7IF6OwfDFLuXN64Od+s/YCQ4yze1S 4NGTx3sJiDXUXsY0G7E+ne1X2DSfvtoF6PbZzOcWGUvYNKcz6GzPB9eoA4hgO5JXXgu8OP4GH 9mvOERN3xpBwk409vs3LKwMiNar3EdDF75tVcEQEzX8WPIJ+deJwS44rhZ4pSp8usbPjrGC8c EsfY+Ftfu9ngwxbRw5lLYuN8AsTEl/BSELPDew5KLKLNBkfVq54qhM3qs654jfrPJyWhnArQN FRh2ekxvl5xRzxrw9VCHRmLcdkyamf/BKexhZefiopdVuK7TmkF3IyUBtt1Tbrr4LAmGWj4Rv 60qC4WULwufY42ykZcHrTiyfzlUZFbScqwLLkA== X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Shen Jing , Arnd Bergmann , linux-scsi@vger.kernel.org, y2038@lists.linaro.org, Frank Haverkamp , Kashyap Desai , Felipe Balbi , Jerry Zhang , "James E.J. Bottomley" , linux-fsdevel@vger.kernel.org, Vincent Pelletier , megaraidlinux.pdl@broadcom.com, Felipe Balbi , "Martin K. Petersen" , Shivasharan S , Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Andrzej Pietrasiewicz , Sumit Saxena , Andrew Donnellan , Frederic Barrat , linuxppc-dev@lists.ozlabs.org Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" A handful of drivers all have a trivial wrapper around their ioctl handler, but don't call the compat_ptr() conversion function at the moment. In practice this does not matter, since none of them are used on the s390 architecture and for all other architectures, compat_ptr() does not do anything, but using the new compat_ptr_ioctl() helper makes it more correct in theory, and simplifies the code. Acked-by: Greg Kroah-Hartman Acked-by: Andrew Donnellan Acked-by: Felipe Balbi Signed-off-by: Arnd Bergmann --- drivers/misc/cxl/flash.c | 8 +------- drivers/misc/genwqe/card_dev.c | 23 +---------------------- drivers/scsi/megaraid/megaraid_mm.c | 28 +--------------------------- drivers/usb/gadget/function/f_fs.c | 12 +----------- 4 files changed, 4 insertions(+), 67 deletions(-) diff --git a/drivers/misc/cxl/flash.c b/drivers/misc/cxl/flash.c index 4d6836f19489..cb9cca35a226 100644 --- a/drivers/misc/cxl/flash.c +++ b/drivers/misc/cxl/flash.c @@ -473,12 +473,6 @@ static long device_ioctl(struct file *file, unsigned int cmd, unsigned long arg) return -EINVAL; } -static long device_compat_ioctl(struct file *file, unsigned int cmd, - unsigned long arg) -{ - return device_ioctl(file, cmd, arg); -} - static int device_close(struct inode *inode, struct file *file) { struct cxl *adapter = file->private_data; @@ -514,7 +508,7 @@ static const struct file_operations fops = { .owner = THIS_MODULE, .open = device_open, .unlocked_ioctl = device_ioctl, - .compat_ioctl = device_compat_ioctl, + .compat_ioctl = compat_ptr_ioctl, .release = device_close, }; diff --git a/drivers/misc/genwqe/card_dev.c b/drivers/misc/genwqe/card_dev.c index 8c1b63a4337b..5de0796f2786 100644 --- a/drivers/misc/genwqe/card_dev.c +++ b/drivers/misc/genwqe/card_dev.c @@ -1221,34 +1221,13 @@ static long genwqe_ioctl(struct file *filp, unsigned int cmd, return rc; } -#if defined(CONFIG_COMPAT) -/** - * genwqe_compat_ioctl() - Compatibility ioctl - * - * Called whenever a 32-bit process running under a 64-bit kernel - * performs an ioctl on /dev/genwqe_card. - * - * @filp: file pointer. - * @cmd: command. - * @arg: user argument. - * Return: zero on success or negative number on failure. - */ -static long genwqe_compat_ioctl(struct file *filp, unsigned int cmd, - unsigned long arg) -{ - return genwqe_ioctl(filp, cmd, arg); -} -#endif /* defined(CONFIG_COMPAT) */ - static const struct file_operations genwqe_fops = { .owner = THIS_MODULE, .open = genwqe_open, .fasync = genwqe_fasync, .mmap = genwqe_mmap, .unlocked_ioctl = genwqe_ioctl, -#if defined(CONFIG_COMPAT) - .compat_ioctl = genwqe_compat_ioctl, -#endif + .compat_ioctl = compat_ptr_ioctl, .release = genwqe_release, }; diff --git a/drivers/scsi/megaraid/megaraid_mm.c b/drivers/scsi/megaraid/megaraid_mm.c index 3ce837e4b24c..21ee5751c04e 100644 --- a/drivers/scsi/megaraid/megaraid_mm.c +++ b/drivers/scsi/megaraid/megaraid_mm.c @@ -45,10 +45,6 @@ static int mraid_mm_setup_dma_pools(mraid_mmadp_t *); static void mraid_mm_free_adp_resources(mraid_mmadp_t *); static void mraid_mm_teardown_dma_pools(mraid_mmadp_t *); -#ifdef CONFIG_COMPAT -static long mraid_mm_compat_ioctl(struct file *, unsigned int, unsigned long); -#endif - MODULE_AUTHOR("LSI Logic Corporation"); MODULE_DESCRIPTION("LSI Logic Management Module"); MODULE_LICENSE("GPL"); @@ -72,9 +68,7 @@ static wait_queue_head_t wait_q; static const struct file_operations lsi_fops = { .open = mraid_mm_open, .unlocked_ioctl = mraid_mm_unlocked_ioctl, -#ifdef CONFIG_COMPAT - .compat_ioctl = mraid_mm_compat_ioctl, -#endif + .compat_ioctl = compat_ptr_ioctl, .owner = THIS_MODULE, .llseek = noop_llseek, }; @@ -228,7 +222,6 @@ mraid_mm_unlocked_ioctl(struct file *filep, unsigned int cmd, { int err; - /* inconsistent: mraid_mm_compat_ioctl doesn't take the BKL */ mutex_lock(&mraid_mm_mutex); err = mraid_mm_ioctl(filep, cmd, arg); mutex_unlock(&mraid_mm_mutex); @@ -1232,25 +1225,6 @@ mraid_mm_init(void) } -#ifdef CONFIG_COMPAT -/** - * mraid_mm_compat_ioctl - 32bit to 64bit ioctl conversion routine - * @filep : file operations pointer (ignored) - * @cmd : ioctl command - * @arg : user ioctl packet - */ -static long -mraid_mm_compat_ioctl(struct file *filep, unsigned int cmd, - unsigned long arg) -{ - int err; - - err = mraid_mm_ioctl(filep, cmd, arg); - - return err; -} -#endif - /** * mraid_mm_exit - Module exit point */ diff --git a/drivers/usb/gadget/function/f_fs.c b/drivers/usb/gadget/function/f_fs.c index 20413c276c61..addc210d198a 100644 --- a/drivers/usb/gadget/function/f_fs.c +++ b/drivers/usb/gadget/function/f_fs.c @@ -1347,14 +1347,6 @@ static long ffs_epfile_ioctl(struct file *file, unsigned code, return ret; } -#ifdef CONFIG_COMPAT -static long ffs_epfile_compat_ioctl(struct file *file, unsigned code, - unsigned long value) -{ - return ffs_epfile_ioctl(file, code, value); -} -#endif - static const struct file_operations ffs_epfile_operations = { .llseek = no_llseek, @@ -1363,9 +1355,7 @@ static const struct file_operations ffs_epfile_operations = { .read_iter = ffs_epfile_read_iter, .release = ffs_epfile_release, .unlocked_ioctl = ffs_epfile_ioctl, -#ifdef CONFIG_COMPAT - .compat_ioctl = ffs_epfile_compat_ioctl, -#endif + .compat_ioctl = compat_ptr_ioctl, }; -- 2.20.0